Pages

Friday, January 17, 2014

VMware Horizon View 5.3 published Windows XP virtual desktop’s resolution does not expand to full screen in PCoIP

It’s been a while since I’ve worked with Windows XP virtual desktops but recently had to create a small linked-clone pool in VMware Horizon View 5.3 because a client had an application that was only compatible with IE 6.  I proceeded to do as I usually would to prepare the Windows XP as a master template by installing the VMware View agent then created the automated linked clone pool.  The provisioning finished as expected with the linked clone available for connecting but as I connected via the PCoIP protocol, I noticed that the resolution would not expand to the full monitor screen so I am presented with the following view of the desktop surrounded by space that is filled in as black:

image

image

Connecting via RDP works fine where the full screen is displayed properly with no black box.

The Remote Display Protocol settings I had for the desktop pool were as follows:

Max number of monitors: 2

Max resolution of any one monitor: 1920 x 1200

image

The dual monitor resolution I was using was set to 1920 x 1080:

image

As discovered in one of my previous posts:

Connecting to VMware View 5.1.2 desktop via PCoIP displays a black screen when in full screen
http://terenceluk.blogspot.com/2013/11/connecting-to-vmware-view-512-desktop.html

The solution to my problem was to increase the number of monitors and resolution of any monitor as such:

Max number of monitors: 4

Max resolution of any one monitor: 2560 x 1600

image

A bit strange as the previous setting had a resolution that was larger than the resolution of the monitors I was using but this correct the problem so that the projected desktop would fill in the full screen.

Thursday, January 16, 2014

Attempting to assign a new snapshot to a VMware Horizon View 5.3 pool throws the error: “Server Error” with “Unknown” description after upgrading to Horizon View 5.3

I ran into an interesting problem the other day while trying to assign an updated snapshot to a linked clone pool after upgrading an environment from VMware View 5.1.2 to VMware Horizon View 5.3 where I would receive the following error after assigning the new snapshot:

image

… then clicking on the OK button:

Server Error

Unknown

image

What was strange was that out of the 8 linked clone pools, 5 would complete successfully while the other 3 wouldn’t.  Logs in the DriveLetter:ProgramData\VMware\VDM\logs folder on the View Connection server and the Composer logs on the vCenter where the service was installed did not contain any errors either.

After restarting the Composer service without any luck, I realized that the View Administrator GUI I’ve been looking at did not appear to be the Horizon View theme with the blue background so I went ahead and closed the browser, then relaunched it to log back in.  Upon landing onto the login page, I immediately noticed that the theme was now Horizon View 5.3 with the blue background so I proceeded to log in and was then able to assign the new snapshots to the 3 problematic pools:

image

I’m not exactly sure how this happened as this couldn’t have been a situation where I updated the View Connection server without re-logging back in as my session would have been invalid after an upgrade.  Since searching for the string above did not return any useful results, I hope this post would be able to help anyone who may come across the same behavior during or after an upgrade.

Tuesday, January 14, 2014

Notes on Citrix XenDesktop 5.6 performance testing with various latency and bandwidth settings

Before I begin, I’d like to state that this post is meant to be something I can quickly reference to in the future and they are just my observations from working with a colleague to test Citrix XenDesktop 5.6 through a WAN emulator and thin client.  I can’t fully guarantee the accuracy of the tests but what I can say is that we tried our best to build the test pod as close to production environment we’ve been having issues with as possible.

Test Pod Components

XenDesktop Version: 5.6 DDCs x 2

VDA Agent Version: 5.6.300

Desktops: Dedicated desktops with Windows 7, 2 x vCPU, 8GB RAM

Storage: 3Par SAN with 20+ SAS drives

Hypervisor: vSphere 5.1 U1

WAN Emulator: WANem

Riverbed: Virtual Appliance

Firewall:  Stonegate

Monitors: 3 x 24” monitors at 2560x1440

Thin Client: HP t610 with Windows 7 Embedded

--------------------------------------------------------------------------------------------------------------------------------------------------------------------

Here are the observations:

  • We noticed through our testing is that the highest latency we could set before noticeable typing delay by either a word or half a word was 100ms. 
  • 100ms was definitely workable as the slight delay would mostly be noticeable by faster typers
  • 150ms would cause one to half a word typing delay for users who type fast while slower ones would notice a few characters.  Either way, while 150ms was still workable, most users would notice typing delays.
  • 100ms doesn’t affect the mouse cursor in the regular VDI as much but it does affect the cursor in RDP sessions. 
  • Any latency above 150ms causes the mouse movement delays extremely noticeable in RDP sessions where it can be annoying.
  • In terms of bandwidth, we noticed we could push the Mbps usage upwards to 8Mbps by simply opening up a browser, navigate to www.flickr.com, then scroll through a page full of images.
  • We also noticed that we could push the Mbps usage upwards to 10.2Mbps if we open up Google Earth (the VDA has the optimization pack for DirectX) and navigate around complex terrain such as Paris’ housing neighborhood.
  • General usage appears to require around 2 to 5Mbps depending on what is done in the desktop.
  • All traffic are spiky in nature so bandwidth usage is not pinned to a high usage rate.
  • Riverbed’s non multi-stream optimization can provide reductions but only in a limited capacity.

We haven’t actually done testing with multi-stream where we can prioritize traffic but once we do, I’ll try to remember to update this post.

Adobe Reader prints PDFs very small on the top left hand corner or prints an error

I ran into an interesting issue the other day where a client told me that printing PDFs with Adobe Reader would either print extremely small on the top left hand corner (1” x 2” or 1” x 1.5”) of a page or print the following error on the actual printout:

ERROR: invalidfont

OFFENDING COMMAND: show

STACK:

(                   )

What I discovered was that these issues appear to be related to the Adobe Reader being unable to send the format of the text or the font of the text to the printer.  The workaround that appears to fix this issue is to adjust the Advanced settings in the print menu as such:

clip_image002

clip_image002[4]clip_image002[6]

After adjusting these settings, the printer should be able to correctly print out the document.

Outlook Profile continues to get created by Microsoft Office Customization Tool configuration even though Microsoft Office 2010/2013 has been reinstalled

I’ve recently been asked to look at an issue where a previous install of Microsoft Office 2013 with customizations such as the following were made:

image

… but a decision was made afterwards that these should be removed so the administrator would uninstall the installation, modify the MSP file, reinstall but noticed that Outlook would continue to automatically create a profile as defined in the previous installation.

The reason for this behavior is actually quite simple and that’s because OCT actually creates a custom15.prf (or 14 for Office 2010) within the Microsoft Office directory which contains the customizations for the Outlook profile creation:

32-Bit Office:  C:\Program Files (x86)\Microsoft Office

64-Bit Office:  C:\Program Files\Microsoft Office

File name:  custom15.prf

clip_image001

The PRF file is actually a simple text file that you can open with Notepad to browse the customizations as shown in the following screenshot:

clip_image001[4]

clip_image001[6]clip_image001[8]

As most would have probably guessed, the way around this is to either delete the whole directly after Office has been uninstalled or simply delete the PRF file.

Providing Remote Desktop Web Access (RD Web Access) for Mac OS X clients

As many administrations probably know, the RDC (Remote Desktop Connection) for Mac bundled with Office 2011:

image

… does not support the RD Gateway Server Settings feature the Windows RDC client provides:

image

This has been a problem quite a few of the clients I manage who uses Remote Desktop Web Access (RD Web Access) for remote access because some of the users use Mac OS X laptops. There were a few 3rd party applications available but sometimes the added cost or having to manage another application wasn’t ideal so I’ve been extremely excited when I recently realized that Microsoft has released a new RDC client (version 8.0.3 – Updated December 11, 2013) for Macs that now support RD Gateway Server Settings:

image

image

image image

image image

Definitely good news for all the administrators out there who have had issues providing remote access to users that use a Mac and does not run Windows in parallel.  Now if only there was a solution for Macs to access remotely published applications through the webpage portal…

Saturday, January 11, 2014

Installing VMware vSphere Replication Appliance 5.5

I recently had to deploy a VMware vSphere Replication Appliance version 5.5 and since I had to screenshot the process for documentation purposes, I thought I’d write a blog post in case anyone is interested in seeing what the process looks like.

Deploying vSphere Replication Appliance

Begin by downloading either the ZIP or ISO from the VMware download section and be aware that the ISO is not bootable as the appliance is deployed via an OVF file.  The contents of the ISO whether extracted or mounted contains the following files and folders:

image

The folder we’re interested in is the bin folder which contains 2 ovf files:

  • vSphere_Replication_AddOn_OVF10.ovf
  • vSphere_Replication_OVF10.ovf

The ovf file with AddOn in the name is used in an SRM deployment and the one without is for standalone deployments.  For the purpose of this demonstration, I’ll be deploying a standalone appliance without SRM so the ovf I’ll be using is vSphere_Replication_OVF10.ovf.

Log onto the VMware vSphere Web Client:

image

Note that the VMware vSphere Replication Administration deployment guide found here:
http://pubs.vmware.com/vsphere-55/topic/com.vmware.ICbase/PDF/vsphere-replication-55-admin.pdf

… clearly indicates on page 27 that you need to use the VMware vSphere Web Client to deploy the appliance:

image 

Once logged into vCenter, click on the vCenter node on the left hand pane:

image

Then click on the vCenter Servers node selecting the vCenter that you will be deploying the appliance:

image

Proceed by clicking on the Manage tab:

image

Under Settings then Advanced Settings, scroll down to confirm that the VirtualCenter.FQDN is set properly:

image

With this confirmed, navigate back out to the vCenter Home view and click on Hosts and Clusters:

image

Expand the Datacenter containing the cluster that you would like to deploy the appliance then right click on the cluster and select Deploy OVF Template…:

image

You will then be prompted to download and install the Client Integration Plug-in:

image

Proceed with downloading and installing the plug in, close the browser and log back into vCenter and repeat the steps above to deploy the OVF:

image

image 

image

Continue through the wizard:

image

Accept the EULA:

image

Provide a name for the appliance in the Name field and select the folder you would like to place the appliance:

image

Select the datastore that you would like to store the appliance:

image

Depending on your environment, you can choose either to use DHCP or statically assign an IP address to the appliance:

image

I’m going to use static so I’ve selected Static - Manual  for the IP allocation option which will then allow me to set the DNS servers, Gateway, and Netmask:

image

Continue by entering a password for the appliance’s root account and configure a Management Network IP address:

image

Be aware of the vService bindings information:

image

Review the details to the configuration settings that were entered and click Finish to begin the OVF deployment:

image

Note the status of the OVF deployment on the right hand Recent Tasks pane:

image

image image

Once the deployment is complete, you should then see the new appliance under the cluster:

image

Continue by powering on the appliance:

image

image

… and ensure that the appliance successfully powers on:

image

Once the appliance has successfully booted up, you can then browse to it via https://<ipAddress>:5480 and log in with the root account:

image image

Most of the settings configuration pertains to the appliance itself (i.e. network):

image

One of the settings I always configure after the deployment is the Network –> Address where you could update the host name and add another DNS server entry:

image

Once you’ve configured the additional settings required for the replication appliance, proceed by shutting down the vSphere Web Client and re-launching as you will not see the vSphere Replication icon in the Home screen until you do:

image image

Once you’ve re-logged into the vSphere Web Client with the vSphere Replication icon now present, continue and click on it:

image

Click on the Home tab to ensure that there is a green check mark beside the appliance then click on the Manage button:

image

Verify that there is a green check mark beside the Availability field:

image

At this point, the appliance at this site is ready to be used for local replication/backup.  Continue by deploying another appliance with the same steps above to an alternate site if replicating VMs to another site is required.

Setting up replication to another site

Once another replication appliance has been set up at another site, you can add the 2nd site as a target site to replicate to.  Being by navigating to the vSphere Replication section in the vSphere Web Client, select the Target Sites node and click on the little server icon to add a target site:

image

Fill in the remote vCenter server name and enter credentials with permissions to connect:

image

Since I’m using self-signed certificates in the environment, I will receive the following warning for the certificate presented.  Proceed by selecting Yes to trust the certificate and connect:

image

image

Once the connection is successfully established, you will see the remote vCenter listed in the Target Sites:

image

With the target site added, proceed with navigating to either the Hosts and Clusters or VMs and Templates view, right click on a virtual machine and select vSphere Replication Actions then Configure Replication:

image

Select the target vCenter (where you’re replicating to) from the list:

image

Unless you have more than 1 vSphere Replication Appliance in the target vCenter, the auto assign should pick up the one in the target site as shown below:

image

Select the target datastore you would like the replicated copy of the VM to be stored:

image

Note that checking the Advanced disk configuration check box gives you the ability to configure additional options such as disk format and VM Storage Policy:

image image

The next screen allows you to choose the quiescing method which is either none or MS Shadow Copy Services (VSS):

image image

The last configurable screen allows you to set the RPO (basically the frequency of replication) and the amount of instances to keep (how many different point in time instances you can recover with):

image

Review the settings configured and click Finish to complete the configuration:

image

Browsing the remote datastore should almost instantly show that a folder for the replicated VM is created with a new vmdk created:

image

If you’d like to check the status of the replication, simply navigate to the vCenter instance of the source site, click Monitor –> vSphere Replication –> Outgoing Replications:

image

Selecting the replicated VM will display more information at the bottom of the window:

image