Now that the time to virtualize is upon us, deployments are underway. If you seen the demo’s you know its great. Have you then tried the exercise of scoping an actual virtualization deployment? Set aside a little time and it’s not as hard as you think. In fact, there are resources and tools available to help you. Whether you are looking to deploy 500 to 70,000 virtual desktops, adding in applications, Citrix has already done much of the legwork for you. We recently had a lab exercise to build out 500 virtual desktops using XenServer and XenDesktop. Trying to scope this seemed daunting at first, however, we were pleased to find that Daniel Feller, a lead architect at Citrix, has built planning guides already.
We found the XD – Planning Guide – Hosted VM-Based Resource Allocation document to be of most help. While it doesn’t specify storage space required for each of your VM’s, you can extract that from the other planning documents. Then we built a spreadsheet to calculate how big and how many servers we would need. You can borrow the spreadsheet and plug in your own number of users. There are so many servers to choose from you have to decide which server you want to buy, RAM, vCPU’s, Storage, etc, and then divide that into how many RAM, vCPU’s, and Storage you need to procure.
Daniel Feller lists the Desktop requirements here. The following formulas from the planning guide also helps and can be found in the spreadsheet.
Total RAM required:
|Amount of RAM Needed = (Amount of RAM per desktop * Number of Desktops) + Hypervisor overhead|
Total vCPU’s required:
|Number of Cores required = (Number of vCPU’s per desktop * Number of Desktops) + 1 core for Hypervisor overhead|
Note: Servers that support virtualization have multiple cores, ex: 8 cores = 8 vCPU’s.
Rule of Thumb?
So how do I go about selecting servers to host the number of VDI’s or virtual desktops I plan on having? My estimates are as follows… A XenServer Pool can support up to 32 XenServer hosts. With typical hardware in todays terms containing Quad Core processors and 128 Gb memory, you can generally run about 50-60 Windows 7 desktops on a single XenServer host. That would equate to 1,920 Windows 7 desktops per XenServer pool. Knowing that I’m not always right, I thought I would consult an expert colleague at HP.
HP relayed the following information… If you are looking at hosting VDI’s (one per user), it is more than just specifying some servers. For a basic VDI solution, you should think about hosting 10 users per core. From there do the math to figure out how many users fit on a server. What you need to think about is not something we normally recommend; however we have found that 2-socket servers (two motherboard sockets for two CPU’s of which these might be Quad Core CPU’s totalling 8 cores for vCPU’s) seem to be the best fit for VDI solutions. We have found that increasing the number of motherboard sockets does not linearly increase user counts. So far we have found the best servers for hosting VDI’s with XenServer are:
- BL460c G7 Blades
- BL490c G7
- DL380 G7 servers
- DL360 G7 servers
Both Intel and AMD CPU’s fit into that. These are all two socket servers. The DL580 is a four socket that some customers have been using. Essentially, the more users on a single server, the more users that can be affected in the event of a server failure. Without understanding workload or storage, additional research should be done at http://www.hp.com/go/cv and check out the Reference Architectures.
Download the sizing spreadsheet here
Download Citrix XenServer here
Download Citrix XenDesktop here
Download Citrix Virtual Load Balancer & SSL VPN here
The Citrix Community is powerful!