Virtualization vs Private Cloud (Part 1)

February 11, 2012 Off By David
Object Storage
Grazed from Sys Con Media.  Author: Yung Chou.

Virtualization vs. private cloud has confused many IT pros. Are they the same? Or different? In what way and how? We have already virtualized most of my computing resources, is a private cloud still relevant to us? These are questions I have been frequently asked. Before getting the answers, in the first article of the two-part series listed below let’s go through a few concepts.

  • Part 1: General concept (this article)
  • Part 2: Private cloud specifics…

Lately, many IT shops have introduced virtualization into existing computing environmentw. Consolidating servers, mimicking production environment, virtualizing test networks, securing resources with honey pots, adding disaster recovery options, etc. are just a few applications of employing virtualization. Some also run highly virtualized IT with automation provided by system management solutions. I imagine many IT pros recognize the benefits of virtualization including better utilization of servers, associated savings by reducing the physical footprint, etc. Now we are moving into a cloud era, the question then becomes "Is virtualization the same with a private cloud?" or "We are already running a highly virtualized computing today, do we still need a private cloud?" The answers to these questions should always start with "What business problems are you trying to address?" Then assess if a private cloud solution can fundamentally solve the problem, or perhaps virtualization is sufficient. This is of course assuming there is a clear understanding of what is virtualization and what is a private cloud. This point is that virtualization and cloud computing are not the same. They address IT challenges in different dimensions and operated in different scopes with different levels of impact on a business.

Virtualization
To make a long story short, virtualization in the context of IT is to "isolate" computing resources such that an object (i.e. an application, a task, a component) in a layer above can be possibly operated without a concern of those changes made in the layers below. A lengthy discussion of virtualization is beyond the scope of this article. Nonetheless, let me point out that the terms, virtualization, and "isolation" are chosen for specific reasons since there are technical discrepancies between "virtualization" and "emulation", "isolation" and "redirection." Virtualization isolates computing resources, hence offers an opportunity to relocate and consolidate isolated resources for better utilization and higher efficiency.

Cloud Computing
Cloud computing on the other hand is an ability to make resources available on demand. There are statements made on what to expect in general from cloud computing. A definition of cloud computing published in NIST SP-800-145 outlines the essential characteristics, how to deliver, and what kind of deployment models to be cloud-qualified. Chou further simplifies it and offers a plain and simple way to describe cloud computing with the 5-3-2 Principle as illustrated below.

the 5-3-2 prionciple of cloud computing

The essence of cloud computing is rooted at the appreciation of a "service." In the context of cloud computing, a service simply means the state of being available on demand. So SaaS means software, i.e. an application, is available on demand and the focus is on functions available within and not beyond the application. PaaS provides a runtime environment on demand and the scope becomes what are the common set of capabilities available on demand for applications deployed to this runtime environment. Since the runtime environment is available on demand, an application deployed to the runtime environment then can be brought to a running state on demand. Namely those applications deployed to a PaaS environment are delivered, as a consequence, with SaaS. And IaaS denotes infrastructure available on demand, which means the ability to provision infrastructure on demand. For IT professionals, provisioning infrastructure at an operational level translates to deploying servers. And in the context of cloud computing, all servers are virtualized and deployed in the form of a virtual machines or VMs. So, IaaS ultimately is the ability to deploy VMs on demand.

"On-demand" is not to be casually used. This is a loaded term with a strong connotation of the five essential characteristics of cloud computing. On-demand means high accessibility and always-on readiness since it must be accessible and ready per SLA. In cloud, they are represented by self-service model and ubiquitous access. On-demand suggests there are likely standardization, automation, optimization, and orchestration in place, which are presented collectively as resource pooling and elasticity. On-demand implies the need for auditing and metering, i.e. analytics, so capacity can be planned accordingly. And that is why consumption-based chargeback or show-back model is included in the essential characteristics of cloud computing.

Unequivocally Different

With what has been described above, to realize the fundamental differences between virtualization and private cloud becomes rather straightforward. Noticeably, virtualization is not based on the 5-3-2 principle as opposed to cloud computing is. For instance, a self-serving model is not an essential component in virtualization, while it is essential in cloud computing. One can certainly argue some virtualization solution may include a self-serving component. The point is that self-service is not a necessary , nor sufficient condition for virtualization. While in cloud computing, self-service is a crucial concept to deliver anytime availability to user, which is what a service is all about. Furthermore, self-service is an effective mechanism to in the long run reduce training and support at all levels. It is a crucial vehicle to accelerate the ROI of a cloud computing solution and make it sustainable in the long run.

Virtualization is centered on virtual machines and rooted in infrastructure management, operations, and deployment flexibility. Virtualization is about the abilities to consolidating servers, managing VMs, streaming desktops, and so on. How to productively configure, deploy, and manage a workload in a deployed VM and

At the same time, cloud is about "service" and "service" is about the readiness and responsiveness relevant to market opportunities. Cloud is about go-to-market. Cloud focuses on making a requested LOB application available on demand and not just on just how to deploy a VM. Cloud is interested in not only operating VMs, but providing insights of a target application running in those VMs.

No, virtualization is not cloud computing. And cloud goes far beyond virtualization. So what are the specifics about virtualization vs. a private cloud? [To be continued in part 2]