Optimizing Citrix XenApp and Citrix XenDesktop on VMWare vSphere

I previously wrote a series of posts about Optimizing XenApp on VMWare.  These posts were taken from REAL WORLD experience with tuning XenApp 4.5 on Windows Server 2003 running on VMWare ESX 3.5.  Obviously, times changes and technology improves.  Also, your frame of reference changes with more deployments and more experience.

Please note: these are my own personal recommendations.  They do not necessarily reflect the views or opinions of GlassHouse, Citrix or VMWare.  So, some updated recommendations:

  • VMWare General:
    • Host:
      • Enable NUMA
      • Enable Hyperthreading
    • Guests (all):
      • Disable Shared Folders
      • Align the Disks
      • Use Transparent Page Sharing
      • Build new, do NOT P2V
  • XenApp
    • Segregate XenApp workloads to dedicated hosts if possible
    • CPU:
      • Do not assign more vCPUs than Physical Cores for XenApp
      • If you over-allocate, monitor closely
    • Memory:
      • Static Page File: 1 X RAM (1.5 is antiquated… KB 2021748)
      • Closely monitor Over commitment – watch for ballooning
      • Design within NUMA architecture if available
      • Consider Reservations or a reserved Resource Pool
    • Scale out, not up… Personal sweet spots:
      • XenApp 6.0+ / 2008 R2 – 4 vCPU & 12 GB RAM
      • XenApp 4.5 / 2003 x86 – 2 vCPU & 4 GB RAM
    • Disable CD-ROM & Floppy (if unused)
    • Networking:
      • Team/aggregate at the host level
      • Static VMs: use VMXNET3 driver
      • Provisioned VMs: use E1000 driver (due to known issues with PVS streaming)
    • Use Thick Provisioned VMDKs
  • XenDesktop (same general recommendation as XenApp, a few differences)
    • Segregate VDI workloads to dedicated hosts if possible
    • CPU:
      • Keep # VDI/Physical Cores at 8 or less (closely monitor ESXTOP)
      • Always assign 2 vCPU (avoid bottlenecks, requirement for multimedia)
    • MEMORY:
      • Static Page, Overcommit at a 4:1 ratio or less (closely monitor actual performance at host and guest levels)
      • Assign 2 GB RAM for light users, 4 GB RAM for heavy users
    • Disable CD-ROM & Floppy (if unused)
    • Use E1000 driver for Provisioned Desktops


Additional References:

Let me know what you think…

This entry was posted in Blog and tagged , , , , , , , , . Bookmark the permalink.

One Response to Optimizing Citrix XenApp and Citrix XenDesktop on VMWare vSphere

  1. Pingback: Optimizing Citrix XenApp and Citrix XenDesktop on VMWare vSphere | | End User Computing | Scoop.it

Leave a Reply

Your email address will not be published. Required fields are marked *