What's the difference between cloud and virtualization?
Virtualization is technology that separates functions from hardware, while clouds rely on that split. It's easy to confuse the 2, particularly because they both revolve around creating useful environments from abstract resources.
The easiest way to describe the difference is from a purely Infrastructure-as-a-Service (IaaS) perspective. At the base of cloud computing is a stable operating system (like Linux®). This is the layer that gives users independence across public, private, and hybrid environments. Assuming intranet access, internet access, or both is already established, virtualization is what creates clouds. Software called a hypervisor sits on top of physical hardware and abstracts the machine's resources. These resources can be raw processing power, storage, or cloud-based applications containing all the runtime code and resources required to deploy it.
If the process stops here, it's not cloud computing—it's just virtualization. Virtual resources need to be allocated into centralized pools before they're called clouds, and those clouds need to be orchestrated by management and automation software before it's considered cloud computing. Clouds deliver the added benefits of self-service access, automated infrastructure scaling, and dynamic resource pools, which most clearly distinguish it from traditional virtualization.
A practical comparison
Virtualization can make 1 resource act like many, while cloud computing lets different departments (through private cloud) or companies (through a public cloud) access a single pool of automatically provisioned resources.
Virtualization is technology that allows you to create multiple simulated environments or dedicated resources from a single, physical hardware system. Software called a hypervisor connects directly to that hardware and allows you to split 1 system into separate, distinct, and secure environments known as virtual machines (VMs). These VMs rely on the hypervisor’s ability to separate the machine’s resources from the hardware and distribute them appropriately.
Cloud computing is a set of principles and approaches to deliver compute, network, and storage infrastructure resources, services, platforms, and applications to users on-demand across any network. These infrastructure resources, services, and applications are sourced from clouds, which are pools of virtual resources orchestrated by management and automation software so they can be accessed by users on-demand through self-service portals supported by automatic scaling and dynamic resource allocation.
|Purpose||Create multiple simulated environments from 1 physical hardware system||Pool and automate virtual resources for on-demand use|
|Use||Deliver packaged resources to specific users for a specific purpose||Deliver variable resources to groups of users for a variety of purposes|
|Lifespan||Years (long-term)||Hours to months (short-term)|
|Cost||High capital expenditures (CAPEX), low operating expenses (OPEX)||Private cloud: High CAPEX, low OPEX |
Public cloud: Low CAPEX, high OPEX
|Scalability||Scale up||Scale out|
|Tenancy||Single tenant||Multiple tenants|
How do I move from virtualization to cloud computing?
If you already have a virtual infrastructure, you can create a cloud by pooling virtual resources together, orchestrating them using management and automation software, and creating a self-service portal for users—or you can let something like Red Hat® OpenStack® Platform do a lot of that work for you. But moving from virtualization to cloud computing isn’t that simple when you’re bound to a vendor’s enterprise-license agreement, which might limit your ability to invest in modern technologies like clouds, containers, and automation systems.
The OpenStack® Word Mark and OpenStack Logo are either registered trademarks / service marks or trademarks / service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation's permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation or the OpenStack community.