If you are still hazy about the distinctions between Cloud-Computing and virtualization, let us quickly define the terms. Unfortunately, the terms—cloud computing and virtualization–are often used interchangeably, but really mean different things with a lot of similarities and dependencies.

“Cloud computing” is the delivery of computing resources -- hardware and software—over a network such as the Internet. The common understanding is that cloud computing refers to outsourcing of IT, applications and skills with a pay as you go model. The use of the term can be traced back to the cloud shaped symbol that was used as an abstraction for the complex infrastructure—hardware and software–contained in the system diagrams. Cloud computing includes virtualization.

Virtualization refers to the abstraction of the solution from the infrastructure internally or externally on any level of the computer stack—hardware or software–to optimize resource usage. However, virtualization requires hosted environments. The cloud is a hosted environment and this makes it perfect platform for virtualization.

Virtualization is not new. It is the way in which cloud computing uses virtualization technology that is new. Virtualization extends the infrastructure scalability, automation provisioning and other capabilities of cloud computing. Interestingly, virtualization gains business value as a result of this marriage.

Moving forward with this understanding, we will now appreciate that virtualization is one of the enabling technologies used in cloud computing environments to increase the utilization of machines and reduce the number of physical devices in use. It speeds up IT operations and facilitates automation.

Cloud service providers use VMware and other virtualization solutions including clustering, full-on-line redundancy, hot swap-ability and self provisioning to revolutionize enterprise computing. The virtualization process makes for near zero loss during disaster and improves recovery time objectives and recovery point objectives.  Further, virtualization makes it possible to transform entire data centers into virtual data centers and create infrastructures that are cheaper to build up and simpler to maintain. Finally, virtualization of the application interface with programming stubs (APIs) frees it the underlying software and creates consistency of delivery. As a result, Software as a Service can be delivered with ease and customer facing software programs can be developed, managed and maintained with access to information from anywhere, anytime and any device.

To conclude, virtualization and cloud computing are not the same. Cloud computing is a way of working. Virtualization is one of the technologies used to help you get the best out of cloud computing.