I'm developing software for the energy consulting business and in monitoring energy use in datacenters, I've noticed that the typical electric load "pattern" of a datacenter is just a flat line, because all the gear runs 24/7. If you compare this to the actual usage pattern (network load, CPU usage etc), which we did, you regularly have long stretches with little usage but the full capacity available.
These patterns are very predictable in many cases and to save energy, it would be great to turn off part of the equipment (servers, switches, storage) regularly or in low-load conditions. However, I can think of several aspects that would have to be looked at, including
- handling peak loads or sudden spikes
- data consistency among nodes
- long startup (and, possibly, synchronization) times compared to average uptime of a node
There's probably more. Is there software that handles such a scenario and what else should be looked out for? Is this a viable suggestion to make?
For my purposes, a cluster wouldn't necessarily mean to cluster machines on the OS level, identical hosts that receive requests via a load balancer (i. e. application level clustering) would also count. I'm not sure how MySQL cluster or similar work, but I'd probably count those as well.
I'm looking for advice for any operating system.
See also my post on energy efficiency over at Stack Overflow that brought up this question.