There is still confusion about virtualization and cloud computing, which obscures the role of cloud computing resources in the data center. Server virtualization has become widespread, but virtualization does not necessarily translate into support for cloud services. Put another way, network virtualization forms the foundation for cloud computing, but virtualization alone does not a cloud make.
By definition, virtualization abstracts the processing workload from the physical hardware, treating network resources as logical rather than physically connected resources. In the data center, virtualization allows you to create multiple logical devices or virtual machines (VMs) on the same server. Data center virtualization makes network administration easier because you are dealing with an abstract of the physical infrastructure. For storage area networks, for example, you can pool physical storage resources scattered around the enterprise into what logically appears as a single virtual storage system. Or with server virtualization, you can mask server resources, thus making it easier to share resources and maximize server utilization while hiding the multiple servers, processors, and operating systems at work behind the scenes.
Cloud computing, on the other hand, refers to a service that is powered by virtualization. The new buzz phrases are platform-as-a-service (PaaS) or infrastructure-as-a-service (IaaS), but basically the cloud provides shared resources such as storage and computing resources that are hosted by a third party. Those cloud resources can be incorporated as part of the data center using virtualization.
Clearing Up the Cloud
Much of the confusion around virtualization and cloud computing has to do with the definitions for private and public cloud services.
The National Institute of Standards and Technology (NIST) defines cloud computing as a shared pool of resources that can be rapidly provisioned with little human interaction. Under the NIST definition, cloud computing must have:
1. On-demand services
2. Broadband access
3. Resource pooling
4. Rapid elasticity
5. Pay-per-use service or some kind of measured service billing model
A cloud must possess all these characteristics; otherwise, it is considered a virtual infrastructure. So if you can’t provision a virtual machine without assistance, or if you can’t report cloud service usage, you are missing one of the five components defined by NIST required for cloud computing.
A private cloud, as opposed to a public cloud, means the company owns or leases hardware and software rather than sharing resources. A private cloud is a virtualized environment that uses externally hosted resources that are incorporated into the data center as virtual resources. This model provides the best of both worlds: virtualized control of data center resources, but with the elasticity and flexibility of cloud computing to meet rapidly changing demands.
Virtualization Delivers Access to Cloud Resources
Whether cloud resources are public or private, they are typically delivered to the data center as virtual resources. Including cloud services as virtual machines is the best way to provision the scalability, elasticity, and on-demand resources that are the advantages of cloud computing.
Virtualization began as a server strategy, with an eye toward maximizing server resources such as computing power and storage. With the addition of cloud computing, virtualization is also encompassing more data storage and other resources. The ability to virtualize cloud resources has made it easier to incorporate more data storage and computing on demand, which has proved to be a boon for applications such as big data analytics.
Just about any computing resource can be virtualized, including memory, storage, hardware, operating systems, applications, and even complete networks. What makes virtualization ideal for cloud computing are three specific characteristics:
Partitioning – Being able to support multiple applications and operating systems in a single device.
Isolation – Separating the physical infrastructure from the virtual infrastructure protects network resources. Each virtual machine is protected from crashes and viruses because it is isolated from the network.
Encapsulation – Each application is encapsulated so it doesn’t interfere with other applications. A virtual machine can be represented as a single file, thus making it easier to present for use by other applications.
The hypervisor used to manage virtualization is effective at managing cloud resources. No matter what the operating environment, the hypervisor can present cloud services to different virtual systems quickly and efficiently.
Virtualization offers a wide range of benefits for enterprise computing, but it’s a necessity to make the most of cloud computing. With the right virtual infrastructure in place, you can make the most of cloud computing platforms, adding services and storage on demand to meet any dynamic computing need.