Marco's Blog

Here you can find my thoughts

Virtualization 1: from 0 to 0.1

What is Virtualization?

Virtualization is the act of creating a virtual object.

You could create a version of something at the same abstraction level as the real one, such as hardware, operating systems, storage devices, or network resources. 

You will be able then to use those objects as a real one without feeling the differences. It allows you to use a physical machine at full capacity by distributing its capabilities among many users or environments.

In other words, you can exploit all the capabilities of the hardware by dividing them into pieces and using them on demand. 

For example, you can run multiple operating systems and applications on a single physical server by creating virtual machines that act like real computers with their own operating systems. 

Type of virtualization

There are many types of virtualization, depending on what kind of resources you want to virtualize, as we said it is possible to virtualize at kind of level.

Generally speaking 90% of the time you will listen to the hardware virtualization but it’s correct to have the knowledge about the existence of all the others.

The most common types are:

  • Hardware or server virtualization: It involves creating virtual machines (VM) that act like real computers with their own operating systems and applications, running on a single physical server.
  • Network virtualization: This involves creating virtual networks that are independent of the underlying physical network hardware. It allows you to segment, secure, and optimize network traffic without changing the physical infrastructure.
  • Storage virtualization: This involves creating virtual storage devices that are independent of the underlying physical storage hardware. It allows you to pool, manage, and optimize storage resources from different vendors and locations.
  • Data virtualization: This involves creating virtual data sets that are independent of the underlying physical data sources. It allows you to access, integrate, and analyze data from different formats and locations without moving or copying it.
  • Application virtualization: This involves creating virtual applications that are independent of the underlying operating system and hardware. It allows you to run applications without installing them on the local device. There are two subtypes of application virtualization: server-based and local.
  • Data center virtualization: This involves creating a virtual data center that is independent of the underlying physical data center infrastructure. It allows you to manage, monitor, and automate data center resources from a single console.
  • CPU virtualization: This involves creating virtual CPUs that are independent of the underlying physical CPU cores. It allows you to assign different CPU resources to different virtual machines based on their workload and performance needs.
  • GPU virtualization: This involves creating virtual GPUs that are independent of the underlying physical GPU cards. It allows you to share GPU resources among multiple virtual machines for graphics-intensive applications.

Why you should use VM?

You should use VM and IT infrastructure because they can offer you many benefits, such as:

  • Reduced capital and operating costs by consolidating multiple applications and operating systems on a single physical server.
  • Increased IT productivity, efficiency, agility, and responsiveness by enabling faster provisioning of resources, greater workload mobility, automated operations, and simplified management.
  • Greater business continuity and disaster recovery by providing fault and security isolation, easy backup and restore, and high availability of resources.
  • Flexibility and scalability by allowing you to run different operating systems and applications on the same host computer without compatibility issues.
  • Innovation and experimentation by enabling you to create, test and deploy new applications in isolated environments without affecting the rest of the system.

VM and IT infrastructure can help you solve many technical challenges and improve your business outcomes.

Practical Use

When you start working on VM, you need to understand the concept of hypervisor.

A hypervisor is a type of software that creates and runs virtual machines. A hypervisor, sometimes called a virtual machine monitor (VMM), isolates the hypervisor operating system and resources from the virtual machines and enables the creation and management of those VMs. 

A hypervisor allows one host computer to support multiple guest VMs by virtually sharing its resources, such as memory and processing. There are two main types of hypervisors: type-1 and type-2.

  • Type-1 hypervisors run directly on the host’s hardware to control the hardware and manage guest operating systems. They are also called native or bare-metal hypervisors. 

Examples of type-1 hypervisors are VMware ESXi, Microsoft Hyper-V, and KVM.

  • Type-2 hypervisors run on a conventional operating system (OS) just as other computer programs do. They are also called hosted hypervisors. 

Examples of type-2 hypervisors are VMware Workstation, Oracle VirtualBox, and Parallels Desktop.

Hypervisors are widely used for virtualization in cloud computing, as they enable efficient use of hardware resources, improved security and isolation, and easy management of multiple VMs.

Here it’s a graphical explanation

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *