Designing for Diskless Virtual Desktops


I received a few interesting question related streaming desktop images via Provisioning Services. The question asks “What is the best option for storing the write cache when the target devices are disk-less?” One question asked about disk-less physical endpoints, while another question asked about virtual machines with no disks assigned.

This was a great question. In fact, we almost always talk about Provisioning Services from the standpoint of having a small, local disk assigned for the write cache and other log files, but you do not require this little disk. So what is the best option? As with all great questions, the answer is “It depends” J Let’s first look at our viable options

Option Benefits Concerns
Local cache on local storage Doesn’t require expensive SAN or shared storage

Doesn’t add network traffic to PVS server

Doesn’t impact PVS system cache

Supports PVS high-availability

Not possible in a diskless scenario

No live migration

Local disks might not support the IO load

Local cache on shared storage Doesn’t add network traffic to PVS server

Doesn’t impact PVS system cache

Live migration supported

Supports PVS high-availability

Requires a SAN or some type of shared storage

Not a good option for physical endpoints due to complexity in configuration

Local RAM Doesn’t require expensive SAN or shared storage

Doesn’t add network traffic to PVS server

Doesn’t impact PVS system cache

Works in diskless scenario

Easy to setup and configure

Supports PVS high-availability

RAM is not cheap

Need to estimate write cache size correctly or risk blue screen of target

No live migration

Server side on Provisioning services server Easy to setup and configure

Doesn’t require SAN or shared storage

Live migration supported

Adds network traffic for PVS server

Negatively impacts PVS scalability due to NIC utilization

No PVS high-availability

Impacts PVS system cache

Local disks might not support the IO load

Server side on shared storage Easy to setup and configure

Live migration supported

Supports PVS high-availability

Requires SAN, NAS or some type of shared storage

Potentially impacts PVS system cache

 

I probably missed some of the benefits and concerns with the options, but hopefully you get the idea. So which do you choose?

  • If you were in a smaller environment, I would end up using server side on Provisioning services. It is easy. It doesn’t cost much. And because the deployment is smaller, it shouldn’t have a major impact on the system cache settings on the Provisioning services server.
  • For larger implementations, you will most likely end up going with server side on shared storage. This will allow you to better optimize the PVS system cache and have a more enterprise-scalable architecture supporting thousands of desktops. Plus, the shared storage is going to be better able to support the IO load of the write cache for your massive numbers of desktops. However, server side on Provisioning services is still viable if you can support the IO load (maybe with SSDs).

Daniel – Lead Architect

Advertisements

3 thoughts on “Designing for Diskless Virtual Desktops”

  1. Hello Daniel,
    Nice post! Just some questions:
    – What is a “server side on PVS/Shared Storage”?
    – What do you consider a “smaller environment” and a “larger environment”?
    Thanks!

    Like

  2. Hi Dan,

    Another great article that should prove very helpful to customers in the planning and design phases of deploying Citrix XenDesktop and/or XenApp.

    For those readers who are planning to follow your advise regarding the placement of device write cache files server-side on shared storage for mid- to large-sized implementations, I’d like to invite them to visit the following website to learn more about how they can take advantage of highly scalable, highly available shared storage: http://www.sanbolic.com/Citrix.htm

    Like

  3. An excellent article and reference guide as well.
    However (and assuming I have understood the config correctly) would the ‘Server side on shared storage’ still impact the PVS server network traffic if clients are still sending their cache to PVS for storage on a SAN?

    Like

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s