An Intro to Virtualization

Govind Krishna
3 min readJan 4, 2021

--

Did you ever run a computer in your computer? if yes, you just explored an area of virtualization! let's dive deep into the concept of virtualization to explore this amazing concept.

Difference between traditional and virtual architecture

What is Virtualization?

Virtualization is a process that allows for more efficient utilization of physical computer hardware and is the foundation of cloud computing. Virtualization uses software to create an abstraction layer over computer hardware that allows the hardware elements of a single computer — processors, memory, storage and more — to be divided into multiple virtual computers, commonly called virtual machines (VMs). Each VM runs its own operating system (OS) and behaves like an independent computer, even though it is running on just a portion of the actual underlying computer hardware.

It follows that virtualization enables more efficient utilization of physical computer hardware and allows a greater return on an organization’s hardware investment.

Today, virtualization is a standard practice in enterprise IT architecture. It is also the technology that drives cloud computing economics. Virtualization enables cloud providers to serve users with their existing physical computer hardware; it enables cloud users to purchase only the computing resources they need when they need it, and to scale those resources cost-effectively as their workloads grow.

Types of Virtualizations

  • Desktop virtualization
  • Network virtualization
  • Storage virtualization
  • Data virtualization
  • Application virtualization
  • Data center virtualization
  • CPU virtualization
  • GPU virtualization
  • Linux virtualization
  • Cloud virtualization

Benefits of Virtualization

Virtualization brings several benefits to data center operators and service providers:

  • Resource efficiency: Before virtualization, each application server required its own dedicated physical CPU. IT staff would purchase and configure a separate server for each application they wanted to run. Invariably, each physical server would be underused. In contrast, server virtualization lets you run several applications each on its own VM with its own OS on a single physical computer without sacrificing reliability. This enables maximum utilization of the physical hardware’s computing capacity.
  • Easier management: Replacing physical computers with software defined VMs makes it easier to use and manage policies written in software. This allows you to create automated IT service management workflows. For example, automated deployment and configuration tools enable administrators to define collections of virtual machines and applications as services, in software templates. This means that they can install those services repeatedly and consistently without cumbersome, time-consuming. and error-prone manual setup. Admins can use virtualization security policies to mandate certain security configurations based on the role of the virtual machine. Policies can even increase resource efficiency by retiring unused virtual machines to save on space and computing power.
  • Minimal downtime: OS and application crashes can cause downtime and disrupt user productivity. Admins can run multiple redundant virtual machines alongside each other and failover between them when problems arise. Running multiple redundant physical servers is more expensive.
  • Faster provisioning: Buying, installing, and configuring hardware for each application is time-consuming. Provided that the hardware is already in place, provisioning virtual machines to run all your applications is significantly faster. You can even automate it using management software and build it into existing workflows.

Hypervisors

A hypervisor is the software layer that coordinates VMs. It serves as an interface between the VM and the underlying physical hardware, ensuring that each has access to the physical resources it needs to execute. It also ensures that the VMs don’t interfere with each other by impinging on each other’s memory space or compute cycles.

There are two types of hypervisors:

  • Type 1 or “bare-metal” hypervisors: interact with the underlying physical resources, replacing the traditional operating system altogether. They most commonly appear in virtual server scenarios.
  • Type 2 hypervisors: run as an application on an existing OS. Most commonly used on endpoint devices to run alternative operating systems, they carry a performance overhead because they must use the host OS to access and coordinate the underlying hardware resources.

--

--