By:Rich Brumpton
While working with a customer on a large VDI architecture recently we were comparing the required storage across several vendors and after looking at the proposed solutions from several I was asked the question:
In regard to the configs I’m really surprised at the low number of spindles relative to the IOPS req[uirement]s. Can you please help me understand the PAM a little more?"The short answer is that the PAM can greatly increase performance in an environment that is heavy on small random reads like VDI, but that is not the only technology that NetApp uses to help optimize the storage of VDI.
There are a few things working in NetApp’s favor to keep the spindle count low. To begin with on the NetApp system one or more large pools of disks (Aggregates) are created that allow thinly provisioned volumes to be created that are striped across the entire aggregate. These volumes then contain one or more LUNs, more on this part later.
The Raid Groups that make up these aggregates use RAID-DP which offers double disk failure protection like RAID6, but because the NetApp storage system always writes full stripes and never has to do the read, read, write, write operation that gives RAID5 it’s 4:1 overhead and a 6:1 overhead for RAID6. In fact since NetApp can write it’s metadata anywhere in the file system the RAID write overhead is 1:1, in fact the only place I have to calculate overhead on RAID-DP is for IOPS (I=P(N-2), where I is total raid group IOPS, P is single disk IOPS and N is the number of disks in the array) to account for parity disks.
Other technologies on the NetApp storage system combine to reduce the physical size of the working set including thin cloning and primary storage deduplication.
The first of these, thin cloning, allows a snapshot of a single master copy of a volume (FlexClone) or LUN (LUN clone) to be presented read-write to hosts. This appears to hosts as a separate full copy of the data, but in fact only the deltas between the old and new blocks are written to disk, all the common OS components that make up a good portion of the working set for VDI actually remain in the same, single location. This technology can be used using the NetApp Rapid Cloning Utility (RCU) for VMware View or when using Citrix XenServer as the host for a XenDesktop machine. In either case this allows the working set to be decreased from N*W to W+((N-1)*D)W (where N is the number of clones, W is the working set size, and D is the delta percent of change from the master.)
Data Deduplication also plays a role when more than one VM is stored in the same volume. This feature looks through a volume for duplicate data blocks and removes all but a master copy and places metadata pointers back to this copy for each other copy of the block. Like thin cloning this feature is available because of NetApp’s ability to store metadata anywhere within the file system and creating pointers is nothing unusual given the structure of the WAFL file system. In a VDI scenario Data Dedupe helps contain the size of the deltas between VM’s by removing duplicate blocks created by OS or software updates, but this is a batch process so short lived data structures may not benefit.
So now that we have reduced the size of the working set, let’s talk about the PAM card which is 16GB of DRAM on a PCI-E card coupled with FlexScale software to act as an intelligent read cache. For folks from the server world the PAM operates like an L2 cache on a processor as an accelerator between the controller RAM and data on disks. There are 2 modes that are interesting to us in this discussion, default mode and metadata-only mode. In default mode the PAM card caches ONLY small random reads and metadata. This allows a large majority of the pointers used for deduplication and thin cloning to be stored very close to RAM which will already be used to cache the MOST frequently used data and metadata. If thin cloning and deduplication are used intelligently with an optimized configuration this mode can be used to retain a large number of the random read blocks in the PAM, greatly reducing the amount of time that users have to wait for blocks to come all the way from disk. This is the mode that I would use with VMware View or persistent XenDesktop VM’s and this is the mode that helps the most with events like boot-storms in View and persistent VDI scenarios. Metadata-only mode is used when there is a large working set and there is no way that it can fit enough of it in the PAM to avoid simply churning through the cached data. Metadata is cached in the PAM while data blocks are not allowing instant access to metadata blocks and a shorter access time for data stored on disk. This mode is the one I would use with XenDesktop in which each VM can be configured to store its own Provisioning Services write cache on the SAN, but this cache will be unique to each VM.
RAID-DP: http://media.netapp.com/documents/wp_3298.pdf
VMware RCU: http://blogs.netapp.com/virtualization/2009/03/netapp-and-vmware-view-vdi-best-practices-for-solution-architecture-deployment-and-management-part-8.html
Deduplication: http://media.netapp.com/documents/tr-3505.pdf
XenDesktop on NetApp: http://www.citrix.com/site/resources/dynamic/partnerDocs/CitrixXD2.0withNetAppStoragePilotDeploymentOverview.pdf
PAM: http://blogs.netapp.com/storage_nuts_n_bolts/2008/08/performance-acc.html
Read more!
By:Rick Rohne
The old trick of using TS Profiles no longer applies to VDI. This is effectivly due to the fact that the user logs onto the Console and not a Terminal Server Session (Event though the connection is made through an RDP or ICA connection). A user's profile consists of registry settings (stored in HKEY_CURRENT_USER) along with the files and folders (favorites, My Documents, cookies, Application Data etc).
Let's explore some of the ways to Accomplish Profile Management in a VDI session.
Appsense User Environment Manager
For virtualized desktop environments, user environment management represents a fundamental change in the way the corporate desktop is constructed, delivered and managed.
The user personality is decoupled from the operating system and applications, managed independently and applied into a desktop as needed without scripting, group policies or use of cumbersome user profiles - regardless of how the desktop is being delivered.
User environment management takes a standardized desktop and applies all aspects of the user to that desktop when the user accesses it. Such aspects of the user not only include personal preferences, such as desktop look and feel, but also company-defined settings such as drive mappings, default printer and application access. This Policy and Personalization data is used in combination to turn a standard desktop into a personal, compliant, managed and accepted user environment.
User environment management also allows the migration of user data from a Physical PC to a Central Store. The user can then be moved to a standardized virtual desktop where the users data is dynamically applied, recreating the PC environment. Personalization changes are persisted between virtual desktop sessions ensuring the user always has a familiar, personal experience.
User Environment Manager is robust and can be used to manage the user environment on All VDI and Terminal Server solutions.
More information can be found at: There's and AppSense for that!
Citrix Profile Manager
User Profile Manager is a Windows service that monitors the logon and logoff process. That means any user that logs onto a Windows environment with this service will have their profile managed by User Profile Manager. The service receives its configuration defining which users and what to manage in these users' profiles through a Group Policy Object (GPO) or an INI file.
Upon User logon, if the user is a member of the defined group, the users settings will be syncronized with the central store. The user's settings (DAT files, files and folders) are all centrally stored on a central CIFS share or in their defined HOME directory. The user now has all their settings and profile data (as defined in the configuration) following them reliably and consistently throughout their sessions.
Upon logoff, any changes within the profile will be copied back to the central share, files and folders that have not changed are not coppied thus allowing a quick logoff.
You can still apply Folder redirection policies such as the Documents, and AppData Folders to eliminate these files from syncronizing within the profile.
VMWare View User Data Disk
An Administrator has the option to create a seperate user data disk for each virtual desktop when leveraging VMware View Composer and linked clones to provision desktops.
A user data disk is a separate storage location attached to the desktop image upon creation. The user data disk redirects the user’s profile and data to a second virtual disk when the user logs onto the virtual desktop, ensuring that each user’s personal settings and data are restored during boot time. This can be useful, after a master image has been updated, to restore the user profile data and maintain continuity.
The User data, however, is not stored centrally, therefore if the virtual machine is powered off, the end user will not have access to the data. The Administrator should take care to preserve the user data and profiles stored on this disk in case they are needed after the desktop is removed.
Server 2008 Policies with Windows Vista or Windows 7
In the past (Windows XP, and Server 2003 or below), the GPO's for user profiles was defined on the User account or you had to implement TS User Profiles for a Windows Terminal Server. Since a VDI session is not considered a Terminal Server session, the TS Profile Path GPO no longer works and you must resort to third party profile management such as the ones listed above.
Windows Vista made numerous changes with how user profiles work. The new policy settings for user profiles exist under Computer Configuration\Administrative Templates\System\User Profiles. This policy setting only applies to computers running Windows Server 2008 or Windows Vista. This policy works similar to the way TS Profiles worked in the past, in that the profile is stored on a central share and copied to and from the central share to the machine that the user is logging onto. While TS Profiles and User Roaming Profiles has been problematic in the past, Windows Vista and Windows Server 2008 have implemented enhancements to both the way the roaming profile is treated and the way that Folder redirection works.
To understand the new Windows Vista and Server 2008 changes, click here!

Looking for more information on AppSense
Read more!
Microsoft Virtualization, Citrix, XENServer, Storage, iscsi, Exchange, Virtual Desktops, XENDesktop, APPSense, Netscaler, Virtual Storage, VM, Unified Comminications, Cisco, Server Virtualization, Thin client, Server Based Computing, SBC, Application Delivery controllers, System Center, SCCM, SCVMM, SCOM, VMware, VSphere, Virtual Storage, Cloud Computing, Provisioning Server, Hypervisor, Client Hypervisor.