Citrix Provisioning Services (PVS) is a great tool that is what our local Citrix Sales Engineer calls “the Secret Sauce” behind XenDesktop. For those who are new around these parts, PVS is software that allows us to stream an Operating System to a PC, physical or virtual, ESX or Hyper-V or XenServer – anything that can PXE boot pretty much (including Thin Clients!).

Once you’ve made the plunge and start deploying or planning your PVS infrastructure, High Availability and Redundancy is going to be a top concern. Here are a few guidelines to help you plan. Let’s assume we have a single farm, single site, with 2 Provisioning Servers.

Shared storage is your friend with Provisioning Server HA.

vDisk Storage

Ideally, this should be on shared storage. Server should be able to communicate with the SAN/NAS/etc at high speed. Fibre Channel works great here (4Gbps). Alternatively, you can have identical vDisks available via the same drive letter on each of the servers.

Write Cache Location & Storage

The two types of write cache locations that are in play: Stored on PVS Disk and Stored on Client HD (ignore Encryption, it’s not really relevant here). Storing the Write Cache on the Client’s Hard Drive is fastest, and is what I would recommend, as the file is available independent of the provisioning server. Alternatively, you can store the write cache on shared storage that can be accessed by each server so that the target device can continue to function.

TFTP Server

This is the tricky part. The best way to handle this is with hardware load balancers, but for the sake of this article, I’ll give you some “rigging” solutions. You can run the TFTP service on both servers and use “round-robin” settings on your DHCP server. Also, you can use the Bootable Image tool included with PVS to create a Bootable CD that contains the bootstrap file (the same one that it can get via PXE). If you have a NetScaler in your environment, you can use it to ensure HA of TFTP (Thanks Bart Groot Zevert). I’m sure there are other ways as well, feel free to comment with suggestions.

Conclusion

As mentioned before, these are just some guidelines and tips to get you started on the right path. I’ll be more than happy to assist should you need assistance.

5 Responses to Provisioning Server 5.1 High Availability Tips

  1. Nice article. Any reason why write cache stored on target RAM is not in play? It can be limit RAM depending on if using 32bit or 64bit, but is very fast for write cache.

  2. RE: Target Device RAM WC
    It’s really dependent on the environment – we have people with Write Cache files approaching 3GB. I’m not sure too many people want to allocate that much memory to a user when spinning disks are so much cheaper than RAM. But I agree, it is the fastest solution, but I see Target HD being more economical for most deployments.

  3. I you have a netscaler in place, you can also use that to make your TFTP service high available.

  4. Good points Roger. I mainly user Target HD for write cache and have only used memory a few times. It’s fast but if you need a lot of write cache then it’s not the way to go. Nice point on the NetScaler Bart. I forgot about that. It’s nice if they have NetScaler in place but most places i’ve done implementations in use DNS round robin. With the release of NetScaler VPX Express I am going to push more on using NetScaler.

Leave a Reply

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

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>