VMware View4-Templates; PCoIP Install and Configure

VMware has heard about screen re-sizing issues when using the PCoIP protocol. Same goes for me. I have heard about this on vSphere and VI3 platforms with View4. Symptoms are;

You cannot resize the screen,it doesn’t resize automatically, resizing only works down instead of up etc.

In February 2010 a VMware KB came out around this; KB1018158, This KB describes How to prepare your template for using the PCoIP protocol.

I will copy paste the whole KB and afterwards tell you about my experiences and things to keep in mind. So far this has been working fine on vSphere and VI3, 3.5 with XP.

To ensure that a pool has all of the correct PCoIP functionality:

  1. Install View 4 on a supported platform (VMware vSphere 4 or VMware Infrastructure 3.5 Update 3 or 4).
  2. Create a Windows XP, Windows Vista, or Windows 7 virtual machine.
  3. Ensure that VMware Tools is installed, then install the View Agent, then the .NET framework.Note: The order is important. If you install any of these applications in the wrong order, or if you do not know the order in which they were installed, uninstall all 3, then reinstall in the correct order.
  4. In View Manager, set this desktop up as an individual desktop and entitle it.
  5. Ensure that you have the PCoIP settings for monitor and max resolution set the way you want them in the pool.
  6. Log in once and ensure that the basics work.
  7. If PCoIP or screen resizing is not already working, logout of the desktop and use the Reset option from inside of View Manager.Note: Do not reboot by clicking ShutdownRestart in the virtual machine. PCoIP is dependent upon the appropriate amount of video memory being allocated to the virtual machine. Since this is a virtual hardware setting (that needs to be in place before the virtual machine starts up), it is applied as a change in the .vmx file. If the virtual machine has already been started, it is essential that this virtual machine be restarted so that the .vmx file is re-read and the changes are used. Using Shutdown >Restart option inside the virtual machine does not force the .vmx to be re-read, as this does not cold boot the machine (from the VirtualCenter perspective) to refresh the virtual hardware. Using theShutdown Restart option from either VirtualCenter or View Manager (which issues the command via VirtualCenter) is the best way to make sure this file gets read properly.
  8. Log in again and make sure screen resizing works.
  9. Shutdown the virtual machine.
  10. Take a Snapshot.
  11. Remove the individual virtual machine assignment from View Manager.Note: If you do not perform this step, the virtual machine does not show up as an available parent in the pool creation process.
  12. Create your pool. It should work as expected.Note: When the appropriate video memory settings are in place for the parent virtual machine, you can create a pool based on this virtual machine and machines in that pool properly inherit the .vmx settings on first boot.

I have to say, I always do follow this KB until point 3. The most important part is the order of installation of VMware Tools, View Agents and .Net. Follow that order for sure. After that, I edit the VM’s properties in vCenter and change the properties of the virtual Video card; by default it is set to 4MB of RAM and I manually set it to 128MB. In vSphere this is very easy to do through the vCenter Client. In VI3, 3.5 you will have to manually change it in the .vmx file.

Keep in mind though, till vSphere 4 Update 1 you can’t set the Video card RAM to anything above 30MB. You could but VMotion of the VM’s will fail when the vRAM is over 30MB: KB1011971.

After the vRAM has been changed to 128MB and I use this VM to roll out a pool (Full or Linked Clone), when I’m using the View Manager to add a pool, I always set the Display Settings to 4 monitors and the maximum resolution of 2560×1600. Screen resizing works every time.

VMware View-Templates; XP and W7

One of the important parts in a VDI environment is storage. A VDI solution needs to have a proper storage solution that can handle all iops required. Iops generated by virtual desktops could be your enemy.

VMware still has the storage considerations white paper on its website. This white paper is based on an internal test. I consider this white paper as a “FYI”. Read it to get the basic ideas but don’t use the numbers when you are sizing storage for a VDI environment. I have seen totally different number at customer’s sites. Taking the numbers for the white paper as true/guidelines could possibly lead to challenges.

This post isn’t about storage sizing though. It is about creating a good template to base your virtual desktops on. A good template can reduce iops generated by the VM’s which are based on that template.

Below you will find a couple of pointers where to look/do to get a good Windows XP/7 template;

-A lot has been written on how to strip/optimize XP. Use Google and you will get many hits. You can do the same for Windows 7. Basically you want to stop as much services as possible, get rid of as much software as you can so the VM uses less memory, CPU resources and generates less iops. I have seen pretty impressive reductions on a running VM (from 18 to 6).

-A tool to make XP smaller and get rid of unwanted parts is nLite. I haven’t been able to create a good and solid .iso with nLite but I have seen them around. nLite is for Windows XP so far. For Windows 7 there isn’t a version available.

-When you are working with XP, for sure check out this VMware KB article. It discusses the use of the right LSI Storage Adapter Driver when using Composer. Download this driver and import it in your XP. You can make a .flp with the LSI drivers, connect it during the XP installation and hit F6 when it asks for 3rd party SCSI drivers. Not something performance related but it will save you some headaches when you deploy Linked Clones.

Also, Herco van Brug from PQR in The Netherlands wrote a very good article about creating a XP template. His suggestions are based on real life experiences. For sure read this article and implement his suggestions. Most suggestions can be implemented on Windows 7 as well.

My bet is when VMware View will support Windows 7 full stop (no, I can’t mention when) more information about optimizing Windows 7 within a View environment will appear.  I will update this post when I receive more information.