educación, informática y demás

¿Qué son las máquinas virtuales?

¿Qué es una máquina virtual?

Como su nombre indica, es una máquina que no es real (virtual) aunque actúa como si lo fuera. Una máquina virtual es una simulación de una máquina real, de un sistema informático, pero que se ejecuta en nuestro sistema informático real.

Al sistema informático donde se ejecutan máquinas virtuales se denomina sistema anfitrión. A la máquina virtual se le denomina sistema invitado.

Una de las características más interesantes de las máquinas virtuales actuales es que permiten instalar y utilizar sistemas operativos y software para estos sin modificar, comportándose exactamente igual que si se estuvieran ejecutando en una máquina real. Así podemos tener un sistema anfitrión con sistema operativo GNU/Linux Ubuntu ejecutando sistemas invitados con sistema operativo Windows 10 y Windows Server 2016, por ejemplo.

Para poder ejecutarse, una máquina virtual utiliza los recursos del sistema anfitrión. Los recursos del sistema anfitrión son compartidos con las máquinas virtuales en ejecución y con el propio sistema real.

Si una máquina virtual no se está ejecutando, no estará utilizando ninguno de los recursos del sistema anfitrión. En el momento de ejecutarse será cuando la máquina virtual solicite los recursos que tiene asignados al sistema anfitrión y solo si los puede conseguir se ejecutará.

Herramienta de virtualización: Hipervisor

Ya conocemos la definición de máquina virtual. Para poder crear, configurar, gestionar y ejecutar máquinas virtuales se necesita una herramienta de virtualización.

Se trata de una aplicación que permite gestionar máquinas virtuales – crear, modificar, eliminar y ejecutar – y permite ejecutarlas en el sistema anfitrión, utilizando los recursos reales del sistema anfitrión para cedérselos a las máquinas virtuales en ejecución. A este tipo de herramientas se las conoce como hipervisor.

A lo largo de este documento y de los documentos que lo desarrollen se trabajará con VirtualBox, aunque existen otras opciones de virtualizacón (Información sobre VirtualBox – Wikipedia)

La decisión de trabajar con VirtualBox está basada en que se trata de una herramienta potente, multiplataforma, de código abierto y gratuita. Estas características la hacen idónea para el ámbito educativo.

Un Hardware, varios Sistemas Operativos

Al ser una simulación de una máquina real, la máquina virtual necesitará contar con recursos hardware sobre los que ejecutar aplicaciones, comenzando por la BIOS y, posteriormente, el Sistema Operativo.

Estos recursos son los recursos de la máquina anfitriona, que se comparten con la máquina virtual en ejecución. Por tanto, cuanto más potente sea la máquina anfitriona, más recursos se podrán compartir con los sistemas invitados.

Los principales recursos hardware compartidos son los siguientes:

  1. CPU. Microprocesador. El microprocesador del sistema anfitrón es compartido por las máquinas virtuales en ejecución para poder ejecutarse, poder ejecutar su sistema operativo y resto de aplicaciones en ejecución. Hoy en día, con arquitecturas multinúcleo es posible decidir cuantos núcleos del microprocesador se asignan a una máquina virtual en concreto.
  2. Memoria. La cantidad de memoria RAM que se asigne a una máquina virtual será asignada a la máquina virtual cuando se ejecute. Esta cantidad de memoria, será tomada de la memoria RAM del sistema anfitrión.
  3. Disco duro. Como sabemos es necesario contar con una memoria que almacene el Sistema Operativo del sistema. En la mayoría de los casos se trata de un disco duro interno. Se pueden crear y asignar disco duros virtuales a un máquina virtual para que los use, por ejemplo para contener el Sistema operativo y demás información en sus sistemas de ficheros. Por supuesto, este disco duro virtual estará utilizando recursos de la máquina anfitriona. Se suele implementar como un fichero, generalmente dentro del directorio de la máquina virtual en la que se ha creado. Este fichero puede tener el tamaño de los datos que almacene creciendo a medida que se necesite o bien tendrá el mismo tamaño que la capacidad máxima que se asignó al disco duro virtual en el momento de crearlo.

Uso de máquinas virtuales y ventajas

Las máquinas virtuales se han convertido en una herramienta muy importante en el ámbito educativo y en el profesional.

Gracias al uso de máquinas virtuales, entre otras, podemos:

  • Trabajar con distintos sistemas operativos sin tener que instalarlos físicamente en un ordenador.
  • Tener varios sistemas en ejecución a la vez, sin necesidad de contar con varios sistemas informáticos reales, aprovechando la potencia del sistema anfitrión.
  • Realizar pruebas de operaciones potencialmente peligrosas sin miedo a afectar al sistema con el que trabajamos habitualmente.

En el ámbito profesional, sobre todo, tiene interés el hecho de poder aprovechar la potencia del hardware de un sistema anfitrión para poder ejecutar varias máquinas virtuales independientes unas de otras, ofreciendo por ejemplo distintos servicios – servidores web, ftp, correo… – de manera independiente.