Software Virtualization (SVS, App-V) Pros and Cons?

KapsZ28

2[H]4U
Joined
May 29, 2009
Messages
2,114
So, I see a lot of pros about software virtualization. Doesn't affect the OS, installs instantly, can easily be reset to its original configuration.

But what about cons? Are there any cons (other than cost and packaging the software) of using software virtualization in a corporate environment?
 
Virtualization is a great way to consolidate services that put a light load on their servers while maintaining effective isolation. It sucks if you have high CPU/IO/RAM requirements. It also means that a single hardware failure can easily take out multiple services.
 
Virtualization is a great way to consolidate services that put a light load on their servers while maintaining effective isolation. It sucks if you have high CPU/IO/RAM requirements. It also means that a single hardware failure can easily take out multiple services.

That is not the type of virtualization I am talking about. I am refering to Altiris Software Virtualization Solution and Microsoft Application Virtualization.
 
I think the cons I mentioned still stand - you've introduced a single point of failure.
 
A failure in what sense? If the application becomes corrupt, you simple reset it and it goes back to its original configuration. That takes all of 5 seconds.
 
A failure in what sense? If the application becomes corrupt, you simple reset it and it goes back to its original configuration. That takes all of 5 seconds.
He said "hardware failure". He's right, that's still accurate; a CPU/Memory failure will kill multiple services on the machine. Same with a disk subsystem failure.
 
He said "hardware failure". He's right, that's still accurate; a CPU/Memory failure will kill multiple services on the machine. Same with a disk subsystem failure.

My question has nothing to do with hardware, only software. If you have a laptop with no virtualized software and the CPU fails, the same exact thing happens. The laptop doesn't work anymore.

I am just asking about the software itself. Here is an article that describes how it works.

http://www.pcmag.com/article2/0,2817,1941342,00.asp
 
My question has nothing to do with hardware, only software. If you have a laptop with no virtualized software and the CPU fails, the same exact thing happens. The laptop doesn't work anymore.

I am just asking about the software itself. Here is an article that describes how it works.

http://www.pcmag.com/article2/0,2817,1941342,00.asp

I don't quite think you are understanding the point; let's say you are doing software virtualization in order to pack more small services on to a single machine ( this is one of the most common uses of said software ). So if you have 5 services running on a single box...what happens when the box suffers an underlying hardware failure? Your software packages may be virtualized, but if the host is down...you just took out 5 services.

Unless this software allows for hot failovers, which i'm not seeing, you must still consider the underlying hardware. It's goes in the CON catagory because the more services you load on to a machine, the more catastrophic a hardware failure is.
 
No, you guys are understanding what type of software virtualization I am talking about. The software is for laptops and desktops that clients use. For example, packaging Adobe Reader as a virtualized software package and deploying it to the clients computer.
 
Oh, so what you are looking for is software distribution methods, specifically the use of virtualization technologies to achieve this goal.

I don't see why this wouldn't work, it's probably a bit more robust than simply repackaging unattended installs. Having never used something of this nature, however, I can't comment as to it's actual use.
 
Oh, so what you are looking for is software distribution methods, specifically the use of virtualization technologies to achieve this goal.

I don't see why this wouldn't work, it's probably a bit more robust than simply repackaging unattended installs. Having never used something of this nature, however, I can't comment as to it's actual use.

No, not looking at software distribution methods. All of that has been taken care of. We use Altiris, and it is going to be used for deploying Windows 7, making VSPs, and deploying them as well.

The main difference between virtualized software and a regular software installation is the way it affects the OS. As we know, when you normally install software it updates the registry, adds DLL files, etc. And because of this, the software you just installed may modify the OS or have ill affects. Virtualized software on the other hand doesn't affect the OS at all, (supposedly.) For one, the software really isn't even installed on your computer. You can push 10 applications to a client's machine. Once the packages are on the computer, all you do is activate them. Literally takes a couple of seconds. And that is it. Software is ready to be used. Now if you deactivate those 10 applications, they are completely gone and your OS is exactly the way it was before. So the OS is never altered when you activate or deactivate virtualized software packages.

So far it sounds great to me. The only con I can really think of is clients needing custom installs of the application on their computer. So the software would need to be packaged more than once depending on the clients needs. (Ie. Package SQL with default settings for most clients, package SQL with custom settings for specific developers.)

We only piloted 30 computers using Windows 7 and about 20 virtualized software packages. That pilot is over and we won't be deploying until sometime next year. So before we get to that point, I am wondering if there are any drawbacks to using virtualized software. If not, it sounds pretty damn good and should make troubleshooting a hell of a lot easier.
 
It's hard for people to understand software virtualization -- but once you get into it, it's one of the coolest new technologies out there. To me, it's much more valuable than virtualized desktops.

I currently host about 50-60 virtualized apps for my Terminal Server users. It's nice not to have any applications that I need to install. I just install the OS, point my users at it, and the virtual apps take care of all the rest.

In my experience, the biggest con is support. Sometimes it can be difficult to support a virtualized app because you're going to blow the mind of your vendor when you try to explain how the app is running. They're going to immediately tell you you're on your own.

In my opinion, it's definitely worth it though.



To help people better understand what a virtualized app is -- imagine installing the application, but you don't really install it. The application sequencing software (what makes it a virtual app) grabs all the fiels, registry keys, odbc settings... everthing. It then pulls it into a big compressed file, like a fancy zip file.

Then the user "runs" the app. The client software makes it think that it's installed, but instead of accessing your system, it accesses that big fancy zip file you created.

Now it comes time to upgrade Office from 2007 to 2010. You just replace your big fancy zip file for Office 2007 with one for Office 2010 and now all 10,000 users on your network are getting the new version the next time they open an office app.

I have over simplified it, but it's basically how it works.
 
Would virtualized apps use up more memory since they are all running in their own bubble?
 
It works great with Adobe Reader for security patches. Most users don't install the patches but with AppV you just update that one instance and all users are running the latest version.
 
Would virtualized apps use up more memory since they are all running in their own bubble?

No; not really.

There is a little overhead for the client, but the apps don't use any more memory than they normally would.
 
No; not really.

There is a little overhead for the client, but the apps don't use any more memory than they normally would.

Good to know. So overall it sounds pretty good. Should cut back on the number of computers that need to be re-imaged because an application screwed up the OS.
 
Back
Top