Cloud Computing - Hardware Virtualization


Virtualization is the process of creating a virtual rather than actual version of something like a server, a desktop, a storage device, an operating system or network resources. With the help of Virtualization, multiple operating systems and applications can run on the same machine that means no need saperate operating systems and its same hardware at the same time, increasing the utilization and flexibility of hardware. virtualization technologies provide a virtual environment for not only executing applications but also for storage, memory, and networking.

Virtualization example

Imagine a company that has several applications running on separate physical servers. Each server is dedicated to a specific application, and the overall hardware resources are not utilized efficiently. Consider a company that needs servers for three functions.

  1. Store business email securely
  2. Run a customer-facing application
  3. Run internal business applications

Each of these functions has different configuration requirements.

  1. The email application requires more storage capacity and a Windows operating system.
  2. The customer-facing application requires a Linux operating system and high processing power to handle large volumes of website traffic.
  3. The internal business application requires iOS and more internal memory (RAM).

With the help of Virtualization, multiple operating systems and applications can run on the same machine that means no need saperate operating systems and its same hardware at the same time, increasing the utilization and flexibility of hardware.

Types of Virtualization

  1. Hardware Virtualization
  2. Operating system Virtualization
  3. Server Virtualization
  4. Storage Virtualization

1. Hardware Virtualization

Hardware virtualization is a technology that allows multiple virtual machines (VMs) to run on a single physical host or server. It is achieved through the use of a hypervisor, also known as a Virtual Machine Monitor (VMM), which is a software layer that sits between the hardware and the operating systems of the virtual machines. The primary goal of hardware virtualization is to efficiently utilize the computing resources of a physical machine and provide isolation between virtual machines.

Here are key concepts and components associated with hardware virtualization.

Hypervisor

The hypervisor is a software component that managing and allocating physical resources (such as CPU, memory, and storage) to multiple virtual machines in a computer. It ensures that each virtual machine gets the allocated resources and does not interfere with the operation of other virtual machines.

There are two types of hypervisors.

  1. Type 1 hypervisor - A type 1 hypervisor, or bare-metal hypervisor, is a hypervisor program installed directly on the computer’s hardware instead of the operating system. Therefore, type 1 hypervisors have better performance and are commonly used by enterprise applications. KVM uses the type 1 hypervisor to host multiple virtual machines on the Linux operating system.
  2. Type 2 hypervisor - Also known as a hosted hypervisor, the type 2 hypervisor is installed on an operating system. Type 2 hypervisors are suitable for end-user computing.

Virtual Machine (VM)

A Virtual Machine is a virtualized instance of a computer that can perform almost all of the same functions as a computer, including running applications and operating systems. Virtual machines run on a physical machine and access computing resources from software called a hypervisor.

CPU Virtualization

In Modern CPUs are equipped with virtualization extensions (e.g., Intel VT-x, AMD-V) that enhance the performance of virtualization. These extensions allow the hypervisor to directly manage the execution of virtual machines, improving efficiency.

Memory Management

The process of allocation of physical memory to virtual machines managed by The hypervisor. It provides each Virtual Machine with a virtual address space, and the hypervisor translates these virtual addresses to physical addresses.

I/O Virtualization

I/O virtualization (IOV), or input/output virtualization, is technology that uses software to abstract upper-layer protocols from physical connections or physical transports. This technique takes a single physical component and presents it to devices as multiple components.

Virtual Networking

Virtual Networking enables the communication between multiple computers, virtual machines (VMs), virtual servers, or other devices across different office and data center locations.

Isolation and Security

Each virtual machine is kept isolated from its host physical system and other virtualized machines. Virtualized security, or security virtualization, refers to security solutions that are software-based and designed to work within a virtualized IT environment. This differs from traditional, hardware-based network security, which is static and runs on devices such as traditional firewalls, routers, and switches.

Compatibility

Compatibility refers to the ability of your OS to run on a specific virtualization platform, without requiring any modifications or adjustments .

Advantage of Hardware Virtualization

Hardware virtualization provides several advantages, making it a fundamental technology in modern computing environments.

The below are the following key advantages.

  1. Resource Utilization - Hardware Virtualization allowing multiple VMs to run on a single physical server. This efficient allocation of computing resources ensures maximizing the use of CPU, memory, and storage and improving overall performance.
  2. Cost Savings - Hardware Virtualization can lead to cost saving as reduce data center operating costs associated with storage space, power, heating, and cooling that are required to keep hardware running optimally.
  3. Security - Virtualized security, or security virtualization, refers to security solutions that are software-based and designed to work within a virtualized IT environment. This differs from traditional, hardware-based network security, which is static and runs on devices such as traditional firewalls, routers, and switches.
  4. Scalability- Virtualization provides scalability by allowing the addition or removal of virtual machines based on demand. This scalability is crucial for handling varying workloads and ensuring optimal performance.
  5. Increased IT Flexibility - Hardware virtualization helps for quick deployment of server resources in a managed and consistent ways. That results in IT being able to adapt quickly and provide the business with resources needed in good time.

Next