Services and applications can inherit interesting features from their virtual machine containers, namely execution environment isolation, cloning, checkpointing and mobility.
These features bring benefits in several phases of service-oriented architecture development, deployment and maintenance. Isolation supports independent field-testing and doesn’t interfere with the remainder of the IT infrastructure. It also allows system-testing under controlled conditions, which facilitates development and debugging of services and applications.
Agencies can customize and optimize their VMs based on service demands to create the best possible execution environments for all applications. Cloning enables the creation of identical VM replicas, which the IT team can use to test new software, apply updates or increase the performance and accessibility of a particular component.
IT can also create templates of commonly used VMs to reduce set-up time. Checkpoints of VM states offer a tool for reverting to a previous stable state after a failure, unsuccessful system upgrade or botched configuration. Backing up entire environments instead of just each application’s data allows fast recovery in the event of a disaster.
Techniques and middleware to migrate VMs among physical servers — such as Citrix XenMotion and VMware VMotion — can provide load-balance and fault-tolerance, offering zero downtime for VMs while IT provides maintenance or upgrades to hardware and software.
Remember, applications inside the VMs inherit the described features without the need for any modification.
José Fortes, a professor at the University of Florida, is director of both the federally funded Advanced Computing and Information Systems Laboratory and the Industry-University Cooperative Center for Autonomic Computing. Andréa Matsunaga and Maurício Tsugawa are doctoral students at the lab and center. You can contact them at firstname.lastname@example.org, email@example.com or firstname.lastname@example.org.