One of the most important aspects of any end-user computing environment is user experience, and a big part of user experience is managing the user’s Windows and application preferences. This is especially true in non-persistent environments and published application environments where the user may not log into the same machine each time.
So why is this important? A big part of a user’s experience on any desktop is maintaining their customizations. Users invest time into personalizing their environment by setting a desktop background, creating an Outlook signature, or configuring the applications to connect to the correct datasets, and the ability to retain these settings make users more productive because they don’t have to recreate these every time they log in or open the application.
User settings portability is nothing new. Microsoft Roaming Profiles have been around for a long time. But Roaming Profiles also have limitations, such as casting a large net by moving the entire profile (or the App Data roaming folder on newer versions of Windows) or being tied to specific versions of Windows.
VMware User Environment Manager, or UEM for short, is one of a few 3rd-party user environment management tools that can provide a lighter-weight solution than Roaming Profiles. UEM can manage both the user’s personalization of the environment by capturing Windows and application settings as well as apply settings to the desktop or RDSH session based on the user’s context. This can include things like setting up network drives and printers, Horizon Smart Policies to control various Horizon features, and acting as a Group Policy replacement for per-user settings.
There are four main components for VMware UEM. The components are:
- UEM Management Console – The central console for managing the UEM configuration
- UEM Agent – The local agent installed on the virtual desktop, RDSH server, or physical machine
- Configuration File Share – Network File Share where UEM configuration data is stored
- User Data File Share – Network File Share where user data is stored. Depending on the environment and the options used, this can be multiple file shares.
The UEM Console is the central management tool for UEM. The console does not require a database, and anything that is configured in the console is saved as a text file on the configuration file share. The agent consumes these configuration files from the configuration share during logon and logoff, and it saves the application or Windows settings configuration when the application is closed or when the user logs off, and it stores them on the user data share as a ZIP file.
The UEM Agent also includes a few other optional tools. These are a Self-Service Tool, which allows users to restore application configurations from a backup, and an Application Migration Tool. The Application Migration Tool allows UEM to convert settings from one version of an application to another when the vendor uses different registry keys and AppData folders for different versions. Microsoft Office is the primary use case for this feature, although other applications may require it as well.
UEM also includes a couple of additional tools to assist administrators with maintaining environment. The first of these tools is the Application Profiler Tool. This tool runs on a desktop or an RDSH Server in lieu of the UEM Agent. Administrators can use this tool to create UEM profiles for applications, and it does this by running the application and tracking where the application writes to. It can also be used to create default settings that are applied to an application when a user launches it, and this can be used to reduce the amount of time it takes to get users applications configured for the first time.
The other support tool is the Help Desk support tool. The Helpdesk support tool allows helpdesk agents or other IT support to restore a backup of a user settings archive.
Planning for a UEM Deployment
There are a couple of questions you need to ask when deploying UEM.
- How many configuration shares will I have, and where will they be placed? – In multisite environments, I may need multiple configuration shares so the configs are placed near the desktop environments.
- How many user data shares will I need, and where will they be placed? – This is another factor in multi-site environments. It is also a factor in how I design my overall user data file structure if I’m using other features like folder redirection. Do I want to keep all my user data together to make it easier to manage and back up, or do I want to place it on multiple file shares.
- Will I be using file replication technology? What replication technology will be used? – A third consideration for multi-site environments. How am I replicating my data between sites?
- What URL/Name will be used to access the shares? – Will some sort of global namespace, like a DFS Namespace, be used to provide a single name for accessing the shares? Or will each server be accessed individually? This can have some implications around configuring Group Policy and how users are referred to the nearest file server.
- Where will I run the management console? Who will have access to it?
- Will I configure UEM to create backup copies of user settings? How many backup copies will be created?
These are the main questions that come up from an infrastructure and architecture perspective, and they influence how the UEM file shares and Group Policy objects will be configured.
Since UEM does not require a database, and it does not actively use files on a network share, planning for multisite deployments is relatively straight forward.
In the next post, I’ll talk about deploying the UEM supporting infrastructure.