Liberá todo el poder de las APIs con Cloudmonkey
14 agosto, 2024
Compartir:

Comercial

Liberá todo el poder de las APIs con Cloudmonkey

Liberá todo el poder de las APIs de la Nube de ARSAT con una sola herramienta: Cloudmonkey

Contexto

Muchas veces desde las áreas encargadas del despliegue y la operación de infraestructura IT, administración de sistemas y otras áreas similares es necesario realizar tareas complejas en las plataformas de nube que son difíciles de llevar a cabo desde una interfaz gráfica; ya sea por la escala de la tarea, por su complejidad o por la cantidad de pasos requeridos para llevarla a cabo desde la GUI. Para estos casos, resulta muy útil utilizar herramientas que interactúen directamente con las APIs de nuestro servicios de Nube y alcanzar todo el potencial que ellas nos brindan. Cloudmonkey es una de estas herramientas. Nos permite interactuar vía comandos API a los servicios IaaS y potenciar nuestra interacciones con el servicio.


Instalación de CMK o Cloudmonkey

La instalación cloudmonkey en sistemas operativos Linux es bastante sencilla y se realiza en 3 simples pasos:

1) Descargamos el binario:

wget https://github.com/apache/cloudstack-cloudmonkey/releases/download/6.4.0/cmk.linux.x86-64

2) Otorgamos permisos de ejecución:

chmod +x <archivo binario de cloudmonkey>

3) Lo movemos al path:

mv <archivo binario cloudmonkey> /usr/bin/cloudmonkey

:book: NOTA Última versiones disponibles y versiones para sistemas operativos Linux y Windows

:globe_with_meridians: https://github.com/apache/cloudstack-cloudmonkey/releases


Primer Acceso y Configuración a CMK

1) Una vez realizada la instalación, como primer paso ejecutamos el comando cloudmonkey (cmk) con siguiente comando:

$ cloudmonkey

Screenshot_1



2) Aquí definimos el nombre del perfil de la nube con la que vamos a interacturar:

(localcloud) 🐱 > set profile nube-arsat

Screenshot_2



3) Omitimos las advertencias de sincronizado y definimos la url de conexión a las API con el siguente comando:

(nube-arsat) 🐱 > set url https://cloud.arsat.com.ar/client/api

Screenshot_3



4) Ahora debemos ingresar a la UI de la plataforma que deseamos gestionar con cloudmonkey (Apache CloudStack) y en el menú "Accounts" - "nombre-cuenta" - "View Users" - "nombre-usuario" copiamos los valores "API Key" y "Secret Key" como se ve a continuación:

Screenshot_13


:rotating_light: Importante Tanto el valor apikey como el valor secretkey deben ser solicitados mediante un ticket al mail soporte@arsat.com.ar. Una vez resuelta la solicitud se podrán visualizar dichos valores desde la UI de la plataforma en la sección correspondiente, tal cual se observa en el ejemplo del caso.


5) Omitimos las advertencias de sincronizado y definimos la apikey y secretkey de nuestro usuario con los siguentes comando:

(nube-arsat) 🐱 > set apikey copiar-apikey-aquí

Screenshot_4

(nube-arsat) 🐱 > set secretkey copiar-secretkey-aquí

Screenshot_5



6) Por último realizamos las sincronización de las API con el comando sync obteniendo como resultado el descubrimiento de la totalidad de las API a las que se tiene permiso:

(nube-arsat) 🐱 > sync

Screenshot_6 Screenshot_7


7) Listo!:sparkles: Ya estamos listos para ejecutar comandos APIs.


Algunos ejemplos sencillos

Listar instancias o máquinas virtuales :computer:

 list virtualmachines filter=name,state,created

Listar redes :globe_with_meridians:

list networks filter=name,state,type,networkofferingname,

Listar discos :floppy_disk:

list volumes filter=name,type,vmname,state

Listar usuarios :construction_worker:

list users filter=created,username,firstname,lastname,roletype,is2faenabled,state,


:book: Nota La documentación completa de comandos API en :earth_americas:https://cloudstack.apache.org/api/


Multiple Perfiles

Adicionalmente cloudmonkey cuenta con la particularidad de poder utilizar múltiples perfiles de usuarios o plataformas de nube basadas en Apache CloudStack.

Para agregar perfiles adicionales es necesario llevar a cabo TODOS los pasos listados en el apartado anterior "Primer Acceso y Configuración a CMK" pero designando un nuevo nombre al perfil que se agrega y asignando los valores correspondientes a la nueva plataforma (URl) o al nuevo usuario (ApiKey y SecretKey).

Cambiar entre Perfiles

Para intercambiar entre perfiles creados en cloudmonkey utilizamos el comando set profile y evocamos el nombre del perfil al que se desea acceder como se observa a continuación:

(nube-básica) 🐱 > set profile nombre-de-perfil

:book: NOTA Al escribir el comando set profile y presionando la tecla "tab" (autocompletado) cloudmonkey lista los perfiles existentes disponibles previamente configurados. Se debe considerar que el nombre del perfil establecido es "key sensitive" por lo que para cambiar entre perfiles se debe respetar mayúsculas y minísculas del nombre del perfil preexistente.