donderdag, maart 01, 2007

VMware: Best practices for deploying Citrix on ESX

First and foremost: this tuning list is my own experience and the experience of several users on the VMware forum. Your mileage may vary.

The goods:

  • Virtual Infrastructure 3
  • Windows 2003 Std (or Enterprise) Edition R2 (x86, not x64)
  • Citrix Presentation Server 4.0 (yes, I know, the old one ;))

The tips:

  • First this: it all depends on the applications used! Context switches is the key here...
  • Use Windows 2003, not Windows 2000
  • Don’t P2V your servers, but use clean templates
  • Make sure the correct HAL (single or multi) is installed in the virtual machine. Otherwise, your vCPU will spike.
  • Always assign 1vCPU. If necessary, add a 2nd vCPU. Do not use 4 vCPUs!
  • Use 2 GB to start. Scale up to +-4 GB of vRAM if necessary
  • Use 1 .vmdk for your system partition (C:\ or other remapped drive letter) and 1 separate .vmdk for your program files.
  • Put the page file on the 2nd .vmdk
  • Important: disconnect any .iso file in your virtual CD-Rom
  • Use roaming profiles and cleanup your profiles at logoff
  • Disable sound for your published apps
  • Install the UPH service (download it here)
  • User sessions: for me, 30 users on a VM is the sweet spot. Do not expect to get as many users on it as on a physical box!
  • Scale out, not up. A major advantage of VM is to clone/NewSID/sysprep existing servers and put them into your existing Citrix farm. Just stop & disable your IMA service, clean up your RMLocalDB (if you use enterprise) and NewSid the thing. Refer to this support article for more info.
  • Use dual core or quad core systems. This because ESX will have more CPU to schedule its vCPUs on.
  • Don’t ever use a 2 vCPU Citrix virtual machine in a 2 pCPU physical machine!
  • Do not install the memory ballooning driver while installing the VMware Tools
  • Do not use a complete installation Vmware tools: there is an issue with roaming profiles and the shared folders component. See my previous article for more info.
  • Disable COM ports, hyperthreading, visual effects & use speedscreen technology where possible.
  • Use snapshots when installing applications or patching your servers (yes! With VMware you can do this!). In case of disaster, you can still revert to the original working server without using backups. Make sure all snapshots are removed ASAP when finished!
  • Always check that there are no snapshot leftovers (f.e. the infamous _VCB-BACKUP_ when using VCB)
  • Don’t forget you can use DRS rules to run your citrix servers on separate physical hosts.
  • Check out this vmworld 2006 presentation
  • And last but not least: do not forget to read ESX's (excellent) performance tuning white paper.

4 opmerkingen:

butlimous zei

Thanks for the nice post!

Free PS3

kida zei

Thanks for the info. I'm now doing test on IBM bladeservers HS20 and 21 were I need to compare Citrix on VI3 vs ESX 2.5.4 vs HS 20 VS HS21 vs baremetal server.

This to convince the management to migrate to VI3.

I'll keep your tips in mind.

Greetz,

Kida ( Axxes Antwerp)

astorrs zei

"Put the page file on the 2nd .vmdk"

Why? Wouldn't it still be on the same physical disks anyway...

Gani zei

We are currently trying to put WTS on virtual machines running on ESX 2.5 - Any pointers for us?

Gani Bhagavathula