It’s going to take a few years for virtual appliances to become mainstream, but they bring some substantial benefits over existing software deployment mechanisms such as software installers and hardware appliances. Here are a few ideas to think about:
- Vastly simplified installation of complex server software - Virtual appliances bundle the operating system, application code, all dependancies and some nice management tools together in a simple drop in bundle that is up and running in seconds.
- Automatic updates of the entire application stack - Not every virtual machine labeled as a virtual appliance supports this, but true virtual appliances do have this capability and it’s a real time saver. You get your updates to the OS, the application and all of its dependancies as a single pre-tested and certified update.
- No need to deploy custom hardware - The appliance concept has been around for a while and enterprise data centers are full of colorful computers that take up space and consume power. Virtual appliances deploy on industry standard X86 hardware that can be purchased from the same vendors as all your other computers.
- Saves energy by enabling consolidation of multiple applications on the same hardware - Beyond taking up a lot of space, all those hardware appliances are also real energy hogs and like most applications are vastly under utilized. Since virtual appliances can share the same server, you can maintain the same suite of applications while saving considerable money due to reduced power, space and cooling requirements.
- Reduces hardware costs - The average utilization of servers, including hardware appliances is estimated at somewhere between 8% and 15%. That’s a lot of hardware that’s just sitting around being underutilized. With virtual appliances you can share servers which means fewer machines to buy and fewer to support which translates to substantial cost savings.
- Leverage your existing hardware support contracts - There’s no need to sign expensive hardware support contracts for custom hardware. With virtual appliances you can use your standard hardware, with your existing support contracts and existing inventory of spares.
- The operating system doesn’t matter - With an appliance, the operating system that it runs on doesn’t matter. It’s hidden from view and heavily stripped down and secured. Since it contains fewer components there’s less to manage, less to patch and less to worry about.
- No complex software installers to deal with - With a virtual appliance you just extract it to the machine and boot it with your virtualization software. Any other configuration will be handled through a web browser.
- Doesn’t muck up your system - Typical software installers are very invasive and often intertwine the application with the operating system it’s installed on. When you’re managing the OS and the application separately this can create substantial headaches. With a virtual appliance the entire application is contained in a nice tidy bundle that’s both easy to install and easy to remove.
- No conflicts with other applications - Since the appliance is a nice little bundle, it’s completely isolated from the other applications on the system. This makes it easy to run multiple applications on the same hardware, without having to worry about their different dependancies and how they’ll interact.
- Supports cool features like snapshoting and rollback of image states - Virtualization systems such as VMWare support some advanced facilities for managing the disks associated with the virtual appliance. This allows you to setup the machines to make backups easier or to enable testing of various configurations without the changes being persistent.
- Easily setup and run multiple installations of the application. Development, test, production, all easy to install and configure. You can even start out by using an appliance for development and then simply make a copy of that appliance for testing and production. Also, if you’re really resource constrained, you could even run all environments on the same physical computer without having to worry about conflicts at the software level.
- Deploy the same application on Windows, Linux and Mac OS X - virtual appliances are truly OS independent. Just move the bundle to the X86 OS of your choice and boot it up.
- Easily move the application and all of its data between machines, even between platforms. Along with easy deployment on the platform of your choice, you can also move the appliance between platforms without any problems. You could even do things like starting to use an appliance on your Windows desktop and then as usage grows, move it off to a larger linux server. Moving the appliance moves the entire state including any data.
- Easily backup and restore the entire environment - Since virtual appliances are entirely self contained they’re very easy to backup and restore.
Virtualization and Virtual Appliance news, tips and opinions. 

0 Responses to “15 reasons why virtual appliances are changing the rules for software deployment”