We’ve recently announced a cool new feature for XenApp, called Power and Capacity Management (PCM). Here’s a video demonstrating PCM in action:

Architectural Overview

Power and Capacity Management uses an agent/manager architecture. The agent is installed at all XenApp servers you wish to power manage. The manager – called the Concentrator – is responsible for monitoring, storing data, and issuing power operations to the agents. The Tech Preview doesn’t have high-availability implemented yet, so you should install only one concentrator. In the final version you can have multiple concentrators to enable high availability. Another thing to note is that we’ve decided to implement Power and Capacity Management outside of XenApp IMA (Independent Management Architecture) partially because we wanted PCM to manage multiple XenApp farms. You can install the PCM concentrator alongside your Data Collectors if you only want to manage a single farm.

Installation and Communications

During agent installation, you will be asked for a farm and workload name. The concentrator manages a single Power and Capacity Management farm – note that this is not the XenApp IMA farm name, it’s just a namespace for PCM. This setting is stored at HKLM:/Software/Policies/Citrix/XenAppPCM, which is good if you want to install the agent using dummy data and then use an ADM/X file and Group Policies to manage this setting across multiple XenApp servers later on. We plan on integrating this configuration into the XenApp configuration interface and SDK’s as well.

The other configuration setting for the agent is the workload name. This represents a server silo or group. All configuration for Power and Capacity Management is related to a workload, so you want to make sure all XenApp servers in the same workload have similar or even identical configuration. You can also define tiers of servers within a workload, telling PCM which servers should be powered on first, and which ones to power on only when necessary.

Once you install the agent on your target XenApp server(s), it will register with the concentrator and its defined workload group will automatically appear in the PCM console. This is possible because the concentrator creates a Service Connection Point (SCP) under the computer Active Directory (AD) account during installation. This is done using the computer network account, so no special AD authority is required. The agent queries AD for these SCP to find the its concentrators. Since all PCM communications are Windows Communication Foundation (WCF)-based, all power-managed XenApp servers computers must be in the same domain as the concentrator that is controlling the farm they are joined to.


Before Power and Capacity Management can manage the servers you’ve added to the workload, you need to enter the server capacity and policy schedule. The server capacity is related to the Load Evaluator, but they don’t have to be the same. You will enter how many sessions are expected for each “hardware specification” in the workload. The hardware specification is automatically displayed when the agent registers, you just have to enter the capacity value. This setting is used to calculate the “session buffer”, i.e., how many new sessions are currently available on the workload. If you under-estimate this number, then PCM will start more servers than necessary. If you over-estimate this number, PCM may not realize that the workload is running out of capacity. The Tech Preview version requires this manual configuration, at product release we plan to introduce some automatic adjustments to simplify this configuration.

The last piece of configuration is to define a policy schedule. You will enter the policy configuration and how it will vary during the day and throughout the week. The policy defines the minimum number of servers that must be online and how many spare sessions to maintain. Spare sessions are calculated as the difference of the workload server capacity and the number of connected sessions. Spare sessions are a buffer of capacity. The higher the number, the more idle capacity you will have on your servers. this is good when you have a very active user base or during times when many users login very rapidly. The lower the number the less idle capacity you will have. Setting the number too low may result in reduced performance or response while users wait for additional capacity to power on.

That’s it! Now select the workload and “Enable Power Management” and PCM will start enforcing the policy schedule. You might notice that some servers power down immediately. That is normal operation if the current policy settings require less capacity than what is currently powered on.

Stay tuned for more posts from me on Power and Capacity Management. In the coming days and weeks, I’ll go in depth on more advanced features like load consolidation, SDK’s and some interesting possibilities that are afforded to us and that we are considering developing with PCM.

Download the technology preview of power and capacity management at the XenApp Technology Preview Center. Also, stay updated by following XenApp on Twitter.

Follow me on Twitter: http://www.twitter.com/jmaldaner