I used Citrix Desktop Transformation Accelerator today. This is a great tool to guide you through access, design, implement and rollout phases. One thing caught my eyes is the diagram below. SAN (iSCSI and FCP) has 75% of the deployment. Let’s have a discussion on which protocol we should use, NFS, iSCSI or FCP?
First, loud and clear: NFS, iSCSI and FCP has very similar performance within 7% margin. For more information, you can get from NetApp TR-3697. So our discussion is more focused on easy management and cost efficiency.
The diagram below shows the preferred storage protocols for XenDesktop with provisioning server’s deployment. Virtual desktop solution covers delivering OS, personal applications ( instant messages, Pandora for music), Corporate apps( MS office), and managing user profiles and user data.
Using PVS to provision OS, you need a vDisk ( the master image) and the write cache for each VM. vDisk is read-only and shared by VMs. It maybe a 20GB Windows 7 image. Write Cache is per VM per write cache file. Write cache contains each VM’s unique session data ( log files, temp files) and gets flushed every time you reboot the VM.
vDisk can be hosted in a CIFS SMB share or a SAN LUN. The key is to enable PVS windows caching. So PVS only needs to read vDisk from storage once and store vDisk in PVS RAM. This improves performance and scalability on PVS. CIFS is easy to use and you only need to do vDisk update once.
I recommend write cache size around 5GB -10GB. The size depends on how often you reboot the VM and what applications run on the VM. As you may know, NFS is default thin provisioning. For example, user A uses 1 GB write cache and user B uses 3 GB, the total storage consume on storage is 1 GB + 3 GB = 4 GB. It is not 10GB or 20 GB. Thin provisioning only takes the space contains data. Thin provisioning gives the flexibility and space efficiency to the users. You can generously give each user 10Gb and they can share happily. For Hyper-V deployment, you can use SAN LUN to host write cache. For example, you can create 1TB LUN and host 200VMs. The problem with SAN LUN is the management and cost. It is easy to create a NFS share to host thousands of VMs without creating hundreds LUN for the large scaled VDI.
In Xendesktop 5.6, Citrix introduced personal vDisk to store personal installed application. This feature enable desktop administrator to maintain one desktop image but give the users flexibility to install personal applications. Same concept like write cache, easy management and space efficiency, NFS is the preferred protocol. For more information on Pvdisk, you can read my friend Neil Glick ‘s blog on PvDisk.
User data and user profile is best stored at a CIFS share. The best way to manage user data is to centralize it. Get deduplication to save space, back them up by scheduled snapshot and snapmirror to the DR site.
Next blog, I plan to talk about virtual desktop sizing.