Taxonomy of virtualization techniques in cloud computing

Taxonomy of virtualization techniques in cloud computing

Virtualization techniques can be categorized into several types based on the level of abstraction and the components involved.
  • Hardware Virtualization
  • Operating System Virtualization
  • Application Virtualization
  • Storage Virtualization
  • Network Virtualization
  • Memory Virtualization
  • Hardware Assisted Virtualization

Hardware Virtualization

1. Full Virtualization

  • In full virtualization, a hypervisor (also known as a Virtual Machine Monitor) sits between the hardware and the operating system, creating a complete virtualized environment.
  • Virtual machines (VMs) run independent operating systems, unaware of the underlying hardware.
  • Examples include VMware ESXi and Microsoft Hyper-V.

2. Para-Virtualization

  • Para-virtualization involves modifying the guest operating system to make it aware of the virtualization layer.
  • This collaboration between the hypervisor and the operating system results in improved performance compared to full virtualization.
  • Xen is a common example of a para-virtualization hypervisor.

Operating System Virtualization

Containerization

  • Containerization provides lightweight virtualization at the application level.
  • Containers share the host operating system's kernel but maintain separate user spaces, allowing for efficient resource utilization and rapid application deployment.
  • Docker and Kubernetes are popular containerization technologies.

What is Docker?

Docker is a containerization platform that empowers developers to bundle applications and their dependencies into containers.

What is Kubernetes?

  • Kubernetes is an open-source container orchestration tool.
  • It automates the process of deploying, scaling, and managing applications stored in containers.
  • Kubernetes works seamlessly with container technologies like Docker.

Hardware-Assisted Virtualization

  • Hardware-assisted virtualization utilizes specific features in modern processors to enhance virtualization performance.
  • Intel VT-x and AMD-V are examples of hardware virtualization extensions that improve the efficiency of virtualized environments.

Network Virtualization

  • Network virtualization abstracts networking resources, allowing the creation of virtual networks within a physical network infrastructure.
  • VMware NSX and Open vSwitch are examples of technologies that provide network virtualization, enabling the isolation and segmentation of network traffic.

What is Vmware NSX?

VMware NSX is a network virtualization platform that abstracts networking resources.

What is Open vSwitch ?

Open vSwitch is an open-source software switch designed to be used as a virtual switch in virtualized server environments.

Application Virtualization

  • Presentation virtualization, also known as application virtualization, separates the execution of software from the end-user device.
  • The application runs on a server, and only the user interface is transmitted to the client.
  • Example: Citrix XenApp is a presentation virtualization solution.

Memory Virtualization

  • Memory virtualization allows the allocation of more virtual memory than physically available.
  • Memory overcommitment techniques, such as page sharing and compression, optimize memory usage.
  • Example: VMware ESXi uses memory overcommitment for efficient resource utilization.

Storage Virtualization

Block-level Virtualization

  • Block-level virtualization abstracts storage devices into virtual blocks, allowing them to be managed independently.
  • Example: Storage Area Networks (SANs) often use block-level virtualization.

File-level Virtualization

  • File-level virtualization operates at the file system level, abstracting physical file locations.
  • Example: Network Attached Storage (NAS) systems leverage file-level virtualization.

What is Hypervisor ?

  • A hypervisor, also known as a virtual machine monitor (VMM), is a crucial component in the field of virtualization.
  • It is software or firmware that enables the creation and management of virtual machines (VMs) on a physical host machine.
  • The primary purpose of a hypervisor is to abstract and allocate the physical hardware resources.

Types of Hypervisors

  • Type 1 Hypervisor (Bare-Metal Hypervisor)
  • Installs directly on the hardware and operates without the need for a host operating system.
  • Example: VMware ESXi, Microsoft Hyper-V Server, and Xen.
  • Type 2 Hypervisor (Hosted Hypervisor)
  • Installs on top of a host operating system and relies on it to manage hardware resources.
  • Example: VMware Workstation, Oracle VirtualBox, and Parallels Desktop.

Conclusion

Understanding the taxonomy of virtualization techniques is crucial for making informed decisions about resource allocation and system architecture.