Virtualización

¿Qué es la virtualización?

La virtualización es una tecnología que permite crear servicios de TI útiles, con recursos que están unidos tradicionalmente al hardware. Permite utilizar toda la capacidad de una máquina virtual, porque distribuye sus capacidades en varios usuarios o entornos.

En términos más prácticos, imagine que tiene tres servidores físicos con propósitos dedicados individuales. Uno es un servidor de correo, otro es un servidor web y el otro ejecuta aplicaciones heredadas internas.   Se utiliza cerca del 30% de la capacidad de cada servidor, es decir, solo una parte de su potencial de ejecución. Pero como las aplicaciones heredadas siguen siendo importantes para sus operaciones internas, tiene que conservarlas junto con el tercer servidor que las hospeda, ¿cierto?

Server usage

En términos "tradicionales", la respuesta es sí. Generalmente, era más fácil y confiable ejecutar tareas individuales en servidores individuales: un servidor, un sistema operativo y una tarea. No era sencillo asignar múltiples tareas a un servidor. Pero la virtualización permite dividir el servidor de correo en dos servidores únicos que pueden administrar tareas independientes para que las aplicaciones heredadas se puedan migrar. Se utiliza el mismo hardware, pero de manera más eficiente.

Server usage: virtualization

Si pensamos en la seguridad, es posible volver a dividir el primer servidor para que administre otra tarea, y aumentar su uso de un 30% a un 60%, y luego a un 90%. Una vez que lo logra, los servidores que quedan vacíos se pueden reutilizar para otras tareas o retirarse todos juntos para reducir los costos de refrigeración y mantenimiento. 


Una breve historia sobre la virtualización

Aunque la tecnología de virtualización data de la década de los sesenta, recién a principios del año 2000 se comenzó a adoptar más ampliamente. Las tecnologías que posibilitaron la virtualización, como los hipervisores, se desarrollaron hace muchas décadas para permitir que muchos usuarios accedieran simultáneamente a computadoras que realizaban procesamiento por lotes. El procesamiento por lotes era un tipo de informática popular en el sector comercial que ejecutaba tareas rutinarias miles de veces y muy rápidamente (como las nóminas).

Sin embargo, durante las décadas posteriores, surgieron otras soluciones que respondían al problema de tener un gran cantidad de usuarios y una sola máquina, pero aun así, la virtualización no siguió los mismos pasos. Una de esas soluciones era el tiempo compartido, el cual aislaba a los usuarios en sistemas operativos, que inadvertidamente originó otros sistemas operativos, como  UNIX, que finalmente dio paso al surgimiento de Linux®. Mientras tanto, la virtualización siguió sin adoptarse ampliamente y se mantuvo como una tecnología de nicho.

Ahora bien, avancemos a la década de los noventa. La mayoría de las empresas tenían servidores físicos y pilas de TI de un solo proveedor, lo cual no permitía que las aplicaciones heredadas se ejecutaran en un hardware de otro proveedor. A medida que las empresas actualizaban sus entornos de TI con servidores básicos, sistemas operativos y aplicaciones menos costosos y de diferentes proveedores, el hardware físico se usaba de manera insuficiente y cada servidor podía ejecutar solo una tarea específica del proveedor.

En este momento, la virtualización hizo un verdadero despegue. Resultó ser la solución natural para dos problemas: las empresas podían dividir los servidores y ejecutar aplicaciones heredadas en varios tipos y versiones de sistemas operativos. Los servidores se empezaron a utilizar más eficientemente (o quedaron directamente en desuso) y, en consecuencia, se redujeron los costos relacionados con las compras, la instalación, la refrigeración y el mantenimiento.

La aplicación generalizada de la virtualización ayudó a reducir la dependencia de un solo proveedor y constituyó la base del cloud computing. Actualmente, su uso se ha expandido tanto en las empresas que a menudo se necesita un  software de administración de virtualización especializado para realizar el seguimiento.


¿Cómo funciona la virtualización?

El software denominado hipervisores separa los recursos físicos de los entornos virtuales, es decir, todo lo que necesitan los recursos. Los hipervisores pueden conformarse como elementos principales de un sistema operativo (como una computadora portátil) o se pueden instalar directamente en el hardware (como un servidor), que es la forma en que la mayoría de las empresas virtualizan. Los hipervisores toman los recursos físicos y los dividen de manera tal que los entornos virtuales puedan usarlos.

How virtualization works

Los recursos se dividen según las necesidades, desde el entorno físico hasta los numerosos entornos virtuales. Los usuarios interactúan con los cálculos y los ejecutan dentro del entorno virtual (generalmente denominado máquina de guest o máquina virtual). La máquina virtual funciona como un archivo de datos único. Al igual que cualquier archivo digital, se puede migrar de una computadora a otra, abrir en cualquier computadora y prever que funcione de la misma manera.

Cuando el entorno virtual se está ejecutando y un usuario o programa emite una instrucción que requiere recursos adicionales del entorno físico, el hipervisor transmite la solicitud al sistema físico y guarda los cambios en la caché. Todo esto sucede a una velocidad prácticamente nativa (en especial, si la solicitud se envía a través de un hipervisor de open source basado en la máquina virtual basada en el kernel).


Tipos de virtualización

Virtualización de los datos

Los datos que se encuentran repartidos por todas partes se pueden consolidar en una fuente única. La virtualización de datos permite a las empresas tratar a los datos como si fueran una cadena de suministro; de esta manera, se obtienen las capacidades de procesamiento que pueden reunir los datos procedentes de varias fuentes, se acomodan con facilidad nuevas fuentes de datos y se transforman los datos de acuerdo con las necesidades de los usuarios. Las herramientas de virtualización de datos (como Red Hat® JBoss® Data Virtualization) se enfrentan a múltiples fuentes de datos y permiten tratarlas como una única fuente, por lo que ofrece los datos necesarios, de la forma requerida, en el momento justo para cualquier aplicación o usuario.

Virtualización de escritorios

La virtualización de escritorios (que se confunde fácilmente con la virtualización de los sistemas operativos que permite implementar múltiples sistemas operativos en una sola máquina) permite que un administrador central, o una herramienta de administración automatizada, implemente entornos simulados de escritorio en cientos de máquinas físicas de una sola vez. A diferencia de los entornos de escritorio tradicionales que se instalan, configuran y actualizan físicamente en cada máquina, la virtualización de escritorios permite que los administradores realicen configuraciones, actualizaciones y controles de seguridad de forma masiva en todos los escritorios virtuales.

Virtualización de servidor

Server virtualization

Los servidores son computadoras diseñadas para procesar un gran volumen de tareas específicas de forma muy efectiva para que otras computadoras (computadoras portátiles o de escritorio) puedan ejecutar otras tareas. Virtualizar un servidor le permite ejecutar más funciones específicas e implica dividirlo para que los componentes se puedan utilizar para realizar varias funciones.

Virtualización del sistema operativo

Operating system virtualization

La virtualización del sistema operativo se realiza en el kernel, es decir, los administradores de tareas centrales de los sistemas operativos. Es una forma útil de ejecutar los entornos Linux y Windows de manera paralela. Las empresas también pueden insertar sistemas operativos virtuales en las computadoras, lo cual:

  • Reduce el costo del hardware en masa, ya que las computadoras no requieren capacidades tan inmediatas.
  • Aumenta la seguridad porque todas las instancias virtuales se pueden supervisar y aislar.
  • Limita el tiempo que se destina a los servicios de TI, como las actualizaciones de software.

Virtualización de las funciones de red

Network function virtualization

La virtualización de las funciones de red (NFV) separa las funciones clave de una red (como los servicios de directorio, el uso compartido de archivos y la configuración de IP) para distribuirlas en los entornos. Cuando las funciones del software se independizan de las máquinas virtuales en las cuales alguna vez estuvieron, las funciones específicas se pueden empaquetar en una nueva red y asignarse a un entorno. La virtualización de redes reduce la cantidad de componentes físicos (como conmutadores, routers, servidores, cables y centrales) que se necesitan para crear varias redes independientes y es particularmente conocida en el sector de las telecomunicaciones.

Todos los elementos que necesita para comenzar a utilizar la virtualización

Infraestructura

Esto es todo lo que necesita. De verdad. Realice la instalación donde quiera, ya sea en hardware básico o sistemas de open source o propietarios, y comience a implementar docenas o cientos de máquinas virtuales con un hipervisor que puede realizar la administración, y a través de una plataforma de administración que lo simplifica.

Infraestructura

Implemente almacenamiento y virtualización al mismo tiempo, incluso cuando los recursos son limitados. Utilice el mismo hardware de servidor para el hipervisor y para el controlador; de esta manera, tendrá un grupo de recursos informáticos y de almacenamiento integrados en clústeres.


Middleware

Virtualice los datos en cualquier lugar donde se encuentren (localmente, en un depósito o en una nube) y comience a tratarlos como una fuente única que se puede enviar de cualquier forma que lo necesite, a donde quiera.


Todavía queda mucho por hacer con la virtualización