Definition of

Virtualization

Hardware abstraction

Virtualization offers elasticity to companies.

Virtualization is a concept that is used in the field of computing to refer to the representation of a physical resource through the use of software . With virtualization, a computer program imitates the operation of a server, memory, or other hardware component.

It is important to mention that the term is not part of the dictionary of the Royal Spanish Academy ( RAE ). The adjective virtual does appear, which can refer to that which is developed via the Internet or to that which does not have a real existence but rather an apparent one.

How virtualization works

Virtualization works by creating an abstraction layer on top of the hardware . In this way, a computer program (or a set of programs) is used to divide physical components, such as processors and storage drives, into various virtual systems.

Each of these systems is called a virtual machine ( VM ). These partitions act as independent computers, each with its own operating system (OS), but they actually run on a slice of hardware that supports the actual system.

A VM, in short, is an environment that is responsible for simulating or emulating the development of a physical system. The VM and the physical hardware communicate through hypervisors , which are the software layers dedicated to coordinating the set of virtual machines.

Save data

Software-defined storage is possible through virtualization.

Its importance

Currently, virtualization is the pillar of cloud computing and a common practice in the technological architecture of companies. Since software represents or reproduces the operation of hardware, it allows physical resources to be used more efficiently .

With a single physical machine, it is possible to run multiple virtual machines. In this way, organizations achieve more flexibility . It cannot be omitted to mention that computers occupy a specific space, require periodic maintenance and consume a large amount of electrical energy, in addition to establishing access conditions for reasons of proximity.

What virtualization does is achieve the abstraction of the hardware functionality, which is assumed by the software . This enables the use and management of the physical infrastructure to be carried out through the Web as if it were an application.

Cloud computing

Shared cloud hosting works through virtualization.

Benefits of virtualization

Virtualization provides several benefits, as we have already mentioned. Using virtual machines instead of physical systems makes resource management easier and even facilitates configuration automation (there is no need to manually configure each machine).

On the other hand, it is faster to launch virtual machines than to install and configure hardware. Another advantage of virtualization is that it reduces downtime due to errors : the simultaneous execution of different redundant virtual machines is possible, allowing you to switch from one to another in the event of a possible failure. This migration is much more complex in the case of physical servers.

In a general sense, the main contribution of virtualization is efficiency . With it, the need to acquire, configure and use a physical server for each application that is intended to be executed is avoided, but rather the same server is able to develop the execution of various applications in their corresponding virtual machines.

Classification according to type

Although this type of process is usually associated with the creation of virtual servers, other technological infrastructures can be virtualized. In fact, CPU virtualization is the tool that enables the existence of virtual machines and hypervisors by dividing the central processing unit into several units that use the aforementioned VMs.

Storage virtualization , meanwhile, is used to manage the various devices that are used to store data on the network as a single device. Network virtualization , on the other hand, concretizes the abstraction of connections, routers, and switches. It is also worth highlighting the existence of desktop virtualization , which allows the execution of two or more operating systems through different VMs.

Solutions such as Microsoft Hyper-V , Citrix , Red Hat Virtualization and VMware serve to advance these tasks. These programs perform virtualization and help take over the management of virtual machines.

Virtualization, cloud computing and containers

Sometimes confusion arises between virtualization, cloud computing and containers . As we already detailed, virtualization involves hardware emulation through software.

The concept of cloud computing specifically refers to the provision of computing resources through the Internet , a service made possible by virtualization. Those providing cloud computing services develop various virtual environments based on the underlying hardware components. Software as a Service (SaaS) , Platform as a Service (PaaS) , and Infrastructure as a Service (IaaS) are forms of this alternative, which includes products such as WordPress , Microsoft Office 365 , Bungee Connect , Google App Engine , Microsoft Azure , and Amazon. Web Services (AWS) .

Containers , finally, virtualize the operating system so that an application can run independently on different platforms.