Monitorizar OpenNebula de manera sencilla con el siguiente tutorial
Con el fin de desarrollar el tema ¿Cómo monitorizar OpenNebula? mediante un orden lógico, veamos en primer lugar qué es OpenNebula, para luego, hacer una alusión minuciosa a su monitorización.
Así OpenNebula es una plataforma de administración de código abierto para construir nubes privadas, públicas e, incluso, híbridas SaaS. Como podrás suponer, instalar una nube desde cero puede ser algo complejo, ya que son muchos los conceptos y los componentes que están involucrados en el proceso mismo.
Eso sí, una vez que estás familiarizados con esos conceptos y componentes, como es el caso de la administración del sistema, la gestión de su visualización, la planificación de la infraestructura y otros conceptos a los que aludiremos más adelante, el proceso de instalación será menos complejo. De otra parte, pero en la misma dirección conceptual, vamos a plasmar (brevemente) una serie de pasos que, más adelante, adquirirán relevancia conceptual, cuando hablemos acerca de la forma de monitorizar OpenNebula.
Los pasos son:
○ Elegir el hipervisor
○ Diseñar e instalar la nube
○ Configuración de infraestructura y servicios
○ Operar la nube
○ Instalar componentes avanzados
○ Integrar con otros componentes
En lo que respecta a la elección del hipervisor que usaremos en nuestra infraestructura de nube, digamos que la distribución primigenia de OpenNebula brinda soporte completo para los dos hipervisores más utilizados, esto es, VMware (a través de vCenter) y KVM, en ambos casos en diferentes niveles de funcionalidad y profundidad. En lo que respecta, específicamente, a la visualización y administración de la nube en KVM, es necesario mencionar que muchas compañías y organizaciones utilizan OpenNebula con el fin de administrar la virtualización de centros de datos, para consolidar servidores y, también, para integrar activos de TI disponibles para computación, almacenamiento y redes.
Durante este proceso de implementación, OpenNebula se integra, de manera directa, con KVM, al tiempo que adquiere un completo control sobre los recursos físicos y virtuales, proporcionándonos avanzadas funciones para la optimización de los recursos, para la gestión de la capacidad, para la alta disponibilidad y, de paso y como consecuencia, para la continuidad del negocio. Es preciso aclarar, eso sí, que algunas de las precitadas implementaciones utilizan, adicionalmente, las variadas características de OpenNebula Cloud Management y, también, Provisioning, cuando es necesario federar centros de datos, ofrecer portales de autoservicio para usuarios finales y para la implementación de Cloudbursting.
En lo que respecta a Cloud Management, debemos tener en cuenta que diferentes compañías utilizan OpenNebula con el fin de brindar una capa de aprovisionamiento en la nube de múltiples usuarios. Ahora, estas implementaciones buscan características de elasticidad, aprovisionamiento y Cloud Multi-tenancy a la manera de federación de centros de datos, de centros de datos virtuales o, bien, de computación en nube híbrida, con el fin de efectuar la conexión de infraestructuras internas con nubes públicas, al tiempo que la infraestructura misma es administrada por medio de herramientas (ya familiares, por lo menos, hipotéticamente) para la operación y administración de infraestructura, como es el caso de vCenter Operations Manager y de vSphere.
Después de haber instalado la nube mediante un hipervisor, es posible añadir otros hipervisores. Además, es viable implementar entornos de “hiper-hipervisor” que sean heterogéneos y administrados por una sola instancia de OpenNebula. Una de las tantas ventajas de la utilización de OpenNebula en VMware, la podemos ver en la ruta estratégica hacia la apertura, a medida que las compañías u organizaciones van más allá de la virtualización hacia la nube privada.
Para ser más claros y explícitos, anotemos que OpenNebula es capaz de aprovechar la infraestructura existente de VMware y, de paso, proteger las inversiones de TI e integrar, de forma gradual, otros hipervisores de código abierto. De esta manera, evitamos el eventual bloqueo de proveedores futuros y, además, fortalecemos la posición de negociación de la compañía. Adicionalmente, existen otras tecnologías de virtualización, como Xen y LXC que son compatibles con la comunidad. Por otro lado, existe un catálogo de complementos de OpenNebula que podemos consultar si deseamos profundizar en el tema.
Para aprender a monitorizar OpenNebula, no consideramos necesario profundizar sobre lo que es el diseño, la instalación de la nube, la configuración de infraestructura y servicios, ni sobre el hecho de operar en la nube. Pero en lo que sí es necesario hacer énfasis, es en el paso que habíamos denominado “Integración de otros componentes”.
En vista de que no existen dos nubes iguales, OpenNebula ofrece un buen número de interfaces, que pueden ser utilizadas con la finalidad de interactuar con la funcionalidad que se ofrece, bien sea para administrar los recursos virtuales o físicos. Así, veamos lo que es la arquitectura modular y extensible, con complementos personalizables para llevar a cabo una integración con cualquiera que sea la plataforma de infraestructura de centros de datos de terceros, para la monitorización, el almacenamiento, la virtualización, la autenticación y el “estallido de la nube”, entre otros aspectos. Nos estamos refiriendo, más concretamente, a:
○ One Flow API: para crear, controlar y monitorear servicios o aplicaciones de varios niveles, que estén conformados por máquinas virtuales interconectadas.
○ Hook Manager: para activar los scripts de administración, al momento de cambiar el estado actual de la máquina virtual.
○ API para la integración: ésta API sirve para la integración con herramientas de nivel superior, como es el caso de los portales de autoservicio y la facturación. Brinda, a su vez, toda la funcionalidad del núcleo OpenNebula, mediante enlaces hacia Ruby y Java y, también, hacia la API XMLRPC.
○ Sunstone (servidor): rutas y, también, pestañas personalizadas para extender este mismo servidor, por supuesto.
¿Cuáles son los controladores de monitorización?
Los “Controladores de IM” o “Controladores de Monitorización” llevan a cabo la función de recopilar datos de supervisión de máquina virtual y host, de tal manera que ejecutan un conjunto de sondeos en los hosts mismos. Ahora, OpenNebula consulta esos datos de manera activa o, bien, son enviados por un agente (hacia el frontend) que se ejecuta en los hosts. Nos estamos refiriendo, más concretamente, a una guía o tutorial sobre el proceso de personalizar o, si se prefiere, añadir sondeos a los hosts. Además, se trata de un punto de partida acerca de la manera de crear, desde cero, un nuevo Controlador de IM o, lo que es lo mismo, un nuevo Controlador de Monitorización.
Así, es preciso que expliquemos lo relacionado con la ubicación de la sonda, para decir, en primera instancia, que las sondas predeterminadas se deben instalar en la interfaz, mediante la siguiente ruta:
○ KVM: antes de presentar la ruta, digamos que en este caso (KVM) las sondas se distribuyen en los hosts. Por ende, si la sondas son cambiadas, es necesario distribuirlas a los hosts ejecutando: .onehost sync . Veamos, ahora sí, la ruta:
/var/lib/one/remotes/im/kvm-probes.d
○ vCenter, Azure y EC2. La ruta es: /var/lib/one/remotes/im/<hypervisor> .d
En lo que respecta a la estructura general de la sonda, consideramos que para no ser demasiado extensos, lo mejor es que si estáis interesados visitéis el sitio web oficial de OpenNebula, con el fin de obtener una información precisa. Sin embargo, debemos anotar que un controlador de IM está compuesto por uno o varios scripts que escriben en la stdout la información de la forma en que, precisamente, está plasmada en la página a la que pretendemos conducir al lector mediante el anterior link. Aclaremos, eso sí, que cuando aterricemos en dicha página, al final de la misma nos encontraremos con lo siguiente:
“Ejemplo” o “Example” (si no lo traducimos al español):
IM_MAD = ( name = “ganglia”, ejecutable = “one_im_sh”, arguments = “ganglia” )
Entonces, al llegar (en la parte extrema inferior de la página a la que nos estamos refiriendo), a la codificación anterior, no encontraremos con dos opciones: “Anterior” y, también, con “Siguiente” o “Next”, que es la opción que debemos cliquear con el fin de continuar viendo (y analizando) la estructura de la sonda, que nos servirá para monitorizar OpenNebula. De otra parte, vamos a ver los motivos por los que es conveniente decidirse por OpenNebula, entre los cuales, encontramos que su monitorización es relativamente sencilla.
¿Por qué decidirse por OpenNebula en función de su monitorización?
- Cuando utilizamos la CLI de OpenNebula (o la interfaz web), podemos llevar a cabo un seguimiento de las actividades en el momento en que lo deseemos. Para tal efecto, tenemos un servicio de directorio central mediante el cual podemos agregar nuevos usuarios, al tiempo que éstos pueden tener derechos, individualmente considerados. En OpenNebula es fácil configurar nuevos sistemas virtuales, dirigirse a los usuarios y grupos correctos y, por supuesto, administrar sistemas.
- Disponibilidad permanente: OpenNebula no se ocupa, solamente, del aprovisionamiento inicial. Además de ello, cuenta con alta disponibilidad de su entorno en la nube, a la vez que dicha disponibilidad es mucho mejor que la de otras soluciones en la nube. Ahora, si pretendemos aumentar la disponibilidad, podemos configurar los servicios centrales de OpenNebula, aunque no es absolutamente necesario. Todos los sistemas siguen operando en su estado original, al tiempo que se incluyen de manera automática en la disponibilidad restaurada de los procesos de control.
- Fácil acceso remoto: en los entornos virtuales los usuarios carecemos de la capacidad de acceder al sistema, en los casos en los que se presentan problemas operativos o, bien, con el dispositivo. Pues bien, OpenNebula nos brinda una solución fácil, en cuanto a que con el navegador podemos acceder a la consola del sistema host, mediante un servidor integrado VNC.
- Supervisión y control completos: todos los sistemas host e “invitados” se pueden monitorizar, permanentemente, en OpenNebula, por lo que se mantienen actualizados los paneles de host y la VM, constantemente. Eso sí, dependiendo de la manera en que lo configuremos, una máquina virtual se debe reiniciar en caso de un fallo en el sistema host o cuando migre a un sistema diferente. Pero, si usamos un almacén de datos con acceso paralelo, podemos mover los sistemas mientras se encuentran en funcionamiento a un hardware diferente. Además, es posible minimizar la ventana de mantenimiento, al tiempo que se puede evitar completamente si se desea.
- Estándares abiertos: OpenNebula es 100 % de fuente abierta, bajo la licencia Apache. En tal virtud, brinda seguridad, escalabilidad y, también, libertad, siendo una solución confiable en la nube sin que se presenten bloqueos de proveedores, lo que redunda positivamente en un soporte considerable y en costes de seguimiento. Todo ello, por cuanto OpenNebula soporta estándares abiertos como OCCI y una generosa cantidad de otras arquitecturas abiertas.
En resumidas cuentas, OpenNebula es una excelente opción por muchos motivos. Una de las razones a destacar, es la posibilidad de llevar a cabo una monitorización sencilla. Sin embargo, y para que los lectores puedan ampliar su información al respecto, recomendamos acudir a Pandora FMS, donde encontrarán una gran cantidad de información adicional y de calidad, que es lo más importante, cuando de estos asuntos se trata.
Además, recordad que si tenéis que monitorizar más de 100 dispositivos también podéis disfrutar de una DEMO GRATUITA de 30 días de Pandora FMS Enterprise. Conseguidla aquí.
Rodrigo Giraldo, redactor técnico freelance. Abogado y estudiante de astrobiología, le apasiona la informática, la lectura y la investigación científica.