Artículo para personas no técnicas que explica con palabras sencillas el concepto de la virtualización.
El otro día recibí la consulta de un amigo que quería entender qué es la virtualización y por qué está tan de moda hoy en día. Ello me ha motivado para escribir este artículo, pues realmente es un concepto interesante y, aunque ya lo hemos tratado en DesarrolloWeb.com de pasada en diversos artículos, no tenemos una descripción específica que sirva de referencia para resolver esta consulta
Realmente, la Wikipedia también ofrece varias notas interesantes sobre el tema de la virtualización, por lo que no creo conveniente repetirme apuntando las mismas cosas que ya otras personas han dicho, por lo que voy a intentar explicarlo de una manera más sencilla, para que pueda ser asimilado por personas sin conocimientos técnicos.
En resumen, así rápidamente, la virtualización que es un proceso por el cual se pueden crear varios sistemas operativos independientes ejecutándose en la misma máquina. Podrás entenderlo con este ejemplo:
Piensa en tu ordenador. Tiene un sistema operativo, que puede ser Windows, Linux, OS X o el que sea. Todos los ordenadores disponen de un sistema operativo y no es más que un programa que controla sus componentes, como pueden ser los discos duros, DVD y otras unidades de almacenamiento, la placa de vídeo, la de sonido, etc. El sistema operativo hace de puente entre los programas de tu ordenador (Word, Excel, Photoshop, Internet Explorer, Thunderbird, etc.) y los componentes mencionados, creando un entorno donde los diseñadores de esos programas no tengan que preocuparse sobre cómo está organizado un disco duro o cómo hacer que aparezcan imágenes en tu monitor a través de la placa de vídeo.
Ahora piensa en otro programa que funciona sobre tu sistema operativo, un tanto especial, pues no te ofrece la típica aplicación de ofimática o servicios de Internet, sino que es capaz de crear un entorno donde se ejecutan otros programas, como si fuera un sistema operativo. Eso es la virtualización.
Así pues, la virtualización es la creación de un entorno virtual donde puedes ejecutar otros programas de manera independiente. Esos programas serán los mismos que ejecutas normalmente en tu ordenador, pero funcionarán, por así decirlo, en una réplica de un sistema operativo. Por tanto, si entendiste lo que era un sistema operativo, podrás entender que la virtualización es un programa que ofrece el soporte para instalar otros sistemas operativos sobre tu misma máquina, los que funcionarán de manera encapsulada dentro de ese entorno virtual.
Por familiarizarnos con la nomenclatura habitual en estos asuntos, se llama sistema físico al sistema operativo u ordenador real y sistema virtual a aquellos que se ejecutan como virtualización sobre el sistema físico. De modo que podríamos tener varios sistemas virtuales ejecutándose sobre un único sistema físico.
Usos de la virtualización
En la práctica, la virtualización sirve para diversas situaciones, gracias a sus enormes posibilidades. A continuación podrás ver varios ejemplos.
Ejecutar sistemas operativos diferentes al tuyo:
Los usuarios de sistemas operativos a veces necesitan ejecutar programas creados para otros sistemas operativos. Por ejemplo, los usuarios de Linux a veces tienen necesidad de poner en marcha un programa como Photoshop, que no existe en ese sistema. Pues bien, con programas como Wine podrías conseguir tener un Windows funcionando sobre Linux. Existen otros softwares de virtualización similares para Linux, con lo que los usuarios de ese sistema operativo ya no tendrán problemas si necesitan poner en marcha cualquier programa que necesiten y que solo funcione en Windows.
Del mismo modo, usuarios del sistema operativo de Mac OS X, también tienen programas para hacer virtualización y poder ejecutar programas del sistema operativo Windows, por ejemplo, en su máquina. Un ejemplo de ello es VirtualBox, que permitiría instalar y correr un sistema Windows sobre un Mac, pero también otros sistemas operativos.
Ejecutar aplicaciones críticas en entornos seguros:
Otro de los usos interesantes de la virtualización es la posibilidad de ejecutar cierto tipo de aplicaciones con características inseguras en entornos seguros. Dicho de otro modo, la virtualización es capaz de generar un entorno donde se puede ejecutar malware sin padecer mayores problemas. Gracias a trabajar en un entorno virtual, las personas que se dedican a analizar softwares maliciosos pueden fácilmente volver a un estado anterior del sistema operativo y, a pesar de haber sido infectados, recuperar sin esfuerzo el estado limpio del sistema.
El problema aquí es que cada vez es más frecuente que los propios malware detecten diversos parámetros si el entorno donde están ejecutándose está virtualizado, para no realizar acción alguna en ese caso. En estos casos y a modo de curiosidad, comento que las personas que analizan el malware tienen que recurrir a sistemas de virtualización menos conocidos o directamente a la ejecución de los programas maliciosos en máquinas físicas.
Alojamiento web en servidores virtuales:
Otro de los marcos en los que encontramos habitualmente usos de la virtualización es en las empresas de hosting. Ellos tienen unos paquetes de alojamiento que se suelen llamar servidores virtuales, también conocidos con las siglas VPS (Virtual Private Server), que funcionan como si fueran servidores independientes o dedicados, pero donde en realidad se ejecutan varios servidores en la misma máquina. Esto tiene la ventaja de abaratar costes (pues de una máquina física se obtienen varios servidores virtuales), junto con unas posibilidades de configuración bastante más versátiles que los alojamientos compartidos tradicionales.
Virtualización en Cloud Computing:
La virtualización es uno de los fundamentos en los que se basa el Cloud Computing. En este modelo de trabajo no disponemos de un servidor, sino que se virtualizan todos los recursos necesarios para que nuestra plataforma funcione. En la nube podemos estar utilizando los recursos de una máquina, o de 1000 y realmente no tenemos por qué saberlo, ni nos tiene por qué preocupar. Los sistemas se encuentran virtualizados, de modo que se pueden escalar en función de la demanda y sin ningún coste operacional. Sería un poco largo de explicar este novedoso concepto y para ello podemos mejor leer el artículo Qué es Cloud Computing.
Conclusión
La virtualización es una herramienta útil tanto para los usuarios comunes como para las pequeñas y grandes corporaciones. No es que esté de moda ahora particularmente, puesto que ya hace muchos años que existen diversos programas que nos ayudan a virtualizar sistemas operativos, pero gracias a los servidores virtuales y al Cloud Computing hoy se ha puesto aun más en boca de todos.
Esta ha sido una sencilla introducción a la virtualización, concepto que realmente tiene muchas otras cosas que merece la pena conocer, si es que nos interesa ampliar la información. De nuevo, recomiendo la lectura del artículo de la Wikipedia sobre virtualización. No obstante, esperamos que por medio de este texto hayamos podido resolver las dudas más fundamentales de las personas poco técnicas.
Miguel Angel Alvarez
Fundador de DesarrolloWeb.com y la plataforma de formación online EscuelaIT. Com...