(c) Larry Ewing, Simon Budig, Garrett LeSage
Ó 1994 Ç.

Department of Computer Science

PetrSU | Software projects | AMICT | Staff | News archive | Contact | Search

High Availability Framework Combined with Virtualization

Mika Karlstedt (University of Helsinki, Finland)

Virtualization is advertised as a simple solution to utilize the full advantage of the hardware. In most commercial server centers the CPU utilization of the existing hardware is relatively low. Using virtual machines it is possible to increase the CPU utilization by installing more than one server in a single physical server.

Virtualization provides better isolation between applications running in different virtual machines. It also makes software management easier when the whole virtual machine can migrate between different physical servers with minimal impact to the clients and with a small effort from the administrator. It can be argued that the isolation advantage is not quite so good because it comes with a price. The price being a complex software layer which naturally introduces a new set of vulnerabilities in the form of bugs. The management advantage is real, but at least in the Linux environment not quite so big, as the Linux distributions make installing new software extremely easy as long as the application is in the repository of the used distribution. The reality is not quite so nice, as the applications usually require more configuration than just the installation and that work must still be done manually.

High availability frameworks provide similar advantages in process management. It is easy to migrate from one node to another and the framework even does it automatically with no input from the user. The frameworks provide also other advantages like protection from a hardware failures. But the drawback is that the application must be built with a high availability in mind and are thus more difficult to implement. There is no direct advantage of increasing the hardware utilization, but it is also achievable if the framework is ordered to install more servers on the existing servers.

Since virtualization and HA (High Availability) frameworks both provide the same advantage of easing the process management. It may not look like a good idea to try and combine them both. But there are use cases where it is beneficial to have both of them in use at the same time. The purpose of my study is to find out such use cases and evaluate whether they really are worth the extra effort or not.