Blog Archives
Virtual Desktop Resources: Then and Now
Two years ago, I wrote a blog called “Lessons Learned with vCPU allocation“. This was still fairly early in the world of virtual desktops. But with numerous successful projects, we were able to start generating sizing estimates for virtual desktops. We talked about how many vCPUs we should allocate, how many users we expect to get per physical core, how much RAM we need and how many IOPS will we generate. I wanted to go back and see if some of the best practices I offered years ago still stand up to scrutiny. If not, I want to know why.
First, let’s look at how CPU recommendations have changed (BTW, I’m only looking at Windows 7).
| User Group | 2011 Estimate (Pooled VDI) |
2013 Estimate (Pooled VDI) |
2013 Estimate (Pooled VDI with PVD) |
| Light | 8-10 | Dual Socket: 13 Quad Socket: 11 |
Dual Socket: 11 Quad Socket: 9 |
| Normal | 6-8 | Dual Socket: 10 Quad Socket: 8 |
Dual Socket: 8 Quad Socket: 6 |
| Heavy | 2-4 | Dual Socket: 5 Quad Socket: 4 |
Dual Socket: 4 Quad Socket: 3 |
A few things to notice: We know that having a quad socket server does not scale linearly from a dual socket server. We also can see that the number of users we expect to get from a core has also increased. This basically means we can pack more users onto a server. What changed? Why are we higher now than 2 years ago? Processors have gotten faster and many of the software-based hypervisor-related instructions have been incorporated into the chip. Plus, we’ve learned to properly optimize our desktops, which will help increase user density.
Do you think anything changed with RAM recommendations?
| User Group | 2011 Estimate (Pooled VDI) |
2013 Estimate (Pooled VDI) |
2013 Estimate (Pooled VDI with PVD) |
| Light | 1-1.5 GB | 1 GB | 1 GB |
| Normal | 1.5-2 GB | 2 GB | 2 GB |
| Heavy | 4 GB | 4 GB | 4 GB |
Looks the same, which is not unexpected. We are using the same operating system, the same applications, etc.
Finally, IOPS…
| User Group | 2011 Estimate (Pooled VDI) |
2013 Estimate (Pooled VDI) |
2013 Estimate (Pooled VDI with PVD) |
| Light | 4-6 | MCS: 8 PVS: 5 |
MCS: 7 PVS: 4 |
| Normal | 8-12 | MCS: 16 PVS: 10 |
MCS: 14 PVS: 9 |
| Heavy | 25-50 | MCS: 32+ PVS: 20+ |
MCS: 29+ PVS: 18+ |
The original IOPS numbers for 2011 were based on Provisioning Services. Looking at the 2013 estimates, we are still in line with our recommendations from 2 years ago for Provisioning Services. Again, same OS and applications generating the same load.
All in all, with slight modifications to user density based on CPU, our original recommendations are still valid. You can find these latest recommendations in the Citrix Virtual Desktop Handbook, as well as so many other good best practices.
Daniel
Daniel – Lead Architect
Follow @djfeller
Project Accelerator
Citrix Virtual Desktop Handbook
Virtual desktop design – The right approach
One of the first questions someone doing desktop virtualization wants answered is usually one of the following questions
- How many servers do I need?
- How many IOPS?
- How many XenDesktop Controllers do I need?
I’ve seen it many times and have been asked these questions many times. The typical answer is “It depends” (I really hate this answer BTW). The wrong answer is any number (You don’t have enough information). A more accurate answer is “Let’s solve for X, where X is the number of servers” (Pretty much the same thing as “It depends”, but we didn’t have to say “It depends”.)
So in order to start solving for X, we need to ask a wide range of questions around the user’s usage requirements, location, personalization, hypervisor, hardware specifications, etc. The list can be quite long if you want a realistic and accurate answer. The problem with this approach, which is the same approach I’ve seen many people take, is that
SDRAWKCAB SSECORP EHT TOUBA GNIOG ERA OUY
The number of servers, number of IOPS, number of XenDesktop controllers are some of the LAST design decisions you should answer. Before you can answer this, you need to understand the user’s endpoints, you need to figure out how the users will access the environment and you need to understand what form user’s virtual desktop will take.
The right way to do a virtual desktop design is to follow the 5-layer model:

- User Layer: Focus on the decisions that impact the users directly: endpoints, receiver, etc. Should be done for each user group.
- Access Layer: What types of authentication, encryption and bandwidth does each user group require? Should be done for each user group.
- Desktop Layer: What does the user’s virtual desktop look like? OS, Apps, profiles, policies, printing, etc. Should be done for each user group.
- Control Layer: What and how many infrastructure components are required (Access Gateway, StoreFront, XenDesktop/XenApp controllers, Provisioning Servers, etc). Should be done for each data center.
- Hardware Layer: How much physical hardware is required, which includes number of servers, total storage space requirements, total IOPS requirements, number of virtual machines, etc. Should be done for each data center.
When you use Project Accelerator, you see this 5-layer model depicted in the architecture diagram.
When you look at the NEWLY updated Virtual Desktop Handbook, you see the design phase following the same flow as well as many of the different design decisions you should answer.
I encourage you to take a look at both. And notice that the latest additions to the Virtual Desktop Handbook go into more details for many of the appropriate design decisions within these layers.
Stay tuned for more, as we are working on additional updates to the handbook.
Daniel – Lead Architect
Follow @djfeller
Project Accelerator
Citrix Virtual Desktop Handbook
The importance of user personalization within your virtual desktop
I just got off the phone with Citrix helpdesk because I finally messed up my virtual desktop. I have a dedicated virtual desktop and I guess I installed/uninstalled too many things over the past few years. The same thing always happened to me with a traditional desktop. The good thing is that it only took the helpdesk a few moments to reset my virtual desktop to a base image and I didn’t have to sit and install Windows 7 and Office for the 100th time.
This experience got me to the next question from Project Accelerator: The importance of personalization.
We all know what personalization is. What rights you, as a user, have in altering the initial state of the desktop/application environment. Can you change a setting in an app? Can you install apps? Can you change OS-level settings? Can you even change the background (seriously???)
Why does personalization matter? We need to align the technical solution with the user requirements. In Project Accelerator, we break this down into three levels:
- No personalization: User cannot modify any desktop or app setting (similar to a kiosk)
- Basic personalization: User can modify user-level settings within desktops and apps
- Complete personalization: User can make any change, including installing applications
Easy, just pick the one most appropriate for your users group. Let’s think hard about this because if you get this wrong, your users will be ready to revolt. Imagine you gave a user a pooled desktop. They installed an app. The next day, the app is gone. User thinks this is strange. Maybe I was under severe medications yesterday and I only imagined myself installing the app. So they do it again. Bam, next day, the app is gone. Now they start to get angry and they let you know about it.
This scenario plays out all the time. If you assess your users, you should understand what level of personalization they require. The “No Personalization” item is usually the easiest to identify as these users typcially make up a very specific use case. However, we often get into the debate between Basic and Complete. I say when in doubt, go with complete. Your users will be happier in the long term, which will probably make you happier as well.
As you can imagine, this one decision plays a big role in determining what kind of virtual desktop the user gets, but it does more than that. This one question influences:
- FlexCast: what type of virtual desktop the user receives
- Deployment order of your user group
- Which folders to redirect
- What type of profile to use
- What type of XenClient image to use
- XenClient backup storage requirements
Choose wisely.
Daniel – Lead Architect
Follow @djfeller
An Architect’s Guide to Desktop Virtualization
What does it take to be a desktop virtualization architect?
Being able to say “It depends” in twelve different languages is a great start.
- English (American): It depends
- English (Australian): It depends
- English (British): It depends
- English (Canadian): It depends
- German: je nachdem
- Spanish: eso depende
- French: elle dépend
- Dutch: het hangt ervan
- Italian: dipende
- Swahilli: inategemea
- Chinese: 视情况而定
- Japanese: それは場合による
Translations courtesy of Google Translator. For all I know, I just said “My hovercraft is full of eels” in many different languages.
Seriously, the reason why an architect says “It depends” so much is because we don’t have enough information to make the best decision, or even an educated guess. To put simply, it depends on the circumstances. Unfortunately, “It depends” isn’t the answer; it is the start of a longer discussion meant to uncover the underlying challenges and goals. And because a true desktop virtualization solution can take on so many different forms, the time to develop the skills as an architect can be quite long.
How do we shorten this timeframe? It starts with gaining an understanding of the information one needs to gather, how that information goes into defining user groups and virtualization models and identifying/selecting the appropriate design decisions.
This is a huge undertaking, and one we are excited to take on. As you might have seen, we recently released the Citrix Virtual Desktop Handbook, which grew out of the successful Citrix XenDesktop Handbook (we are creative with names ). We wanted to focus on more than XenDesktop because desktop virtualization is so much more than VDI. We want to create an all-encompassing guide for an architect.
Version 1 of the handbook focuses on the Assess phase, which identifies what you need to know and do to successfully start your project. This is only the start. We are getting close to releasing version 2, which will include portions of the design section (this is the part that excites most architects).
If you haven’t already, download the handbook, find a comfy chair, and let us know what you think of the initial release.
Stay tuned for more
Daniel – Lead Architect
Follow @djfeller
New Citrix Visio Stencils
Hopefully by now, you’ve heard of Citrix Project Accelerator. If not, I suggest you take a look at the following blogs:
- Citrix Launches Free Tool to Take Guesswork Out of Desktop Virtualization
- Playing 20 Questions with Project Accelerator
By spending a little time in the Assess phase, Project Accelerator creates this awesome looking diagram
The truth is, this diagram took many, many, many revisions. We wanted to create something that was easy to follow while providing the most important information people wanted to see, which included IOPS, servers, VMs, storage space, desktop images, infrastructure components, and so much more. It took a few revisions before I had something in Visio that did all of that. Then we gave my diagram to Marta Guerra, a senior designer on the Project Accelerator team. She turned the diagram into something easy to follow and very clean with new images/icons for all of the components. I’m still impressed. I know many of you are too because you’ve asked for the Visio stencils.
Unfortunately, Project Accelerator diagrams aren’t done in Visio, but that didn’t stop us from giving you what you wanted. With the help of Marta, I’ve been able to turn these images into a new set of Citrix Visio Stencils.
Get them here!
Enjoy!
Daniel Feller – Lead Architect
