There seems to be quite a bit of discussion on Citrix replacing Provisioning Services (PVS) with Machine Creation Services (MCS), especially in the new release hopefully going GA soon. In light of the new release, while MCS is expanding and finding more uses, I think people forget why PVS is still relevant and the best use cases for it.
Let’s start with the common objections to PVS. One, many claim it’s hard to setup and complicated to understand. Two, it requires a lot of network bandwidth and uses heavy write IOPs. Three, Citrix is putting all their money in MCS and it seems likely PVS will go away once they can provision XenApp with MCS.
The biggest reason for the use of PVS today is with XenApp. PVS, originally Ardence, was designed to provision servers in the datacenter. Personally, my first use of PVS was provisioning ONLY XenApp and it did a fantastic job. I was able to create 48 servers from beginning to end (including app installs and testing) within a month. This was when I worked at a customer site so I think it’s impressive for someone who never used the product. While the use of XenApp is important, PVS has some great benefits that are often overlooked (and so does MCS!).
What is the use case for PVS? One use case is when your storage doesn’t support thin provisioning or dedupe for MCS. If you use MCS on regular vanilla storage, you will just have what looks like full copies of the master image (which you version using snapshots in the hypervisor). This may not be an issue for smaller installs but for ones that involves 10s of 1000s (like one I’m doing now), there is no way I can sell that much space or it simply isn’t an option for me. PVS is fantastic as saving space. I only need a gold image and then a cache drive which often is between 3-5GB times the number of desktops I have. When we get into 5,000+ territory, this looks like a much better alternative.
Speaking of 5,000+ VM deployments (be it XenApp or XenDesktop), I almost always go with PVS. Not because initially MCS wasn’t recommended for it, but because my updates would take forever using MCS. This is more an issue with linked-clones for VMware. Have you considered how long a recompose might take on 5,000 desktops? If you have multiple gold images you may be able to chunk this up, but then you are managing multiple images and multiple environments. The whole point of VDI, desktop virtualization or XenApp is consolidation, so I aim for one single image. This is even more true if I use heavy profile or application management products on top. Now I have one single image for all 5,000 desktops (for example). I can easily run 5,000 desktops off two provisioning servers (I use two for redundancy always, but we could do one if I didn’t care). If I need to update them I can do so in a matter of minutes through a reboot (yes I would stagger the reboots). This is not the case with MCS, the images are updated in much the same fashion as VMware does with linked-clones, one by one. Why is this an issue? Usually because if you have ever worked in operations you’d know that there always comes a point where something must be updated or installed or uninstalled yesterday and it’s usually in the middle of the business day and often stopping work. For me, that is worth the cost of admission for PVS for these larger scale deployments.
In conclusion, PVS doesn’t appear to be going anywhere and still has many relevant use cases. The new addition of XenDesktop/XenApp with an increased and expanded use of MCS does not make PVS less relevant. Generally, PVS is a great fit for large scale deployments, especially when using one or very few golden images and when storage capabilities do not make MCS a great fit. Don’t miss my breakout session SYN413: Real-world experiences with provisioning services at Citrix Synergy on Thursday, May 23 at 5pm where I will discuss all of this and more!
Tom Gamull is a solutions architect for Presidio with a focus on virtualization and end-user computing. He presented at GAMEIS 2011 (Savannah, GA) and has run numerous engineering and customer events. Thomas is certified as a CCIA for virtualization. You can follow his blog (magicalyak.wordpress.com) or follow him on Twitter @MagicalYak.