¿Qué es una máquina virtual?

Las máquinas virtuales (VM) son ordenadores que se ejecutan dentro de otros ordenadores mediante un proceso que se conoce como virtualización.

Objetivos de aprendizaje

Después de leer este artículo podrás:

  • Definir máquina virtual
  • Entender cómo funcionan la virtualización y el hardware virtual
  • Describir varios casos de uso de máquinas virtuales

Contenido relacionado


¿Quieres saber más?

Suscríbase a theNET, el resumen mensual de Cloudflare sobre las ideas más populares de Internet.

Revisa la política de privacidad de Cloudflare para saber más sobre cómo Cloudflare gestiona tus datos personales.

Copiar enlace del artículo

¿Qué es una máquina virtual?

Una máquina virtual (VM) es un ordenador basado en software que existe dentro del sistema operativo de otro ordenador, a menudo utilizado para realizar pruebas, para hacer copias de seguridad de datos o para ejecutar aplicaciones SaaS. Para entender cómo funcionan las máquinas virtuales, es importante entender primero cómo el sistema operativo suele integrar el software y el hardware del ordenador.

¿Qué es un sistema operativo?

Los ordenadores tradicionales están construidos con hardware físico, como discos duros, chips de procesador, memoria RAM, etc. Para utilizar este hardware, los ordenadores dependen de un tipo de software conocido como sistema operativo (SO). Algunos ejemplos habituales de sistemas operativos son Mac OSX, Microsoft Windows, Linux y Android.

El sistema operativo es el que gestiona el hardware del ordenador de una forma que sea útil para el usuario. Por ejemplo, si el usuario quiere acceder a Internet, el SO ordena a la tarjeta de interfaz de red que realice la conexión. Si el usuario quiere descargar un archivo, el SO particiona el espacio en el disco duro para ese archivo. El sistema operativo también ejecuta y gestiona otras piezas de software. Por ejemplo, puede ejecutar un navegador web y proporcionarle suficiente memoria de acceso aleatorio (RAM) para que funcione sin problemas.

Normalmente, los sistemas operativos existen dentro de un ordenador físico en una proporción de uno a uno. Para cada máquina hay un único SO que gestiona sus recursos físicos.

¿Puedes tener dos o más sistemas operativos en un ordenador?

Es posible ejecutar varios sistemas operativos en un ordenador. Esto se puede conseguir con un proceso llamado virtualización. En la virtualización, una pieza de software se comporta como si fuera un ordenador independiente. Esta pieza de software se llama máquina virtual, también se conoce como ordenador "invitado". (El ordenador en el que se ejecuta la máquina virtual se llama "anfitrión"). El invitado tiene un SO y su propio hardware virtual.

El "hardware virtual" puede sonar como un oxímoron. De hecho, el "disco duro" de una VM es en realidad un archivo en el disco duro del ordenador anfitrión. Sin embargo, un disco duro virtual cumple la misma función que uno físico.

El número de máquinas virtuales que pueden ejecutarse en un host solo está limitado por los recursos disponibles del mismo. El usuario puede ejecutar el SO de una máquina virtual en una ventana como cualquier otro programa, o puede ejecutarlo en pantalla completa para que parezca que se está usando un auténtico SO de anfitrión.

¿Para qué se usan las máquinas virtuales?

Los casos de uso más habituales para las máquinas virtuales en ordenadores individuales incluyen:

  • Pruebas - Con frecuencia, los desarrolladores de software quieren probar sus aplicaciones en diferentes entornos. Pueden utilizar máquinas virtuales para ejecutar sus aplicaciones en varios sistemas operativos en un solo ordenador. Esto es más sencillo y rentable que probar en varias diferentes máquinas físicas.
  • Ejecutar software diseñado para otros SO - Aunque ciertas aplicaciones de software solo están disponibles para una única plataforma, una VM puede ejecutar software diseñado para un SO diferente. Por ejemplo, un usuario de Mac que quiera ejecutar software diseñado para Windows puede ejecutar una VM de Windows en su host de Mac.
  • Ejecutar software anticuado - Algunas piezas de software antiguo no pueden ejecutarse en los SO modernos. Los usuarios que quieran ejecutar estas aplicaciones pueden ejecutar un SO antiguo en una máquina virtual.
  • Aislamiento de navegador: el aislamiento de navegador es la práctica de "aislar" la actividad del navegador de web respecto al resto del sistema operativo de un ordenador para impedir que ningún malware afecte al resto de archivos y programas del ordenador. Algunas herramientas de aislamiento de navegador usan VM para establecer este aislamiento —a través de este enfoque pueden ralentizar la actividad del navegador.

¿Cómo utiliza la informática en la nube las máquinas virtuales?

Varios proveedores de nube ofrecen máquinas virtuales a sus clientes. Estas máquinas virtuales suelen estar situadas en potentes servidores que pueden actuar como anfitriones de varias máquinas virtuales, y pueden utilizarse por una serie de razones que no serían prácticas con una máquina virtual alojada en local. Estas incluyen:

  • Ejecutar aplicaciones SaaS - El software como servicio, o SaaS de forma abreviada, es un método basado en la nube para proporcionar software a los usuarios, en el que una aplicación se sirve al usuario a través de Internet en lugar de ejecutarse en sus ordenadores. Con frecuencia, son máquinas virtuales en la nube las que realizan el cálculo de las aplicaciones SaaS, además de entregarlas a los usuarios. Si el proveedor de la nube tiene un perímetro de la red distribuido geográficamente, entonces la aplicación se ejecutará más cerca del usuario, lo que se traduce en un rendimiento más rápido.
  • Realizar una copia de seguridad de los datos - Los servicios de máquinas virtuales basados en la nube son muy populares para realizar copias de seguridad de los datos, ya que se puede acceder a ellos desde cualquier lugar. Además, las máquinas virtuales en la nube ofrecen una mayor redundancia, requieren menos mantenimiento y, por lo general, son más escalables que los centros de datos físicos. (Por ejemplo, es relativamente fácil comprar un gigabyte extra de espacio de almacenamiento a un proveedor de máquina virtual en la nube, pero es mucho más difícil construir un nuevo servidor de datos local para ese gigabyte extra de datos).
  • Servicios de alojamiento como correo electrónico y gestión de acceso - Alojar estos servicios en máquinas virtuales en la nube suele ser más rápido y rentable, y ayuda a minimizar el mantenimiento y a deshacerse también de los problemas de seguridad.
  • Aislamiento de navegador: algunas herramientas de aislamiento de navegador utilizan máquinas virtuales en la nube para ejecutar la actividad de los navegadores web y ofrecer contenidos seguros a los usuarios a través de una conexión segura a Internet

Cloudflare y las máquinas virtuales

Cloudflare ayuda a proteger y gestionar cualquier tipo de implementación en la nube, incluidas las máquinas virtuales en la nube. Los proveedores de SaaS pueden utilizar Cloudflare for SaaS para mejorar el rendimiento de sus aplicaciones, proteger los dominios personalizados para los usuarios finales, etc.

Asimismo, para los usuarios que quieran la funcionalidad de ejecutar código en el perímetro sin los costes de las máquinas virtuales, la plataforma Cloudflare Workers, una plataforma sin servidor, proporciona computación en el perímetro a los clientes de forma completamente escalable, lo que permite que los desarrolladores puedan aumentar las aplicaciones existentes o crear otras completamente nuevas sin configurar ni mantener la infraestructura.