De aplicaciones virtuales a virtual blades

Green ITInnovación

Recientemente, los dispositivos de virtualización han ido ganando popularidad y terreno entre las IT. VMWare fue el pionero de la iniciativa e invirtió 200.000 dólares en su contexto, generado así mucha expectación.

Recientemente, los dispositivos de virtualización han ido ganando popularidad y terreno entre las IT. VMWare fue el pionero de la iniciativa e invirtió 200.000 dólares en su contexto, generado así mucha expectación. La idea es muy atractiva: una aplicación o juego de aplicaciones se presentan bajo la apariencia de una máquina virtual que puede ser utilizada en cualquier ordenador muy rápidamente. Así, si necesitas, por ejemplo, un servidor DNS, un servidor de aplicación LAMP o un buscador con ajustes predeterminados, simplemente tienes que copiar la imagen VM al ordenador y ejecutarla. No se requiere ni instalación ni configuración- simplemente funciona.

¿Excitante e innovador? Podría ser si no nos recordase tanto a la década de los 90, como el propio VM x86. Quiero introducir el término nuevo “virtual blades” para denominar las aplicaciones de software basadas en Virtuozzo.

En los años 90, las aplicaciones y las redes basadas en rack supusieron un importante ahorro de gestión en comparación con los servidores autónomos generales, pero aún tenían demasiado hardware redundante: suministros de energía separados, ventiladores, buses I/O externos, etc. Como paso evolutivo, en el siglo XXI los blades introdujeron el intercambio de infraestructuras de hardware, lo que redujo considerablemente los costes de gestión en comparación con los servidores basados en rack.

De modo similar a los dispositivos de hardware, las máquinas virtuales no comparten las infraestructuras subyacentes. Para crear varios dispositivos (N es un buen número) de servidores de aplicación. NET hay que instalar primero en cada VM: el SO, tiempo de ejecución .NET, IIS, DTC, COM+ y otros componentes requeridos. Así, se crean N instancias de SO y de las aplicaciones, todas con configuraciones y licencias independientes. Las instancias N conllevan N tiempo más para ser instaladas, N tiempo más para repararse y N más tiempo para iniciar y finalizar para su mantenimiento. Además, habrá N veces más de posibilidades de experimentar fallos.

Para evitarlo, Virtuozzo utiliza recursos compartidos. En lugar de copiar el SO y la aplicación en todos los VEs, Virtuozzo guarda una única copia “master” tanto del SO como de las aplicaciones. Asimismo, en vez de disponer de los archivos físicos, el VE sólo dispone de los enlaces copy-on-write a la copia “master”. Dicho de otro modo, Virtuozzo aprovisiona el SO y las aplicaciones “por referencia” y no “por valor”. Este tipo de imagen de SO o aplicaciones instaladas de forma centralizada se denomina plantilla.

Plantillas. Una plantilla está formada por:

? Archivos. La plantilla de SO contiene todos los archivos presentes en la máquina después de la instalación del SO . La plantilla de aplicación contiene todos los archivos que la aplicación añade al sistema durante su instalación.

? Registro. En Windows el registro es sumamente importante. La plantilla de SO de Windows contiene todas las entradas del registro una vez se ha instalado Windows. La plantilla de aplicación contiene todas las entradas que el instalador añade al registro. Las entradas del registro se escriben en el registro del VE cuando se realiza el aprovisionamiento de la plantilla.

? Enlaces. Además de los archivos actuales, la plantilla contiene enlaces VZFS simbólico. Un enlace mapea la ubicación del archivo en el sistema de archivos del VE de destino al archivo de la plantillas.

Creación de plantillas. El proceso de creación de plantillas es relativamente sencillo.

En el caso de Linux, para crear una plantilla de aplicación debe crearse un archivo de configuración que enumere los paquetes de aplicación de máximo nivel así como la URL del repositorio del paquete. Virtuozzo descargará todos los paquetes dependientes de forma automática y los añadirá a la plantilla junto con los otros paquetes indicados por usted. La creación de plantillas de SO es un poco más tediosa debido a que hay más paquetes y las dependencias son más complejas. La mejor manera de crear una plantilla de SO es modificar una de las plantillas que acompañan a Virtuozzo.

Windows no dispone de “distribuciones”, por lo que Virtuozzo viene con todas las plantillas del SO. Las plantillas de aplicación se crean mediante una herramienta especial que graba todos los archivos y registros durante la instalación de una aplicación.

Aprovisionando una plantilla. Para aprovisionar una plantilla, Virtuozzo copia todos los enlaces de la plantilla al VE de destino. Se trata de un proceso rápido, ya que físicamente no se copia ningún dato. El resultado es que el VE de destino tiene enlaces copy-on-write a todos los archivos de la plantilla. Como dichos enlaces son implementados por VZFS y no por el sistema de archivos subyacente del SO, la aplicación no puede distinguir entre un enlace y un archivo real. Desde el punto de vista de un administrador, el aprovisionamiento de una plantilla en el VE es tan simple como ejecutar un único comando.

Parches. Los parches son extremadamente eficientes. En Linux, las actualizaciones se realizan de forma totalmente automática. La misma herramienta que se encarga de descargar todos los paquetes dependientes cuando se crea una plantilla será la que descargará las nuevas versiones y las actualizará en la plantilla. Los archivos antiguos no se sobrescriben sino que los enlaces se vuelven a mapear a las nuevas versiones de los archivos guardados de forma paralela. En Windows (Dios nos salve del registro), el proceso es un poco más complejo.

En cualquier caso, una vez se ha actualizado un archivo de la plantilla, TODOS LOS VEs dispondrán de la versión actualizada del archivo . No importa cuántos VEs se estén ejecutando en la máquina ni en cuántos VEs se ejecute una aplicación, un parche sólo se aplica una vez en cada máquina! Además, en el supuesto caso de que hubiera un parche “incorrecto”, Virtuozzo puede solucionarlo volviendo a mapear los enlaces para que apunten a las versiones “correctas” de los archivos.

Además de la administración de la aplicación basada en plantillas, Virtuozzo ofrece las siguientes ventajas:

Copia de seguridad/restauración. Las imágenes del VE son muy compactas ? entre 10 y 100 veces más pequeñas que una imagen VM ? esto se debe al hecho de que el SO y la mayoría de las aplicaciones se guardan en las plantillas. Justamente este tamaño reducido de la imagen hace que el despliegue, la copia de seguridad, la restauración y la migración se efectúen más rápidamente que cuando se trata de una imagen VM.

Migración. Virtuozzo para Linux puede migrar un entorno virtual desde una máquina a otra a tiempo real, sin interrupción del servicio. No es necesario el almacenamiento en SAN ? Virtuozzo MOVERÁ los datos a través de una conexión Ethernet normal. Al fin y al cabo no hay tantos datos a transferir.

Tiempo de inicio/detención. El inicio y la detención de un entorno virtual se efectúa muy rápidamente debido a que no debe reiniciarse el SO.

Administración de recursos. Virtuozzo tiene una prestación avanzada de gestión de recursos, que incluye límites y garantías para la CPU, memoria, red, ancho de banda I/O y espacio de almacenamiento del disco. Un entorno virtual garantiza que se obtienen recursos de acuerdo con el SLA.

Escalabilidad y rendimiento. Virtuozzo no virtualiza ni emula hardware. Además, un solo VE puede usar todos los recursos de la máquina. Finalmente, ahora puede disponer de blades Exchange, AD o SQL Server.

Lea también :