Que es una maquina virtual – Parte 1

February 4, 2010 by
Que es una maquina virtual – Parte 1
Solop, Nicolas

Después de mucho tiempo de escribir sobre virtualización me di cuenta que estando en una empresa de tecnología, que se dedica prácticamente de lleno a la virtualización de servidores y desktops y que además tiene un blog con información relacionada al tema no podíamos seguir sin tener un post que "cuente" que es una máquina virtual.

Básicamente una máquina virtual (MV) o virtual machine (VM) como más nos gusta llamarlas a nosotros es una implementación de software de una máquina física ya sea un servidor o una pc. Estas máquinas virtuales utilizan recursos físicos como cpu, memoria y disco rígido del equipo físico donde corren los cuales le permiten a la misma correr un sistema operativo. Dejaremos para otro post el tema de como se le presentan estos recursos físicos a la máquina virtual.
Al mencionar que una máquina virtual es una implementación de software de una máquina física, estamos diciendo que lo que conforma a esta máquina virtual es un conjunto de archivos los cuales, en su mayoría, se pueden manipular como si se tratara de cualquier otro archivo presente en algún sistema operativo.

En la mayoría de los entornos de virtualización existen 2 archivos fundamentales de una máquina virtual:

  • El archivo de configuración

  • El o los archivos de disco

El contenido del archivo de configuración presenta los parámetros que hacen a la máquina virtual como cantidad de procesadores, cantidad de memoria, que archivo de disco debe utilizar y de que forma (IDE o SCSI) se lo debe presentar al sistema operativo que corre dentro de la misma al que llamamos sistema operativo guest.

En el o los archivos de disco siempre tendremos los archivos del sistema operativo guest, sus aplicaciones y sus datos.

Análogamente a los equipos físicos, las máquinas virtuales le presentan al sistema operativo guest un set de hardware en particular que va a depender de los parámetros definidos en el archivo de configuración y que va a requerir sus respectivos drivers o controladores los cuales son provistos generalmente por el fabricante de la plataforma de virtualización utilizada.

Al encenderse estas máquinas virtuales comienzan a utilizar los recursos disponibles en el equipo físico donde se encuentran corriendo permitiendonos instalar o ejecutar nuestro sistema operativo dentro de la misma. Como siempre, dependiendo de la plataforma de virtualización, el sistema operativo que corre dentro de nuestra máquina virtual no "sabe" que está corriendo dentro de una máquina virtual y no requiere modificación alguna sobre el mismo y podrá ejecutar básicamente cualquier aplicación o servicio sin que el desempeño se vea afectado.

El punto del hardware virtual nos abre la puerta para seguir hablando un poco más sobre los beneficios de la virtualización ya sea para servidores o desktops pero lo dejaremos también para otro post.

Es solo el principio (un poco tarde) del tema pero vale la pena.

Nicolás Solop