Tema anterior: Modelo de aplicación de CA AppLogic®Tema siguiente: Dispositivos virtuales


Recursos virtuales

CA AppLogic® abstrae el sistema de hardware subyacente mediante la virtualización de los recursos de hardware. Se trata del primer sistema que hace portátiles e independientes del hardware a las aplicaciones Web distribuidas. Para lograrlo, se abstrae el hardware en tres tipos distintos de recursos virtuales: máquinas virtuales, volúmenes virtuales e interfaces de red virtuales.

El sistema de hardware es un grid de nodos informáticos o de almacenamiento conectados con una red de un gigabit, o más rápida, donde al menos un nodo actúa como controlador de grid. Cada nodo proporciona hasta tres agrupaciones de recursos virtuales, una para cada tipo de recurso. El controlador reúne las agrupaciones de recursos individuales en una sola agrupación de recursos distribuida y escalable. Como resultado, para cada tipo de recurso virtual hay una agrupación de recursos escalable válida para todo el sistema.

CA AppLogic® adjudica o crea recursos virtuales desde sus respectivas agrupaciones del sistema. Cada recurso lleva una identificación válida para todo el sistema. Esto permite un acceso uniforme a los recursos, independientemente de dónde se encuentren en el grid, y migrar recursos de forma transparente de un nodo a otro sin interrumpir las aplicaciones en ejecución.

Máquinas virtuales

CA AppLogic® implementa máquinas virtuales mediante la integración del gestor de máquinas virtuales Xen. Xen particiona un servidor físico en varias máquinas virtuales (VM). Cada máquina virtual arranca un sistema operativo distinto (por ejemplo, Linux) y ejecuta cualquier otro software con el que se haya configurado.

CA AppLogic® virtualiza el acceso a dos tipos de dispositivos periféricos: tarjetas de interfaz de red (NIC) y dispositivos de almacenamiento en bloque. También tiene la capacidad de migrar máquinas virtuales en caliente de un servidor a otro, de forma transparente al software que se ejecuta en cada máquina virtual.

Volúmenes virtuales

Un volumen de almacenamiento virtual o volumen virtual es un disco lógico expuesto por uno de los servidores del grid y al que se puede acceder desde máquinas virtuales que se ejecutan en cualquier servidor.

Los volúmenes virtuales son objetos persistentes nombrados. Su tamaño se define en el momento de su creación. Residen en el sistema hasta que se destruyen explícitamente.

Se puede acceder a un volumen virtual definido en uno de los servidores desde cualquier otro servidor que se encuentre en el mismo grid. Esto permite migrar libremente una máquina virtual que utilice el volumen a cualquier servidor. En la versión actual, cada volumen virtual individual se almacena como archivo en uno de los servidores, compartido en la red como volumen lógico y accesible para los demás servidores.

A un volumen virtual típico accede una sola máquina virtual. Siempre que varias máquinas virtuales compartan un volumen, el acceso a dicho volumen será normalmente de sólo lectura. Esto permite el almacenamiento agresivo en la memoria caché de la mayor parte de los volúmenes mediante los discos locales del servidor, donde se ejecuta la máquina virtual que accede al volumen.

Además, también se pueden crear varias instancias del mismo volumen virtual. Estas son útiles cuando existe la necesidad de compartir una gran cantidad de datos entre varias máquinas virtuales de manera que se permita a cada máquina virtual hacer modificaciones relativamente pequeñas en el conjunto común de datos, como los valores de configuración, los vínculos, etc.

Interfaces de red virtuales

CA AppLogic® utiliza interfaces de red virtuales para abstraer la estructura de la interconexión en la aplicación.

Una interfaz de red virtual es un punto de conexión único dentro del sistema de CA AppLogic®. Se puede vincular una instancia de una interfaz de red virtual a una tarjeta de interfaz de red virtual (vNIC) en el límite de una máquina virtual, lo que pondrá fin eficazmente a todo el tráfico que pasa a través de dicha vNIC.

Se pueden conectar dos interfaces de redes virtuales para formar un cable virtual, una conexión punto a punto que transmite el tráfico IP entre sus extremos independientemente de la tecnología de red subyacente. A continuación, el cable virtual se convierte en un equivalente lógico de un cable cruzado que conecta directamente dos tarjetas de interfaz de red: transfiere paquetes entre las dos vNIC.

En función de la red física utilizada, CA AppLogic® implementa cables virtuales dirigiendo el tráfico mediante conexiones IP o como una transferencia directa entre memorias, siempre que las dos interfaces de red estén en el mismo servidor. Todo ello es completamente transparente a las máquinas virtuales que realizan la comunicación.

Nota: Los cables virtuales hacen posible la migración de conexiones de red en caliente de un medio a otro. Por ejemplo, CA AppLogic® puede migrar una conexión a su servidor de base de datos de Gigabit Ethernet a 10 Gigabit InfiniBand sin interrumpir el flujo de transacciones.