With all of the options available today for managing IT workloads, it can be very easy to confuse cloud computing solutions with virtualization solutions. Both offer a number of advantages over traditional bare metal hosting. The challenge is determining which is the right option for the problem you’re trying to solve.
Virtualization is an excellent option if you want to consolidate a hardware footprint, increase service availability or move legacy applications onto modern hardware. Virtualization will allow you to move your existing application architecture onto updated hardware without having to rethink how your services are deployed.
Do you have two web servers and a database cluster with SAN storage? Then spin up four virtual machines (VMs) on two physical servers. The solution will still look the same to your end users, but you can achieve higher utilization of your hardware by allocating the appropriate resources to the individual VMs that need them. Add a third server and you can take advantage of failover technologies that will allow you to move virtual machines between physical hosts and protect you from hardware failures.
For workloads that are largely static, you can build virtualization infrastructures out to be fairly massive in scale. There are well-established tools available to simplify management of hundreds or thousands of virtual machines. Virtualization allows you to save money on hardware infrastructure, but does not significantly impact the labor involved in managing the machines.
Cloud based solutions differ from virtualization solutions when you start looking at dynamic workloads. Rather than managing hundreds of VMs, an IT organization can simply allocate resources to various customer groups. If an individual cloud instance starts returning bad data it can be destroyed and replaced with a freshly provisioned one. If you need more resources dedicated to serving a public-facing website or handling report generation at different times of the day, tools exist to reallocate your pool of resources.
Moving an application from traditional IT infrastructure to the cloud typically does require you to rethink how the application itself is deployed. This can require an investment in retooling up front, but over time will allow you to save money both on hardware infrastructure and labor.
Virtualization is a tried and true technology and is still a good fit for many workloads today. If you're looking to improve redundancy, become more resilient to hardware failures or move aging application environments onto more modern hardware, virtualizing the servers and taking advantage of automatic failover technologies is an excellent path to travel. However, for solutions that require massive scalability, workloads that can be readily parallelized, or situations that call for an increasing level of consumer self-service, cloud solutions offer very clear advantages.