For about three weeks ago I was asked by my colleague Erik Scholten to help him out with his VMware View project for our Service Center. I thought this is my change to explore the ins and –outs of VMware View. The infrastructure for VMware View was already build by Erik on four Dell servers and a Dell Equallogic SAN. After one week of figuring out the architecture and everything up and on it, Erik told me he had to leave for another project right away. A lot of trust in my hands with a dead line in sight over a couple days.

Let me sum things up that Erik couldn’t finish;

  • Windows Vista client customization failed.
  • Windows XP client poor performance.

I started with the Windows Vista customization problem, but first let met tell you something about the client.  Vista was deployed with Windows BDD 2007 in a virtual machine and customized using the build-in Sysprep by my colleagues of the IT team for the customer. After my colleagues had installed all the software it was time to convert the VM into a template waiting to be deployed. But unfortunately it is not that easy as just reading the administrator guide and do what it says. This is how I tackled these problems:

Troubleshooting the Customization problems;

  • Be sure you have set the right Guest OS type of the virtual machine for the Guest OS you want to install. For example; If you have a virtual machine created with the Guest OS type set to Windows XP and you install Windows Vista, you probably won’t notice any problems with your VM. But if you make a template and deploy the template as a VM you will get errors about your hardware (scsi adapter) and second your customization will fail. Something about the SCSI adapters, there are two variants namely the Buslogic and the LSI logic. Both adapters are working for Windows Vista but VMware recommends to make use of the LSI logic adapter. As you didn’t already know, YES the VM was created with the Guest OS type set on XP and installed with Vista. Standard if you create a VM with the Guest OS set on Windows Vista the VM will be automatically created with the LSI logic adapter. If Vista cannot find the hard drive installing from scratch you also have the Buslogic SCSI adapter configured because the LSI logic driver is already in the setup of Vista and the Buslogic is not. So check you Guest OS type.
  • There have been some changes with the unattended installation of a Vista client. Sysprep is build-in the OS these days, this means that you don’t have to copy any sysprep files into the sysprep directory of Virtual Center. Just create a customization specification with the wizard in vCenter, create a good template to deploy and your good to go. (Vista uses a answer file in XML format meaning that INF files are not working)
  • Remove all old *.xml files from a previous unattended installation otherwise they could get in the way and delete the following directory “%windir%\Panther”.
  • Check for software like virus scanners that can block installing the VMware Boot-Run service for customizing the VM. VMware Boot-Run service is copying the answer files to the client and configuring it with settings you specified in your customization specification.
  • When automatically joining the VM  to a Windows Domain, be sure you specify the right account and password. Switch the firewalls off in the template or configure it correctly.
  • When joining a client to the domain also be aware of other Group Policies that will be applied on your client after restart. Think of firewall etc.
  • Log files to get some useful information about Windows Vista with VMware customization can be found in these directories.

– %windir%\System32\Sysprep

– %windir%\Panther\UnattendGC\setupact.log  – Contains the sysprep information, like the domain join.

– %windir%\Panther\UnattendGC\setuperr.log   – Contains the error information generated by sysprep.

– %windir%\Temp\vmware-imc\guestcust.log     – Information of the customize scripts of VMware.

– %windir%\Temp\vmware-imc\toolsDeployPkg.log – Scripts that are copied by the VMware Bootrun Service.

and information about the customization process.

Vista_Cust_log Vista_Cust_log2

Two of our customers who use the View environment have Windows XP as there client machines. After making the clients available for running as a virtual machine, one customer experienced very poor performance. When the connection to the VM was established it seemed like  everything was running fine, but once we started Internet Explorer the screen refresh was slow as a RDP connection over a 56k modem. We tried connecting to the virtual machine without using the View Client and we experienced no performance / refresh trouble. Very strange, the next day the technical staff of the customer noticed that if they started the View Client as an local administrator they had no poor performance and the speed was just as fast as connecting with the RDP client. From this stage I thought maybe it is a security problem but wait, if so why do I not have this problem with my laptop logged on as a standard user? Lets find out on my way in troubleshooting this nice problem while the deadline is almost in sight.

Troubleshooting the Performance problems;

  • Update the VMware View clients with the last RDP updates see this article.
  • Check also the if the View client if its the latest version. While writing this post the latest version is 3.1.0.1097.
  • Check the Internet Proxy settings, the View client is inheriting these settings. If your proxy is not configured correctly you will get very poor performance in the View client. When I asked the technical staff if they were using a proxy server, they told me; there is a proxy server defined in a Site Policy (Active Directory) but they disabled it couple days ago. Still I couldn’t get it what was wrong, then I stepped to one of our testers. The tester had manually configured the proxy server they used before when the site policy was intact. So I disabled the proxy server and the performance problem disappeared.
  • I had not the idea that the View client had any problems with reading or writing into certain directories causing the performance problem . But still I was curious about the directories it  uses. I started Filemon and filtered the directories the View Client accessed. These are the directories the View Client uses.

– C:\Program Files\Common Files\Microsoft Shared\Modi\11.0         –   Read / Write Access

– C:\Windows\System32\config\Software.log                                   –   Read Access

– C:\All Users\Application Data\VMware\VDM\Logs                         –   Read / Write Access

Some other troubleshooting information;

  • If you are able to connect to the View server with your View client and you get the screen with desktops available for you. Then you know that that you can reach the View server. If not check your network settings.
  • Also check your (default) firewall settings of you client VM, even if you switched off the (default) firewall in your template. Remember that if your client VM is a domain member settings can be overridden by domain policies or site policies.

VW_Firewall

  • If you can’t get a connection with to the available desktop presented in the View client, first check the View server broker log files. Troubleshooting this is mostly pretty straight forward. If you find a entry in the log like “connection timed out 192.168.1.1:3389” then try to connect the Virtual Machine on the same available network with a RDP Client. If connection with the RDP client is working then you have to look on the View Client side. Always check the firewall(s) settings for closed ports.

Finally all problems were solved and VMware View is up and running perfectly. It was nice to be busy again with some great products of VMware like this one. So Erik as you can read I saved you from a lot of trouble 😉 but I will be honest, It was a pleasure.