I often ask my IT audiences when I speak at events "What is our purpose?" In other words, why do IT people do what they do and get paid for it? The answer is simpler than most people try to make it. Our primary purpose is to support end-user productivity. If we fail at that, then nothing else we do would be of any value and we would be out of jobs. I will admit there is a secondary category that is protecting confidential data (another thing Symantec is really good at). But that would also be moot if there was nothing of value worth protecting.
So what do users need to be productive, and how do we make sure that they have it? I mentioned in the last blog that "the desktop (virtual or otherwise) is the work environment, not the work itself." Think of the desktop as an office you enter to do your work. You want a comfortable chair, good lighting etc., but if you didn't bring your brief case and a pencil (remember those?), you wouldn't have anything to do and wouldn't be able to create value. So the desktop itself is not the answer. Although we have decisions to make about what kind of desktop is the most appropriate for our users in call centers, on the road, or in the corporate office, it really is the STUFF that is populated INTO those environments that is used to create value. I'll say that applications top the list of valuable assets. But there are also user customizations and settings (also called profiles) and the data itself. All of this stuff that has to be added into the desktop (or carried into an office) constitutes a user's Workspace.
If you have all of your stuff, your customized workspace, then you can get your job done whether you are in a high-rise building, your home, a park, or another country. In a traditional distributed client system, these elements may be irretrievably jumbled in with the desktop itself in the form of installed applications and configurations. This will be true for straight VDI as well, since this just relocates the distributed desktop to the datacenter. But functionally, the workspace components are separate from the desktop. When virtualization is used to break these items out to be managed, configured and distributed independently, these technologies fall into a separate category called Endpoint Virtualization. So what is this stuff and why is virtualizing it a good thing?
Components of the User Workspace
Workspace components come in three basic categories: applications, profiles, and data. Traditionally, data has been the center of attention because this is where the intellectual property is contained. And due to the discrete nature of most data files, there are many ways available to secure, protect, encrypt, backup and archive data. The more important the data, the more likely it is to be virtualized, or located in the datacenter and represented on the desktop by a link to a mapped network drive. Profiles is a more nebulous category, but can include everything from wallpaper and desktop icons to application toolbar configurations to email server settings. Some virtual profile solutions encompass the user's data as well. Virtualizing profiles became a bigger deal with the introduction of non-persistent virtual desktops because every time a user logs in, they get a fresh common desktop image, and virtualizing the profile allows the previous customizations to be saved and carried over to the new session, making the experience more seamless for the users.
The last workspace category is the applications. Applications are problematic because most are designed to be installed. Especially in a Windows environment, installing an application causes irreversible changes to an operating system and registry. Unlike data, an application cannot simply be copied over to a desktop and run. Because applications have gotten so complex, and in many cases they require just the right environment, OS version, specific middleware applications, and reject even the existence of some other applications, especially different versions of the same application, support costs and helpdesk costs have gone up with that complexity. A great deal of pre-deployment testing must be completed to make sure that each new application is compatible with all combinations of pre-existing applications. And getting these applications to transfer over to a new operating system, like Windows 7, is an even bigger headache. Application Virtualization was created to solve these problems.
Virtualizing applications is similar to virtualizing desktops and servers in that the application is provided an environment to operate that is abstracted from the underlying systems, providing greater flexibility and less system dependence. A virtualized application does not have to be installed into an operating system. There are different technologies to accomplish this, but typically, the virtualized application comes in a new kind of package that may come in a single file, and once available on the target system, runs as if it were installed without altering the operating system at all. Most application virtualization technologies also reduce or eliminate the potential conflicts between applications as well, often reducing helpdesk calls and providing more stable operating systems.
Since there are numerous approaches and technologies to virtualize applications, each with their preferred use cases, advantages and limitations, I will leave a more thorough discussion to a later installment. But I will first point out another incarnation of application virtualization called streaming. With application streaming, the application must also be virtualized in order to avoid the traditional installation process, but the purpose of streaming is very different from what I just discussed above.
Instead of trying to protect applications and operating systems from harm and degradation, streaming tries to simplify the distribution and management of applications. Streaming was originally a self-service mechanism for acquiring applications. Typically, an icon would be placed on the desktop according to some provisioning rules. Then, when a user double-clicks the icon to run it, the bits of the application are "streamed" to the desktop for immediate execution. Streaming fools the system into thinking that the application is completely installed so that the user may begin using the application with it only partially present. Streaming can certainly simplify distribution of applications. But some technologies have gone farther and added extensive license management functionality, which can provide even greater opportunities to save money.
Virtualizing the workspace has become a key tool in the IT arsenal for reducing the cost of managing and maintaining desktops. But perhaps more importantly, these technologies are providing IT with the tools necessary to allow users to be productive in all of the new ways and locations and devices where they are insisting on working. IT no longer has the luxury of dictating that all workers come into a corporate office and work on identical systems, and Endpoint Virtualization is helping them to allow this evolution in user behavior and still provide increased productivity on reduced budgets.
Next time I will delve deeper into the various application virtualization and streaming technologies, and why you might choose one over another, depending on your environment. Plus, how much can you really expect to save on licenses and helpdesk costs?
Previous Blog: To Virtualize or Not to Virtualize: That is the Question