VDI shops that do not want to use persistent desktops, which assign a specific desktop to each user, must find a way to deliver consistent desktops to users while delivering some level of customization.
With nonperistent desktops, users do not necessarily connect to the same virtual desktops each time they log in. Instead the connection broker links the user's session to any of the virtual desktops available in the virtual desktop pool. To ensure that users have a consistent virtual desktop experience, admins cannot allow one user to make permanent changes to a virtual desktop because a different user will likely use that desktop next. Just imagine the chaos if users had a completely different virtual desktop experience each time they logged in because a previous user made changes to the virtual desktop.
Each VDI vendor has its own way of maintaining the virtual desktop experience, but many design their VDI software to take snapshots of virtual desktops before the desktops go into use. That way, admins can roll back virtual desktops to a pristine state at the end of each user session. Still users likely want some personalization so they can add custom dictionaries to Microsoft Word or include favorites on their web browsers, for example. This is where user environment management comes into play.
User environment management refers to the different methods for managing user-specific settings within a virtual desktop deployment. It helps provide users with the illusion that their virtual desktops are their own. User environment management comes in many different forms, but the roaming profiles native to the Windows operating system are one of the most common.
Why admins must turn to roaming profiles with VDI
In non-VDI settings users' data, including their documents and application settings, is located on their specific devices beneath the %SystemRoot%\Users folder, in a subfolder whose name matches the user's name. These local profiles are not ideal for VDI for two major reasons.
First, if admins allowed Windows to create user profiles specific to individual virtual desktops then users could write persistent data onto their virtual desktops. This doesn't make a lot of sense if admins reset each virtual desktop to a pristine state at the end of each session.
In addition, if a user initiates a session and ends up connecting to a different virtual desktop, Windows won't be able to find the user's existing profile because the profile is stored as a part of the operating system. Windows would therefore create a brand new, empty profile. As a result, the user's VDI experience would vary depending on which virtual desktop he connects to.
Virtual desktop users aren't always happy users, especially if their desktop isn't as fast as they're used to. In this video, Steve Damadeo talks about the most common questions his help desk gets about virtual desktop infrastructure.
Roaming profiles, however, disassociate user profile information from the operating system itself. When a user logs in to a Windows desktop, the operating system checks to see if he has an existing profile, if no profile exists, Windows creates one.
Rather than storing the user profile in the %SystemRoot%\Users folder, roaming profiles live in a centralized location, such as a file server. When a user logs on to a virtual desktop, the desktop downloads his roaming profile to the virtual desktop's operating system. At the end of the user's session, any changes the user makes to his profile are uploaded to the centralized profile repository before the virtual desktop is reset. As a result, the user receives a consistent virtual desktop experience regardless of which virtual desktop he connects to, and he can customize the desktop within the limits IT puts in place.
What other options exist?
Roaming profiles are only one type of user environment management. A number of vendors, including Citrix, VMware and Microsoft as well as Liquidware Labs and Norskale, offer dedicated user environment management software. Such software differs from roaming profiles in that vendors may include features such as analytics engines that monitor security and performance or granular controls for admins to control what users can and cannot do.
Explore some top profile management tools
Take a closer look at Liquidware Labs ProfileUnity
Compare built-in profile management tools