Sustainable Computing Is It Time to Turn Off Your Servers?
One of the simplest ways to achieve energy savings on desktops and laptops is to turn them off (or even use the sleep or hibernation feature). Users have accepted the idea that turning off their devices is a small step that can have significant results. But the idea of turning off your servers—that's a pretty new topic that people
haven't entirely embraced yet. Currently, only small numbers of IT departments shut down servers, but this practice is starting to change. More organizations are taking advantage of the energy savings of server shutdown.
Why would you turn off a server? In general, an idle server consumes about half the amount of power consumed by a server running under high load. Server utilization for most data centers runs in the range of 10 to 20 percent, which means there are a lot of machines idling (systems using energy, but not being used).
Of course, the idea of turning off servers raises some important questions. I'm not suggesting that you shut down Web servers and other critical servers that should be running 24 hours a day, 7 days a week. So what type of machines can you turn off? To help give you an idea, I'd like to share some real-world examples of what some organizations have implemented to cut down on system idle time and reduce energy consumption.
Weill Medical College of Cornell University High-Performance Computer Cluster
For more than a year, the Institute of Computational Biomedicine at Weill Medical College of Cornell University has been turning off servers in its high-performance computing (HPC) cluster. The HPC cluster resources are used for simulation of biological systems, analysis of large datasets, and imaging/visualization.
The compute nodes use 250 watts when in use and 125 watts when idle. The system administration team set out to create a cluster power management solution that would shut down nodes that were not in use while minimizing impact on performance. The group minimized the impact by maintaining a target number of stand-by nodes ready to run new jobs immediately, reducing latency perceived by end users.
One of the biggest challenges in turning servers off is the method used to turn the servers back on. Fortunately for the Cornell team, all of its compute nodes are from one vendor, thus the team could use baseboard management controller (BMC) features and a remote access card to control power on events. On top of BMC, the team used Intelligent Power Management Interface (IPMI) to build a complete cluster power management solution, managing the server states of In Use, Standing By, Shutting Down, Power Save, and Powering Up.
With the clusters' high power density in mind, the team also added the capability to monitor temperature per server, measuring temperature fluctuations as machines run under load, idle, and powered off. Over a six-month period, 16 percent of the managed nodes were shut down, resulting in a power savings of 8 percent.
In the process, the team discovered its lowest energy consumption is in the late morning, and its peak load is in the early evening. This, the team realized, was due to researchers running their biggest jobs at the end of the day before leaving the office and their smaller jobs in the morning when a quick turnaround is priority.
Citrix Presentation Servers
Citrix PowerSmart Utility for Presentation Server is a solution that helps customers reduce power consumption by powering off idle Presentation Servers during off business hours. The tool, which is currently in beta, offers an innovative method for administrators to proactively reduce Presentation Server power consumption, and it is suited to IT professionals who are interested in building "green" IT solutions.
(Note that at the time of this publication, this tool in not yet part of the Citrix product offering, and Citrix provides forum support only.)
The utility is initially designed to work with HP servers with iLO2 (integrated lights out) support. However, support for other types of servers can be added with scripting and simple configuration changes.
I find this solution worth discussing because it provides a good explanation of how turning off servers can be done. Here are the key elements that make this solution work:
- One presentation server is designated the controller. Few files are added, no registry changes are needed, and uninstall is supported.
- A configuration file on the controller identifies the group of servers to be power managed.
- Off business hours are defined to specify when the servers can be turned off.
- The frequency for checking server status and time is defined.
- Load balancing rules are configured to prevent connections to turned-off servers.
- User activity is monitored during off business hours, and servers with no active sessions are turned off.
- Servers are turned on automatically during operational business hours.
- All power events are logged to the controller event log to provide a history.
Microsoft Research has investigated methods for turning off idle servers. The group published an interesting paper called "Power-Aware Server Provisioning and Load Dispatching for Connection-Intensive Internet Services" (available at research.microsoft.com/research/pubs/view.aspx?0rc=p&type=technical+report&id=1373&0sr=p).
What I find particularly interesting about this paper is that it focuses on how servers can be turned off in a connection-intensive Internet Service environment—Windows Live™ Messenger. In this paper, the authors offer up server provisioning and load dispatching algorithms, studying the subtle interactions between values. The end result is Microsoft Research was able to show energy savings in a range of 20 to 30 percent, depending on the number of disconnections initiated on the servers.
Another paper published by Microsoft Research, "Write Off-Loading: Practical Power Management for Enterprise Storage" (available at research.microsoft.com/camsys/paper-final.pdf), discusses the idea of saving power in storage by spinning down hard drives. To perform this research, the team observed 36 volumes in an enterprise data center to identify the idle periods. The general perception is that idle periods are too short to allow for spinning down the disks. The researchers, however, discovered significant idle periods, and they could further increase the idle time by modifying the read/write patterns using write-off loading. Write off-loading allows write requests on spun-down disks to be temporarily redirected to persistent storage located elsewhere in the data center. The results showed a 28 to 36 percent energy savings resulting from spinning disks down. And the use of write-off loading increased the energy savings to between 45 and 60 percent.
Companies such as Verdiem and 1E provide software solutions for managing desktop power consumption. And at least one company, Cassatt, has a solution for servers. Cassatt Active Response provides power management for physical and virtual server resources. It uses a policy-driven control to intelligently and systemically turn off servers. Its policies can be based on load, time, specific events (such as cooling unit failure), and power capacity changes (such as switching to a back-up generator).
Tips to Get Started
If you are interested in investigating server shutdown as a power-saving strategy, be sure to plan wisely and test before jumping in. Here are some tips to get you on your way:
- Start with a small step and turn off the servers in your development and test labs. Use this opportunity to get comfortable with how to do this in a non-critical environment.
- Avoid Wake on Lan. This is a 15-year-old feature that has been found to be unreliable in server environments.
- Sleep and hibernate are new capabilities for servers. You may have used these features successfully on a desktop or laptop running Windows Server,® but hardware support may be different on your server class machines. Check for support on your specific hardware before implementing these features on your servers.
- Windows Server 2003 and Windows Server 2008 will not hibernate on machines with more than 4GB of memory due to poor performance. You can find more details on this in the Knowledge Base article available at: support.microsoft.com/kb/888575.
- Turning off servers with scripts is the easy part; turning them on is the difficult part. One method is to use BMC support. Another approach is to use the remote power management solution offered on power strips from such companies as Server Technology. These solutions allow you to reset power over an IP connection, forcing a server to turn on.
- Be sure to design a solution that is automated and reliable. You don't want this to be a manual task, nor do you want it prone to human error.
Just as hybrid cars and compact fluorescent lightbulbs were once thought to be eccentric practices but became mainstream solutions, so will the concept of powering down servers.
As of today, turning servers off and on automatically is difficult to do, but with growing interest in environmental sustainability and a need to reduce rising energy costs, more people and businesses are motivated to find and develop solutions that work. After all, there really is no justifiable reason to leave all our servers running all the time, especially when they are not being used.
Be brave and take a first step yourself. Look analytically at the machines throughout your environment to see which ones can be turned off safely. And then institute a means to do it.
Dave Ohara has 26 years of experience in technology. He is now working with multiple companies implementing green initiatives.
© 2008 Microsoft Corporation and CMP Media, LLC. All rights reserved; reproduction in part or in whole without permission is prohibited.