Application Virtualization with VMware ThinApp
Almost 2 years ago VMware bought a company that specialized in Application Virtualization - Thinstall. That company's product became VMware's ThinApp and it may be part of the future of your infrastructure. Let us find out what the "big deal" is about application virtualization.
What is Application Virtualization?
Just a server virtualization is virtualizing servers and desktop virtualization is virtualizing end user desktop PCs, application virtualization is the process by which applications become virtualized. With server virtualization, you separate the hardware from the OS. With applications virtualization, you separate the application from the OS. By doing this, the applications become portable files that can easily be run across a variety of different guest operating systems without installing any application. Think of those old applications that were very small and all you did was to run a single file that made up that application. Life was easy. Application virtualization aims to make running and managing applications easy again.
You may want Server, Desktop, and Application virtualization all working together in your infrastructure or you may just want one of them. Of course, what types of virtualization you use depends on your company's needs.
Figure 1: ThinApp Application Virtualization (graphic thanks to VMware.com)
How does VMware's ThinApp fit into the Picture?
As I said earlier, VMware bought Thinstall and it later became VMware ThinApp. Now it is up to version 4.x and it offers more functionality than before. Those new to application virtualization might compare ThinApp to Microsoft Terminal Server (now called Windows Remote Desktop Services (RDS)). However, RDS provides "session virtualization" and is starting to offer more desktop virtualization features. Still, do not confuse RDS with application virtualization as with RDS, the applications still have to be installed on every server.
ThinApps real competition is Microsoft App-V , (Microsoft's application virtualization solution bought from Softgrid), Citrix XenApp, and Symantec Software Virtualization Solution (SVS). All of these are application virtualization solutions that are rightly compared to ThinApp. Now I am not going to do a comprehensive comparision between all these application virtualization options. However, Brian Madden has a 15 page whitepaper that does exactly that. If you want a full comparison between these 4 application virtualization solutions, checkout his Application Virtualization 2008-2009 comparison whitepaper. The most interesting thing I found in that report was that ThinApp is the only solution of the 4 that does not install an agent on the remote desktop where the virtualized application will run. Those other solutions use a "kernel mode driver" where ThinApp uses an "embedded virtualization model" and, by doing so, ThinApp "delivers better overall application throughput" and "made running applications quick and easy compared to the competition".
When it comes to VMware solutions, it breaks down like this:
- ThinApp - Application virtualization
- View - Desktop virtualization
- vSphere - Server virtualization
Keep in mind that you could run ThinApp virtualized applications inside a View virtual desktop or inside a vSphere virtualized server.
How does ThinApp work?
I am not going to get into technical details on how ThinApp works but here are the basics....
- You can download ThinApp from the VMware ThinApp website. However, I recommend starting at the Try VMware ThinApp site to take advantage of the 60-day evaluation. Surprisingly, ThinApp is a small 8MB application.
- As part of the 60-day ThinApp trial, you get a 60-day license of VMware Workstation 7. This is good because you are going to need it.
- After you have downloaded Workstation and ThinApp, install VMware Workstation on your PC. You will use it to run virtual machines that you will snapshot, install applications on, and revert to the previous snapshot.
- With Workstation installed, create a new VM and I recommend that you install Windows XP with SP2 on that virtual PC. Once you have the OS, install ThinApp (which will only take a minute due to its tiny size). Don't install any other applications inside the VM.
- Take a snapshot of your clean XP installation using Workstation. This is crucial because this will be your clean VM where you will be installing your applications that ThinApp will analyze to be virtualized.
- With the VM up, ThinApp installed, and a good snapshot, run ThinApp.
- ThinApp, essentially, does 3 things - pre-install scan, post-install scan, and build of virtual applications. Start by running the pre-install scan, called "Setup Capture". This will scan the clean PC to see what it looks like before your application is installed.
Figure 2: Setup Capture
- Now, install your application. When done, install any supporting applications that you know you need (perhaps you need .NET, Java, or Acrobat Reader for your application to work properly)
- With the application installed, run the post- install scan.
Figure 3: Post-Install Scan
- At this point, tell ThinApp to build your virtual application. A folder will be created called bin under the name of the folder specified during the scan process.
- Once the files are built, you can copy the contents of that bin folder onto any Windows OS and run your application, instantly, with no installation.
Checkout the following Reference: