PVS vs. MCS in a VDI deployment

There’s a lot of debate in the engineering community on whether to use Provisioning Services (PVS) or Machine Creation Services (MCS) when deploying a VDI solution. There are clear differences between the two technologies, and depending on the type of deployment, important factors to consider when choosing which one to use.


MCS uses linked clone technology. This means that a snapshot is taken of the master template, which is then used as the parent disk for the clones (VDIs). This is a relatively simple method to deploy, and it doesn’t require any additional infrastructure.

Challenges of MCS 

The main challenges of MCS are storage and scale-out related. With MCS, the clones and the parent disk must be on the same datastore in order to maintain link integrity. If the linked clones are distributed across multiple datastores, a copy of the master must be as well – substantially increasing the storage requirements for a deployment. For this reason, scaling out an MCS deployment can become difficult.

  • MCS uses about 21% more IOPS than PVS. Depending on the network infrastructure, this may be an important factor to consider for maintaining consistent performance across the VDIs.
  • MCS does not regularly “clean up” old master clones when deploying an update from a new snapshot. Instead, the old files must be manually removed in order to free up disk space.

PVS uses software streaming technology to deliver VDIs, requiring additional infrastructure to support the solution. PVS imaging wizard captures an image from the master machine, and then stores it in a VHD format (vDisk) on the Provisioning Server. The vDisk can then be shared (streamed) by multiple VDIs.

Technical Note: PVS utilizes a PXE boot method (BDM can also be used in the absence of DHCP) and a TFTP to stream the vDisk. Additional network configurations are required to allow PXE to work in the environment.

PVS is an elegant solution, and scales well in large enterprise-class deployments. Multiple PVS servers can be built out to balance the vDisk streaming load, providing redundancy as needed. And, with the introduction of caching to device RAM, the IOPS used by a PVS deployment can be greatly reduced (<1 IOP in some cases).


MCS is suited for small deployments (or lab scenarios) and is simple to deploy. But overall, PVS is the more robust and scalable solution for enterprise environments.

PVS requires more intensive planning, additional infrastructure, and more configuration to implement. However, once built it’s easy to maintain and requires very little maintenance. In most scenarios, it would be preferable to deploy PVS as opposed to MCS for the reasons outlined above.


Here at Centrinet we keep up-to-date on the latest technologies – and like to make sure you do too. Contact us today to learn more about our suite of datacenter virtualization and management services.


Expanding a vDisk

Do you need to increase the size of your vDisk in order to allocate more space to your OS drive? Follow these simple steps to complete the process on a Windows 2008 R2 server and above.

  1. Download the following link: VhdResizer
  1. Once you have the VhdResizer installed, open it.
  1. Browse to the VHD that you want to expand:


  1. Once the VhdResizer opens, enter the new name and size of the .VHD file in the appropriate fields. When finished, hit the “resize” button:


  1. Once you have your new .VHD file you will need to have Windows expand the drive from the disk management standpoint. Right click on your .VHD file and click “Mount”:


  1. Open the Windows Disk Management console:


  1. You will now see your .VHD drive mounted with the new unallocated space:


  1. Right click on the Volume and select “Extend Volume”:


  1. Now right click on the mounted .VHD and select “Detach VHD”:


10. Good job! You are now ready to use your new VHD.


Here at Centrinet we keep up-to-date on the latest technologies – and like to make sure you do too. Contact us today to learn more about our suite of datacenter virtualization and management services.

Let us help you get the most out of your IT investments!


Reverse Imaging a Disk Image & Updating XenTools


Our purpose in creating this guide is to lay out a step-by-step procedure for updating XenTools on a PVS image, and to document some of the pitfalls involved with the process.

Please keep in mind that failure to follow the correct sequence can brick the image, in which case you must start over from scratch.


This procedure applies to PVS images hosted on XenServer, but a similar process can be followed if using VMware as your hosted hypervisor.

1) Reverse Image vDisk

1.1   First, we need to attach a second drive that is the same size as the disk image. Make sure the new disk is not in position 0 (please note that the cache drive can be detached as it not required):


1.2   Initialize the disk and format it (GPT can be used as well, and may be a better choice):


1.3   Create a volume and assign a drive letter to the new drive:


1.4   Download and install XenConvert for the OS version that you are using:


1.5   Launch XenConvert:


1.6   Select “Volume” and “Volume” for the “From” and “To” selections on the Welcome screen:


1.7   Select the C: drive as the source volume and the new drive (F drive) as the Destination:


1.8   Click “Convert” on the next screen:


1.9   If you see the warning below, click “Yes”:


1.10   Once the conversion is complete, click “Finish”.

2) Remove Target Device and VDA

2.1   Shut down the machine and detach the Cache Drive:


2.2   In the Provision Services console, set the machine object to boot from the Hard Disk in the Target Device Properties:


2.3   Also remove the vDisks from the machine object:


2.4   Boot up the machine with the newly created drive. You may have to set the VM to boot from the Hard Disk and uncheck the Network boot option (please note: you may need to boot the machine up with the vDisk and mark the new drive as active if the system doesn’t boot up):


2.5   You need to exit the provisioning target device process from the system tray (you can also view the status to make sure there are no vDisks attached):


2.6   End the process called “BNDevice.exe” from the task manager:


2.7   Now, uninstall the Citrix Provisioning Services Target Device x64 application:


3) Update XenTools and Create New Image

3.1   Reboot the machine and then run the XenTools update installer and follow the prompts (a couple of reboots may be required) and click “Done” when it is complete:



3.2   When the windows prompt comes up, select “Restart Later” or you will brick the machine. This must be selected for Citrix to finish the tools update:


3.3   After the XenTools update, you may need to remove the old ghosted adapter, so set the device manager to show hidden devices (a failure to do so could prevent new image creation):


3.4   When Device manager comes up, select view→show hidden devices and expand the Network adapters group. Locate the ghosted adapter and uninstall it:


3.5   Reinstall the Citrix Provisioning Services Target Device from the ISO and run the installer PVS_Device_x64.exe. – then follow the prompts and restart the machine:


3.6   Before you cut a new disk make sure there is a vDisk connected (it will change it later). Make sure to set it to boot from Hard drive on the machine object in the PVS server, otherwise the process might fail:



3.7   Change the boot options in XenCenter to only boot from the network, and reboot the machine:


3.8   Now you are ready to cut a new disk. Make sure the machine is online with the provisioning server by checking the provisioning target device status in the system tray. From the start menu, launch the Provisioning Services Imagine Wizard:


3.9   Click “Next” to start the wizard and enter the Provisioning Server (use the IP on the same network segment). Use Windows Credentials unless you logged on with a local account, then enter them:


3.10   Select “Create new vDisk”:


3.11   Create a vDisk name and choose the store (make sure to use one you used for your Master Device Collections) where you want to place the new vDisk and click “Next”:


3.12   For the master image, choose “None” for the KMS setting. You will set KMS on the production image later on:


3.13   Make sure to set all other drives to “None” on the Configure Image Volumes page (or the image may not be usable) and click “Next”:


3.14   Click “Next” on the Existing Target Device page (The existing master image target device):


3.15   If you see the following warning, click “Yes”:


3.16   Click the “Optimize for Provisioning Services” button:


3.17   Leave all the boxes checked and click “OK” on the dialog box:


3.18   Now click “Finish”:


3.19   Click “Yes” on the dialog box that says the machine must reboot:


3.20   After the server reboots, log in again and you will see the following dialog box displaying the progress:


3.21   When the image completes, click “Finish” and then shut down the machine. Detach the drive you used to reverse image (40 GB in this case) the vDisk and reattach the original cache drive (20 GB):


3.22   The new vDisk should be attached now, but you need to set the boot from option to “vDisk” again:


3.23   Attach any other drives that are needed for the image:


3.24   Boot up the machine and make sure it comes up properly. If you have issues, check the boot options and make sure you have it set to network boot.

Congratulations, you have successfully completed the procedure for reverse imaging a PVS vDisk and updating XenTools.