Utilizando vCenter Orchestrator (vCO) para obtener datos

7 de octubre de 2014 por
Bacalov, Damian

vCenter Orchestrator es la herramienta de Orquestación de Infraestructura de VMware. Pero su potencia y versatilidad nos permite utilizarla para obtener datos de la situación actual de nuestra plataforma virtual.

Listados con vCO

Creando listados con vCO

En Wetcom descubrimos que existen muchas ocasiones en las que es muy conveniente obtener datos directamente desde vCenter Orchestrator para ser almacenados en una CMDB o para ver el estado actual de algunos componentes de nuestra infraestructura virtual.

Para lograrlo, desarrollamos un pequeño Framework que consta de un servicio web que se modifica según los requerimientos, una librería de comunicación con vCO y una metodología para la creación de workflows de consulta.

Creando los workflows

Los workflows de consulta incluyen el código para que obtengan los datos que necesitamos pero los presenta en un formato predefinido de XML. El objetivo es devolver listados de objetos de Infraestructura (Vms, Datastores, Hosts, Cluesters, etc) dentro de una estructura genérica.

Librería de comunicación

Creamos una pequeña librería de comunicación que entiende el formato XML genérico de los workflows de consulta y como transformarlos en objetos (también genéricos) que puedan ser utilizados por cualquier aplicación.

La librería también incluye una abstracción para hacer más simple la llamada remota a workflows de vCO así como también consultar su estado y obtener el resultado una vez finalizada la ejecución de los mismos.

Servicio Web

El Servicio Web es propio de cada escenario y su objetivo es presentar de forma directa los métodos de consulta correspondientes.

Tiene la capacidad de admitir “requests” tanto utilizando GET, POST, SOAP y JSON por lo que puede ser utilizado virtualmente desde cualquier sistema y con cualquier lenguaje.

Demostración

En el siguiente video se puede ver un ejemplo de consulta directa a vCO para obtener datos de Hosts, Datastores y Máquinas Virtuales de nuestra Infraestructura VMware.

La página HTML es estática y utiliza Javascript y JSON para consumir el Servicio Web.