AppSense Environment Manager: Manage User Profiles Like a Pro

User-profile management can be especially challenging for Windows managers. The default behavior of Windows is to store profiles locally on the user's computer. But there are a couple of problems with this approach. If a user moves to another computer, their profile doesn't follow. Second, if a workstation's hard drive fails, then the user loses all of the profile data that's stored locally. This can include things like Internet Explorer favorites and the preferences that the user has applied to Microsoft Office.

Windows does provide the option of redirecting profiles to a file server. That way, profile data can be backed up, and it becomes centrally accessible regardless of from where the user logs in. Using these roaming profiles can cause another set of problems, though.

When a user logs on, all of the data from his roaming profile must be copied from the server to the user's desktop. If the user has a large profile, the log-in process can take a long time to complete. The same can also be said for the log-off process.

User-profile management can be challenging, so I was excited to take a look at a product called AppSense Environment Manager from AppSense Inc.

Installation In general, installing AppSense Environment Manager is fast and easy. I ran into one minor issue while installing the AppSense Environment Manager Console. The installer initially refused to let me install the console because the Visual C++ SP1 64-Bit Redistributable was missing.

I installed the Visual C++ Redistributable, but I still encountered the same error message. After some digging, I discovered the installer required the Visual C++ 2005 Redistributable, and I had been attempting to install the 2008 version. Once I figured this out, I got past the error without any trouble. I wish that the installer had been more specific as to the required version.

Apart from this minor issue, installation was easy. The AppSense Environment Manager Console,

Personalization Server, Licensing Console and documentation all had to be installed separately, but each installation completed in a matter of seconds, with almost no input required.

Configuration The initial configuration process involves creating an IIS Web site and a SQL Server database, and installing various Windows components that the AppSense Environment Manager depends on. AppSense provides a utility called AppSense Personalization Server Configuration designed to make the configuration process easier. When you initially run this utility, it tells you every way the AppSense Environment Manager is configured incorrectly. At first glance, it seems as though you're going to have to manually address all of these problems yourself. In fact, I started to do exactly that.

On closer inspection, I noticed the configuration utility contains a Run Wizard button. When I ran the wizard, it not only told me what was wrong with my configuration, but asked if I wanted the problems fixed utomatically.

The first time I tried using the wizard to fix my configuration issues, I ran into a problem where the wizard reported an issue with IIS. The wizard claimed to fix the issue, but the next time that I ran the wizard, the problem still existed. Ultimately, I found this issue was caused by a problem with my server. I'd previously used the server as a Distributed File System (DFS)-based file server. Although I had uninstalled the File Server role and all of the DFS components prior to installing the AppSense Environment Manager, something in the server's configuration wouldn't let me configure AppSense Environment Manager correctly. I advise starting with a clean Windows Server installation.

Once I fixed the issue with my server, the wizard seemed to do a good job of fixing my configuration problems. However, it took me a few tries before I realized that the wizard doesn't correct all of the configuration problems at once. Once the prerequisite issues have been corrected, you may have to view and correct Web site issues separately.

I don't understand why the company designed AppSense Personalization Server Configuration this way. I'm happy AppSense provided such a tool and that it can automatically fix any configuration issues that it detects. However, AppSense obviously has the technology to automatically detect and repair configuration problems, so I question why I have to use the configuration utility at all. I think AppSense should have built the configuration checking and remediation process into the Setup wizard so that its customers don't have to go through the process of checking for configuration errors.

Once I tested the AppSense Personalization Server Configuration tool, I was ready to try the AppSense Environment Manager. Unfortunately, there was quite a bit more configuration work to be done before I could use it.

Some of the remaining configuration tasks were expected and relatively intuitive. Even though I installed the licensing component, I still had to provision it with a license. I also had to deploy an agent to each of the desktops that I wanted to manage. Both of these tasks seemed reasonable, and I fully expected to perform them. There were, however, some unexpected and much less intuitive tasks that were required.

One example of such a task was that I had to manually enable user personalization and then export a policy

configuration file to disk. This process created a Windows Installer file that had to run on each desktop to be managed. Apparently, deploying the agent alone wasn't enough. The agent required a configuration file so that it would know how to connect to the personalization server. I also had to export a license and install it on the desktop, even though there was a licensing component running on the server.

AppSense does provide a decent set of documentation. The instruction manual for AppSense Environment Manager is nearly 200 pages long. Still, given the size of the instruction manual and the tedious nature of the initial configuration process, I think AppSense customers could benefit tremendously if the company took the time to create a quick-start guide.

[Click on image for larger view.]

In AppSense Environment Manager, you must define the applications that you want to manage.

Getting StartedOnce I got past the various configuration issues, AppSense Environment Manager worked exactly as advertised. The product requires you to define the applications that you want to manage. In AppSense speak, managing an application means redirecting the user's profile information for that application into the AppSense Environment Manager database.

Just as AppSense Environment Manager allows you to define applications by category, it also allows you to create groups of users, which are referred to as Personalization Groups. You can perform personalization analysis and customizations on a per-group or on a per-user basis. For example, when I right-clicked on the Default User container and selected the Personalization Analysis option from the shortcut menu, I was taken to a screen that allowed me to tell at a glance how much disk space each of the group's users was consuming with his personalization data.

As I'm sure you probably know, some applications store profile data in the registry, while other applications place configuration files within the user's profile directory. As such, when you tell AppSense Environment Manager to manage an application, it intercepts all of the registry entries related to the application, as well as any files that the application places in the user's profile directory. These files and registry entries are stored in the AppSense Environment Manager database rather than in Windows. As such, it's possible to perform modifications directly through the product's console.

Product with a PurposeAppSense Environment Manager is licensed at $67 per named user. Recognizing that users can sometimes have more than one concurrent connection, AppSense has broken away from the traditional licensing model and adopted the named-user model instead, as it doesn't penalize users who use multiple connections. As an alternative, AppSense offers per-server licensing at $1,695 per server.

In spite of the difficulties I had getting AppSense Environment Manager up and running, I believe it's a solid product. My initial difficulties were related to problems that were specific to my test server, not to the AppSense software. AppSense Environment Manager offers real value for any organization that has had difficulties in managing user profiles.