Virtually Ending Conflicts
Microsoft seeks to end system software conflicts with SoftGrid.
- By Greg Shields
Microsoft has just taken a step closer to crystallizing its vision of providing software as a service. Redmond recently purchased Softricity, an increasingly influential player in the virtualization market. SoftGrid, which is now a potential new member of the Microsoft System Center family, has garnered a lot of attention for Softricity.
SoftGrid promises to end all system software conflicts. The technology segregates applications from the operating system, placing them in virtualized environments. You stream those environments down to a desktop system on demand using the same RTSP protocol that delivers Internet tunes.
The applications are never actually installed on a client machine when they're streamed to the desktop. That's what lets the company make the bold claim that the product eliminates all system conflicts. It's simple: no install, no conflicts.
Let's take a look under the hood at this new method of deploying software from an administrator's perspective.
The process for deploying new applications hasn't changed much over the
years. You download the new software, test it on a few machines, package it up
and deploy it through a distribution system like Active Directory, SMS or Altiris.
This traditional process presents a major challenge -- namely maintaining the software baseline on each system. Managing this baseline and keeping track of software that doesn't play well together can be a full-time job.
Softricity changes this paradigm by getting rid of the software installation process all together. Using SoftGrid, you don't have to worry about what software is installed on which systems, because it's never really installed anywhere. The machine's baseline never changes because the applications are little more than a few extra files on the system.
Softricity's Sequencer replaces the traditional software packaging utility
with a tool that monitors the state of a machine during a software installation
and collects the completed files and registry key updates. Where the Sequencer
differs is that it also monitors how the application is being used -- watching
the tasks and creating a "sequence." This is essentially a series of application
chunks that you can later download to the client.
[Click on image for larger view.]
|Figure 1: After sequencing
WinZip 10.0, the sequencer uniquely identifies and stores each file inside
the SPRJ file.
A Softricity sequence includes at least four files. The main .SFT file is a
single file in which all the application's files and registry components reside.
You download this to the client in pieces, as it needs them. Two other files,
the .OSD and .SPRJ files, are XML-based configuration files the client uses
to locate the Softricity server, establish desktop and start menu shortcuts
and configure file type associations.
The application virtualization environment created by the Softricity client
segregates the applications from the core operating system itself. The concept
is similar to how VMware and Microsoft Virtual Server 2005 virtualize an entire
server onto a single file. In this case however, it's an individual application
-- including all files and registry entries -- that are stored in that file.
When a user runs an application for the first time, that application is streamed from the Softricity server via RTSP or Secure RTSP to the client. The application's content is encapsulated into the four files described above and downloaded to a cache location. The client launches the application from this cache location. Each application sees its files and registry keys laid over those of the operating system, but it can't see those of the other applications.
That said, one of the critical pieces of software sequencing is ensuring that each application has access to the resources it needs. If an application needs to access another application during its processing, then both apps must be sequenced together.
There are a number of interesting uses for this technology that immediately
come to mind. First, there's the obvious benefit to significantly reducing software
distribution costs. If you need a piece of software, you can simply stream it
from the server.
Lowering the costs associated with distributing software updates is another benefit. If Office 2003 needs one of Microsoft's monthly patches, you can re-run the sequencer, add the patch, upload the new files to the Softricity server and increment the project's version number. The clients can immediately download the new version.
Since an application and all its related registry calls are contained within the virtualization environment, another use for the technology can be to contain Internet Explorer. Browser-based applications are growing in popularity, but conflicts between those applications' pre-requisites can make IE administration troublesome. With Softricity, you can sequence a desired IE configuration for a particular browser-based application and distribute that configuration as a streamed application.
There are some limitations to what you can and can't virtualize. While Softricity 4.0 lets you sequence system services, software with deep system integration like printer drivers and anti-virus applications are out of that scope. Similarly, you won't be able to virtualize OS updates and patches this way. However, Microsoft's Softricity acquisition may well negate some of these limitations in the future.
Proper client management is also a must. Though there's currently no scripting
exposure on the client side, Softricity provides ample configuration control
through the client's registry which you can configure with AD GPOs and custom
Greg Shields is Author / Evangelist with www.PluralSight.com, and is a globally-recognized expert on systems management, virtualization, and cloud technologies. A multiple-year recipient of the Microsoft MVP, VMware vExpert, and Citrix CTP awards, Greg is a contributing editor for Redmond Magazine and Virtualization Review Magazine, and is a frequent speaker at IT conferences worldwide. Reach him on Twitter at @ConcentratdGreg.