In previous posts I have explored using Workflow Studio to Shut down a Windows host and also how to Shut down a XenServer host. Getting the power off is a big step in being greener, but if you could just turn off machines and leave them off permanently then you wouldn't need Workflow Studio
Next we have to look at how to get those hosts powered back on.
There are a lot of different options out there for power management, but the one thing that is fairly consistently avaiable is Wake On LAN (WOL). In this post I am going to look at how WOL technology can be leveraged by Workflow Studio. Most modern server NICs have some form of WOL support (though you may have to turn it on in the BIOS.) This allows you to start up any machine that you know the MAC address for. Heare are some details on WOL from Intel and the Wikipedia WOL page has a good overview and a lot of links to free utilities and sample code.
Now that we have an understanding of how we want to start our server we can add it in as a task in Workflow Studio. There isn't a native WOL task in Workflow Studio (not yet anyway), but it is pretty easy to call one of the tools mentioned in the Wikipedia article with a "Launch Process" task. I started with that, but didn't like having to require one of these to be installed, so I went looking at the code samples. I finally found a great implementation of WOL in PowerShell by /\/\o\/\/ The PowerShell Guy. Paste that code in a PowerShell Script task and you have an embedded Wake On LAN task.
The next step is to put all this together into a single workflow with some business logic about when you want to start and stop your servers. I want to hear from you - what metrics would you want to use to drive a "Green" workflow? Is Wake On LAN supported in your data center? What issues do you have that this kind of a workflow could help with?
Comments (3)
Jul 30, 2008
James Rabey says:
Hi Peter, Nice article, and I am liking your Green Data Center series so far. ...Hi Peter,
Nice article, and I am liking your Green Data Center series so far. Do you know how widespread is WOL support in server
NICs? I've heard comments before that WOL isn't that widely supported as a objection when I have promoted WOL based Green product ideas, but that doesn't seem to be the case.
Regards,
James.
Jul 30, 2008
Peter Schulz says:
I don't have any numbers on deployed servers, but even my laptop supports WOL th...I don't have any numbers on deployed servers, but even my laptop supports WOL these days.
Edit: I added a poll to ask the community. Click here to take the poll: http://community.citrix.com/x/RQUgAg
Jul 30, 2008
Simon Bramfitt says:
Pete I've already commented on the issues with using WoL in your adoption poll -...Pete
I've already commented on the issues with using WoL in your adoption poll - in summary; WoL's lack of security will limit adoption in the data center.
So moving on to your question "What issues do you have that this kind of a workflow could help with?"
Really there's only one issue here, the size of out utility bill (and how that contributes to environmental concerns), but there's opportunities to make significant saving here. All are variations on the same theme - we have to keep boxes running based solely on the possibility that they might be needed at some point.
Business Continuity
We keep a considerable number of servers in a business continuity farm just waiting for the possibility of an incident that will call them into play. Right now all servers are up and running 24x7 sucking power and warming the environment. Having the ability to detect when users are accessing apps in the business continuity site and acting then to power on servers in response would result in huge power savings.
Peak power reduction
Our production environments are sized to deliver N+10% capacity, the additional 10% provide coverage for unforeseen increases in demand, hardware failure etc. Right now that additional 10% runs 24x7 to support the remote possibility of being called into play. If were able to monitor available capacity (at the application level) and react by powering on servers only when needed, that 10% might never need to be powered on (except for maintenance) and I would reduce the overall data center power consumption.
Capacity Management
Our production environment follows a typical bell curve with the peak (65 K sessions) occurring at about 11:30 am and the low point (3 K sessions) occurring at about 3 am. At the low point I only need about 50 servers to host all the active sessions. Having the ability to monitor utilization at the application level and power on/off servers to match demand would result in considerable power savings.
Regards
Simon
Add Comment