As we are rolling our journey of cloud computing, it is vital that we understand this new prototype and related terminologies very clearly in-order to provide effective solutions for our customers as and when needed. In my previous blog I tried to elucidate the most common queries when it comes to understanding the cloud. Now we will see the most delusions around cloud and virtualization.
Here I am trying to present the comparison between two sizzling terms in today’s IT world in a very simplified manner.
- It is a technology/software solution that helps create a virtual (rather than actual) version of a hardware platform, operating system, storage devices and network resources. It Decouples software from underlying hardware and encapsulates Operating Systems and applications into “Virtual Machines”.
- There are many types of virtualization including server virtualization, application virtualization, desktop virtualization etc.
- Virtual servers share computing resources under the control of a hypervisor. More servers on a machine reduce the need for physical servers, which reduces hardware, space and power costs. Virtual servers can also be moved across physical systems to further align available resources with demand.
- Virtualization reduces the cost and complexity of IT infrastructure by maximizing the utilization of physical computing resources using resourcing pooling from multiple physical devices.
- Hypervisors (bare metal and hosted)
- Example of bare metal hypervisors: VMware ESX, ESXi, Microsoft Hyper-V, Citrix Xen, KVM etc.
- Example of hosted hypervisors: VMware Workstation, VMware Server (GSX), Microsoft virtual PC etc.
- Virtual Infrastructure Management Platform (VIMP)
- Example: VMware vCenter Server, Microsoft SCVMM etc
- Pooling hardware resources
- Provides Scalability
- Faster Provisioning
- Dynamic resource sharing
- Hardware Independence
- It is a delivery model of computing as a service rather than a product, whereby shared resources, software and information are provided to its consumer as a utility (like the electricity grid etc.) over a network.
- Today there are many service models available as Cloud computing services. They are Infrastructure as a Service (IaaS), Platform as a Service (PaaS), Software as a Service (SaaS), Desktop as a Service (DaaS) and at last we can say Anything as a Service (XaaS).
- Virtualization is one of the key enablers for cloud computing. But functionalities like the automated self-provisioning aspect, Metering and billing, ability to monetize or charge back costs make cloud computing different from virtualization.
- With Cloud computing users can purchase compute resources (from external vendor) from a central pool and pay only for the amount of resources that they used. These resources would be metered to allow a pay-per-use model. There are many public cloud vendors available in market like AWS, Azure etc.
- Virtualization (includes Hypervisor)
- Orchestration - Example: VMware vRealize Orchestrator, Microsoft System Center Orchestrator etc.
- Cloud Life-cycle Management (CLM) or Cloud Management Platform (CMP) - Example: VMware vRealize Automation, OpenStack etc
- Resource pooling
- Rapid Elasticity
- On-demand self-service
- Metering and Billing
- Charge Back Mechanism
- Broad network access
- Multi tenancy
Virtualization and cloud computing are both ways to reduce infrastructure cost by maximizing the utilization of underlying computing resources. They are not the same thing though. Virtualization allows server consolidation by hosting many virtual servers on a single piece of hardware where cloud computing is a service that delivers computer resources on a metered pay-per-use or pay-as-you-go model. Although these both have advantages, there are many factors that influence the need for virtualization and cloud computing. Preferably an organization should move to virtualization first and then plan for cloud computing delivery model.