Monday, May 10, 2010

Microsoft’s many uses of the word “Virtual”

From Mike Crowley's Blog: I often refer to this when explaining to others the differences between Microsoft virtualization products.

It’s really amazing how many smart people are misusing the various product names of Microsoft’s virtualization technologies. I blame this partly on Microsoft’s lack of effort to clarify, but also the topics are just confusing. Here I just wanted to provide a short list of Microsoft’s “virtualization” technologies and a description in easy to understand language.

Presentation Virtualization
This is a fancy name for Terminal Services, which is now called Remote Desktop Services in Server 2008 R2.

Official site: microsoft.com/rds

Hardware Virtualization
Products include, Virtual PC, Virtual Server and Hyper-V. These technologies allow a complete computer operating system to run within another operating system.

Official site: microsoft.com/hyperv

Now the confusing ones:
Virtual Desktop Infrastructure (VDI)
Use of abovementioned RDS combined with abovementioned Hyper-V. In Server 2008 and earlier Microsoft VDI wasn’t an actual product. It was a licensing scheme that allows use of these technologies:

· Hyper-V for hosting your desktops
· System Center Virtual Machine Manager for managing your VMs
· System Center Operations Manager for monitoring everything
· System Center Configuration Manager for building and managing your desktop images
· The Microsoft Desktop Optimization Pack so you can use App-V to virtualize your applications
· All the Remote Desktop infrastructure components, like RS Web Access, RD Session Broker, RD Gateway, etc.

In Server 2008 R2, the licensing still applies, but there is now a “Server Role: Role Service” called “Remote Desktop Virtualization Host”. This role also adds the Hyper-V role and should not be virtualized, as it is to be considered a virtualization host itself.

Using the RD Virtualization Host role, you can create pools of virtual windows desktops (such as Windows 7) for users to access over Remote Desktop Services. The use of Hyper-V allows for many computers to reside within a single server, but it also can employ snapshots to automatically revert a PC back to its administrator-defined state when a user logs off.

To connect to this magical environment, you can use another computer with the Remote Desktop Client (yes even MAC), or you can use a thin terminal sych as a Wyse WinTerm.

IMO: This is what most people mean when they say “we want to virtualize our desktops”

There are 3 videos that cover this in just the right amount of detail here:

1. http://edge.technet.com/Media/Microsoft-VDI-Part-I-Server-Side-Configuration
2. http://edge.technet.com/Media/Microsoft-VDI-Part-II-Virtual-Desktop-Configuration
3. http://edge.technet.com/Media/Microsoft-VDI-Part-III-Client-Side-Experiences

Official site: microsoft.com/vdi

Microsoft Enterprise Desktop Virtualization (MED-V)
MED-V is the most confused in this list. While it sounds like this is a product that allows you to do what I just described in the above VDI section; this is actually far from the truth.

MED-V addresses the issue of application to operating system incompatibility. However before you walk down the MED-V road, you should realize that applications that don’t seem to be compatible with the operating system may actually be “fixed” with ACF. I’m not going to get into ACF here, but you can read about it here: Application Compatibility Factory (ACF) Program

MED-V used to be called “Virtualization Player” before Microsoft bought Kidaro, the parent company. MED-V allows a given workstation to run a modern operating system such as Windows Vista or Windows 7 while also running otherwise incompatible applications on Windows XP which is hidden in the background.

This is accomplished by first installing Virtual PC on the workstation, and then the MED-V client. When a user access an application that the administrator configures to run from the XP environment, it is seamlessly merged into their Windows Vista/7 experience without knowledge of a full XP installation running in the background.

If you are familiar with Windows 7’s “XP Mode” you have a head start into this concept. XP Mode is a derivative of MED-V. The “E” in MED-V stands for enterprise, so of course this means the environment can be controlled in a way that is suitable for large environments. This is done by centralizing the images used for the background environments, and controlling their level of interaction with client computers who run the client.

In addition to incompatible applications there could also be incompatible websites. An example here would be when a user types http://oldsite IE6 is called to access the URL when all other applications would run from IE7 or 8. Applications and URLs that are defined as incompatible are configured within the MED-V management application.

MED-V requires better hardware for workstations that run it; however it does not require virtualization support from the CPU architecture like Hyper-V does.

This software is only available through the MDOP (Microsoft Desktop Optimization Pack) offering via Software Assurance.

Official site: microsoft.com/medv

Microsoft Application Virtualization (App-V)
This product was purchased from Softricity who named it SoftGrid. It has since been renamed to App-V 4.6

App-V, like MED-v is an MDOP offering that deals with application incompatibility. The difference is that MED-V addresses application to operating system incompatibilities, whereas App-V solves application to other application incompatibility issues.

Java for example can only exist once on a computer. If a user requires an older AND a current version of Java, they cannot run them both from the same computer. App-V changes this rule.

App-V creates a sort of “bubble” for an application to reside within. The bubble itself interacts with the operating system but not with other bubbles. This allows us to put Java v.old and Java v.new into separate “bubbles” and then run them both on the same computer. At the same time if desired.

This bubble means the application is never “installed” onto the computer.

Another cool thing about App-V is its ability to stream these bubbles to the client. App-V uses RTSP to send the application to the client. App-V is Microsoft’s “application streaming” technology. The advantage of streaming an app is that the computer is able to run the app while all the program bits are being sent over the wire as necessary.

With App-V all application processing and workload is done on the client. I mention this because many people believe the “stream” or the streaming server somehow assists the workstation. This is not true. If you run an application within App-V you need the same hardware you would need without App-V. This also means an app that is incompatible on Windows 7 will remain incompatible with Windows 7 even if packaged via App-V. Remember, this is MED-V’s job.

Official site: microsoft.com/appv

I hope this helps you in your future discussions with customers or at least your own personal understanding of Microsoft’s Virtualization offering!