Según algunas estimaciones, la nube empresarial, también conocida como nube privada, se está adoptando a un ritmo más rápido que la nube pública. La consultora empresarial Accenture estima que la penetración de la nube privada en las empresas será del 77 por ciento a finales de 2011.1 Gran parte de este rápido movimiento para crear una infraestructura ágil en el sitio se debe a la necesidad, por parte de los departamentos de TI de empresas grandes y pequeñas, de mantener el control y la gestión internos tanto de la infraestructura como de los datos.
Una vez tomada la decisión de adoptar una infraestructura en la nube, la elección entre interna/privada y externa/pública se reduce a un análisis de costos, riesgos y valor. Una nube pública generalmente ofrece un enfoque flexible y el mayor ahorro de costos; sin embargo, conlleva riesgos asociados con la seguridad, los acuerdos de nivel de servicio (SLA), la disponibilidad y la administración. La TI puede aprovechar una escala casi ilimitada a un bajo costo de entrada, pero sacrifica el control. Pasar de un centro de datos tradicional alojado o local a una nube pública externa es básicamente como trasladar todo su centro de datos a manos de otra persona.
Con una nube empresarial, TI tiene el nivel de control que requiere y evita los riesgos asociados con una nube pública; pero una nube privada es más costosa de implementar, requiere niveles adicionales de conocimiento y experiencia por parte del personal y agrega un mayor nivel de complejidad al centro de datos local. La infraestructura de nube empresarial se puede escalar según sea necesario y brinda aprovisionamiento dinámico y agilidad, pero esa escala y control a menudo implican un mayor costo de entrada.
Juntos, F5 Networks® e IBM han diseñado una arquitectura de referencia para la nube empresarial que alivia muchos de los desafíos asociados con la complejidad. Incorpora muchos de los componentes de arquitectura y escala de una nube pública a las instalaciones para reducir significativamente el costo de construir un sistema interno fragmentado. Al predefinir los componentes necesarios y describir cómo esos componentes funcionan juntos, F5 e IBM han creado una infraestructura de nube empresarial completa, dinámica y ágil.
El elemento más importante de un sistema de aprovisionamiento bajo demanda es la capacidad de tomar decisiones y realizar acciones en función de los eventos. Un evento en algún lugar del sistema crea una alerta o mensaje que es recogido por un componente (ya sea uno que se haya suscrito al bus de mensajes o uno que haya sido solicitado directamente a través de una llamada API), que luego actúa sobre ese mensaje. El flujo de trabajo es el proceso y el orden en que los componentes actúan sobre los mensajes del sistema.
En una nube empresarial, el flujo de trabajo generalmente se divide en componentes de aprovisionamiento que solicitan o ceden recursos y los pasos necesarios para gestionar la asignación de recursos. A medida que una máquina virtual (VM) necesita recursos de CPU adicionales, se inicia un flujo de trabajo para determinar de dónde provendrán esos recursos de CPU, iniciar una nueva VM, asignar una dirección IP, etc.
La arquitectura de nube empresarial de F5 e IBM se basa en dos principios fundamentales:
Más allá de estos dos principios, la arquitectura de referencia de F5 e IBM es extremadamente maleable, lo que significa que puede adaptarse a cualquier centro de datos o arquitectura de nube existente. Si ya existe un motor de orquestación para administrar la implementación de máquinas virtuales, por ejemplo, esta arquitectura de referencia se puede adaptar para que se pueda utilizar el motor existente. Un concepto erróneo con respecto a la creación de una nube empresarial es que se debe reemplazar toda la infraestructura; la solución de F5 e IBM fue creada para integrarse con los componentes existentes en cada paso posible.
Independientemente de qué componentes ya existen y cuáles son nuevos, el flujo de trabajo de la nube empresarial se compone de componentes específicos que realizan tareas específicas. Todo el sistema de nube está compuesto de estos componentes individuales, que trabajan juntos para proporcionar la infraestructura de nube completa. Esa infraestructura se alimenta y controla a través de flujos de trabajo de componentes: tareas coordinadas que gestionan un evento en la nube.
El bus de mensajes es el sistema que transporta mensajes basados en eventos y alertas a cada componente afectado. Cuando un evento activa un mensaje, ese mensaje se envía a través del bus de mensajes a un componente particular, que tiene reglas sobre qué hacer con ese mensaje. El bus de mensajes también es responsable de normalizar los mensajes según reglas para componentes específicos.
La arquitectura de nube de referencia de F5 e IBM utiliza la solución IBM Tivoli Netcool OMNIbus como bus de mensajes central, sin embargo se puede utilizar cualquier bus de mensajes empresarial para transportar notificaciones de eventos por todo el sistema.
Se puede pensar en el orquestador como el cerebro de la nube empresarial: el componente responsable de tomar la mayoría de las decisiones de aprovisionamiento macro basadas en los mensajes recibidos a través del bus. El orquestador iniciará eventos y flujos de trabajo importantes en la arquitectura de la nube, como por ejemplo el inicio del flujo de trabajo de “aprovisionamiento de nueva máquina virtual”. El orquestador también es responsable de obtener los datos necesarios para cada flujo de trabajo y proporcionarlos a los componentes correspondientes; por ejemplo, el orquestador proporcionaría la información de dirección IP necesaria para aprovisionar una nueva máquina virtual.
Para la arquitectura de referencia, el orquestador se crea utilizando una serie de scripts interpretados que actúan sobre los mensajes del bus e inician eventos de flujo de trabajo. Se puede utilizar cualquier tipo de orquestador, como IBM Tivoli Intelligent Orchestrator, HP Operations Orchestration o VMware vCenter Orchestrator.
El controlador de la nube es el sistema front-end responsable de recopilar y agregar los datos preliminares necesarios para iniciar un proceso de aprovisionamiento. Inicialmente, esta información es proporcionada por un administrador como parte del proceso de creación y es específica para cada tipo de flujo de trabajo utilizado para el aprovisionamiento. Por ejemplo, el controlador de la nube recopila información que incluye la ubicación de la máquina virtual, la clase de aplicação (servidor web, servidor de base de datos, servidor de correo, etc.) y los requisitos mínimos de recursos.
Durante un evento de aprovisionamiento automatizado, y una vez que estos datos preliminares ya se han almacenado en el sistema, el orquestador solicita y extrae la información existente para iniciar el flujo de trabajo de aprovisionamiento. Algunos ejemplos de controladores de nube incluyen Eucalyptus Cloud Controller, VMware vCloud Director o Amazon EC2. Para un futuro crecimiento y capacidad de expansión a otras plataformas en la nube, es una buena práctica elegir un controlador de nube que pueda integrarse o comunicarse con un conjunto estándar de API en la nube. Esto permite que el controlador de nube se extienda a un proveedor de nube híbrida sin tener que rediseñar la plataforma de nube empresarial.
El controlador de clúster es el componente de la nube empresarial responsable de administrar la máquina virtual que se está aprovisionando, así como el almacenamiento y los metadatos necesarios para ejecutar la VM. Como entorno de ejecución de la máquina virtual, el controlador del clúster incluye el hipervisor de la plataforma virtual y también puede incluir el entorno de gestión del hipervisor más grande. Por ejemplo, el controlador del clúster podría ser un hipervisor básico, como VMware ESXi, o una colección más grande de sistemas de hipervisor distribuidos, como VMware vSphere o VMware vCloud.
La monitorización del estado y la salud son elementos esenciales en cualquier implementación de aplicação empresariales. La supervisión también proporciona actualizaciones de estado para los sistemas de aprovisionamiento, por ejemplo, cuando una máquina virtual está en funcionamiento y responde a las conexiones en la red. La monitorización continua del sistema puede proporcionar alertas en tiempo real que, en última instancia, alimentan nuevos flujos de trabajo y afectan las decisiones de aprovisionamiento. Cualquier componente que sea capaz de supervisar el estado de las aplicação y de la red se puede utilizar en la implementación de la nube empresarial; sin embargo, el software IBM Tivoli Monitoring se utiliza en la arquitectura de referencia de F5 e IBM.
El sistema de nombres de dominio (DNS) desempeña un papel fundamental en la arquitectura de referencia de la nube empresarial de F5 e IBM: Es responsable de almacenar no solo la información de IP y nombre de dominio para IPv4 e IPv6, sino también los metadatos del sistema, como la información recopilada por el controlador de la nube y la información de identificación única de la máquina. Para esta arquitectura de referencia, se eligió DNS como ubicación de almacenamiento de metadatos porque es un sistema basado en estándares que ya existe en la mayoría de las redes, está disponible para todos los componentes de la nube y alivia el requisito de agregar almacenamiento adicional de tipo base de datos a la infraestructura. Se puede utilizar cualquier solución DNS administrada por TI y que tenga la capacidad de agregar zonas y archivos de zona adicionales.
Para la arquitectura de referencia F5 e IBM, el controlador de clúster ejecuta la máquina virtual desde el almacenamiento local; sin embargo, cuando no se está ejecutando, el disco virtual de la VM está en el almacenamiento virtualizado. Durante un evento de aprovisionamiento de flujo de trabajo, el controlador del clúster solicitará el disco virtual del dispositivo de almacenamiento virtual a través del Sistema de archivos de red (NFS).
El último componente de la nube empresarial es el controlador de entrega de aplicação (también conocido como equilibrador de carga), que, en la arquitectura de referencia de F5 e IBM, es F5® BIG-IP® Local Traffic Manager™ (LTM). BIG-IP LTM administra las conexiones, los servicios y la entrega de los datos de la aplicação provenientes de la máquina virtual. En última instancia, BIG-IP LTM es la parte final del sistema que actúa en un evento de aprovisionamiento de flujo de trabajo.
El objetivo de la arquitectura de referencia de nube empresarial de F5 e IBM es proporcionar una plataforma basada en recursos del mundo real para implementar aplicações de forma dinámica. Una vez que todos los componentes están en su lugar, trabajan juntos (a través de varios flujos de trabajo) para proporcionar nuevos servicios de aplicação según sea necesario. Hay dos formas de aprovisionar sistemas instalados en la nube empresarial: aprovisionamiento manual y aprovisionamiento automatizado.
Normalmente, el primer flujo de trabajo en la nube empresarial se inicia a partir de un proceso manual basado en la información del administrador del sistema o del solicitante de la aplicação . Esto no quiere decir que el flujo de trabajo sea manual; solo el acto de ingresar información en el sistema por primera vez es manual. Una vez que se recopilan los datos del administrador, el sistema inicia eventos de flujo de trabajo automatizados predefinidos para el aprovisionamiento de aplicação .
Al utilizar la GUI del controlador de nube, el administrador (o el solicitante de la aplicação , según quién sea responsable de iniciar un nuevo evento de aprovisionamiento) ingresa la información necesaria para poner en marcha una nueva máquina virtual y poner una aplicação en línea. Esta información suele ser datos de infraestructura de nivel superior, como:
Esta información se utiliza como metadatos para el aprovisionamiento automatizado en toda la nube empresarial.
Una vez que el administrador envía los datos necesarios, el siguiente paso es que el controlador de la nube empaquete esa información (junto con un ID de instancia único creado dinámicamente y utilizado en todo el sistema para identificar esta instancia para el aprovisionamiento, como "vm12345") y la distribuya al orquestador a través del bus de mensajes.
Toda la información proporcionada durante el primer paso es normalizada por el bus de mensajes antes de su entrega al orquestador.
Al mismo tiempo, el controlador de la nube proporciona los mismos metadatos y una identificación de instancia única al hipervisor, a través de una API, y le indica que implemente la imagen de aplicação requerida. Este evento solicita al hipervisor que solicite la imagen de disco de la máquina virtual correspondiente desde el almacenamiento basado en la nube. El dispositivo de almacenamiento recupera la imagen de disco adecuada a través de NFS y comienza a copiar esa imagen al almacenamiento local.
Una vez que el orquestador recibe la información de eventos normalizada y los metadatos del bus de mensajes, inicia dos flujos de trabajo diferentes que envían simultáneamente los metadatos a los sistemas de monitoreo y al DNS. Los sistemas de monitoreo utilizan esta información para configurar un programa de monitoreo automatizado para la aplicação y comienzan a monitorear la aplicação luego de recibir la notificación de que está en funcionamiento. Durante este paso, el orquestador también definirá umbrales para los eventos del sistema de monitoreo; por ejemplo, indicará al monitor que envíe una notificación de evento cuando la CPU de esta instancia virtual exceda el 75 por ciento de utilización.
El orquestador también envía los metadatos de la instancia virtual al DNS, donde esos datos se almacenan para su uso en toda la nube empresarial. El orquestador es responsable de enviar los metadatos en el formato de zona DNS apropiado, por lo que debe construir nombres de dominio basados en el ID de instancia, crear registros DNS IPv4 e IPv6, agregar información de instancia desde el controlador de nube y agregar la nueva información de instancia a la zona apropiada. Por ejemplo, el orquestador tomará el ID de instancia único, creará una entrada DNS para “vm12345.vm.cloud.example.com” y la agregará a la zona example.com existente.
El paso final para distribuir metadatos en toda la nube empresarial es completar el controlador de entrega de aplicação BIG-IP LTM con la nueva información de instancia, como nombre de host, dirección IP, tipo de aplicação (o grupo en BIG-IP LTM) e información de monitoreo.
En el paso 2, el controlador de la nube le indicó al hipervisor que iniciara la máquina virtual asociada con la instancia recién aprovisionada. Una vez que la máquina virtual esté funcionando como se espera y disponible para las conexiones, notificará al orquestador a través de una alerta de evento en el bus de mensajes. El orquestador tomará esa alerta de evento e iniciará un flujo de trabajo que le indica a BIG-IP LTM que marque la nueva VM como disponible en el grupo y que comience a enviar y distribuir nuevas conexiones a la instancia virtual en función del método de equilibrio de carga. BIG-IP LTM también comenzará a monitorear la nueva instancia con el monitor de aplicação previamente configurado y asignado al grupo de aplicação .
La alerta de evento de la nueva máquina virtual en ejecución también solicitará al orquestador que notifique al sistema general de monitoreo de la nube empresarial para comenzar a monitorear la instancia virtual. En este punto, la instancia virtual recién aprovisionada está en funcionamiento en la nube empresarial y gestionando solicitudes de servicio de aplicação . Este es el modo operativo normal de todos los servicios que forman parte de la nube empresarial.
El aprovisionamiento manual es el primer paso del flujo de trabajo para aprovisionar servicios dentro de la nube empresarial, pero no es la forma más frecuente de aprovisionamiento. En un sistema que funciona sin problemas, la nube empresarial pasa a un sistema más dinámico y fluido de autosupervisión, y autoabastece nuevos servicios según sea necesario y en función de la demanda. Este autoaprovisionamiento ágil es el núcleo de cualquier plataforma en la nube y requiere eventos y flujos de trabajo de aprovisionamiento automatizados adicionales para monitorear y reaccionar ante eventos en tiempo real.
El primer paso de cualquier sistema de aprovisionamiento automático es la monitorización: recopilar y detectar eventos en todo el sistema. Durante la primera ronda de aprovisionamiento manual, los sistemas de monitoreo se completaron con información de instancias virtuales, como nombre, ubicación, tipo de monitoreo y umbrales de eventos. Esta información se utiliza para supervisar automáticamente la disponibilidad y el rendimiento de las aplicações y las instancias virtuales. Una vez que el sistema de monitoreo detecta un evento (por ejemplo, una instancia virtual determinada que consume más del 75 por ciento de los recursos de CPU disponibles), generará un evento en el bus de mensajes que alertará al orquestador sobre los recursos agotados.
En un escenario típico de aprovisionamiento automatizado, el orquestador es responsable de crear una nueva instancia virtual que ayudará a aliviar la carga de recursos en la instancia actual. Se utilizarán dos o más instancias virtuales para distribuir las cargas de red y de procesamiento de la aplicação .
Para iniciar un flujo de trabajo de aprovisionamiento automatizado, el orquestador debe ser responsable de recopilar eventos de componentes, así como de solicitar los metadatos necesarios para aprovisionar una nueva instancia virtual. En la arquitectura de referencia de F5 e IBM, los metadatos se almacenan en DNS y se completan como parte del flujo de trabajo de aprovisionamiento manual original. El DNS devolverá información (por ejemplo, tipo de aplicação , ubicación geográfica y umbrales de aprovisionamiento) al orquestador, como por ejemplo, tipo de aplicação , ubicación geográfica y umbrales de aprovisionamiento.
En el paso final de un flujo de trabajo de aprovisionamiento automatizado, el orquestador envía los metadatos adquiridos del DNS al controlador de la nube a través del bus de mensajes. Básicamente, este paso automatizado simula el paso en el que un administrador ingresa información de la máquina e inicia manualmente el flujo de trabajo de aprovisionamiento. El controlador de la nube tomará esta información (tal como lo haría el administrador en el aprovisionamiento manual) y comenzará un nuevo flujo de trabajo de aprovisionamiento de instancias virtuales. A partir de este punto, se repiten los pasos de aprovisionamiento y los flujos de trabajo detallados anteriormente hasta que la nueva instancia virtual esté en funcionamiento y acepte nuevas conexiones.
Una implementación típica de nube empresarial incluirá flujos de trabajo de aprovisionamiento tanto manuales como automatizados. Los nuevos servicios o aplicações se implementarán inicialmente mediante un flujo de trabajo manual para que un administrador pueda controlar cómo y dónde se implementa el servicio. Una vez que un servicio está en funcionamiento, los flujos de trabajo de aprovisionamiento automatizados gestionarán el aprovisionamiento en función de las necesidades y la disponibilidad de recursos.
La decisión de implementar una nube empresarial privada no debería implicar un aumento de la complejidad o de la inoperabilidad. El propósito de cualquier implementación de nube es reducir las barreras de creación de nuevos servicios y proporcionar una infraestructura informática más ágil. Una nube empresarial lleva esa agilidad al centro de datos para lograr una capacidad de administración y un control significativamente mejorados.
Con IBM, F5 ha creado una arquitectura de referencia para una nube empresarial con aprovisionamiento automático. Esta arquitectura está diseñada para ser modular y flexible, lo que permite que los componentes existentes se integren según sea necesario y que toda la nube empresarial se conecte a cualquier otra plataforma de nube a través de API y una infraestructura de mensajería compartida. Ninguna nube empresarial privada es igual a otra; sin embargo, la arquitectura de F5 e IBM se adaptará a diferentes entornos, al tiempo que aportará los beneficios de una infraestructura ágil a cualquier implementación de aplicação o centro de datos.
1 Babcock, Charles (18 de enero de 2011). “Nubes privadas despegando”. Semana de la información. Web.
La comunidad de F5 para foros de discusión y artículos de expertos.