Digital Ocean Discovery
Este documento describe la funcionalidad Digital Ocean del discovery de PandoraFMS.
- Introducción
- Prerrequisitos
- Parámetros
- Ejecución manual
- Discovery
- Agentes y módulos generados por el plugin
Introducción
Este plugin tiene como finalidad monitorizar droplets de Digital Ocean, mediante métricas claves referentes al CPU, memoria, disco, bandwith y status de estos , que son esenciales para llevar un control y seguimiento de estos recursos.
El plugin se conecta al API REST de Digital Ocean y monitoriza el entorno mediante las métricas anteriormente mencionadas, generando un agente para cada zona e instancia via XML que envía al servidor de pandora.
Prerrequisitos
- Conectividad a la API de Digital Ocean
Parámetros
Parámetros
--conf | Ruta al archivo de configuración |
Archivo de configuración (--conf)
token = < Token Bearer de autenticación >
agents_group_name = < Nombre del grupo de destino para los agentes creados >
threads = < Número máximo de threads utilizados >
interval = < Intervalo en segundos para los agentes >
use_prefix = < Activar con 1 para habilitar el uso de prefijos >
prefix = < Prefijo para el nombre de los agentes >
applicate_project = < Activar con 1 para poder especificar un proyecto al que apuntar >
filter_project = < Si se especifica un proyecto, solo se crearan agentes de estos >
transfer_mode = tentacle
data_dir = /var/spool/pandora/data_in
tentacle_ip = < IP de la máquina destino para los agentes creados >
tentacle_port = < Puerto de tentacle, por defecto : 41121 >
discard_activate = < Activar con 1 para poder especificar droplets que descartar en la monitorizacion >
discard_droplets = < Especifica droplets para descartar, ejemplo : ["droplet1","droplet2"]
Ejemplo
token = dop_v1_JSUzI1NiIsImtpZCI6IkVpeVhfTFFzSWpmcGtjZzM0blZrZDY3YUtMbzNqTWZmcmdLZ2NKbl
agents_group_name = Applications
threads = 2
interval = 300
use_prefix = 1
prefix = DigitalOcean.
applicate_project = 1
filter_project = SeraCents
transfer_mode = tentacle
data_dir = /var/spool/pandora/data_in
tentacle_ip = 172.42.42.101
tentacle_port = 41121
discard_activate = 1
discard_droplets = ["ubuntu-s-1vcpu-1gb-sfo3-01","ubuntu-s-1vcpu-4gb-sfo3-03"]
Ejecución manual
El formato de la ejecución del plugin es el siguiente:
./pandora_digitalocean --conf < ruta al fichero de configuración >
Por ejemplo:
./pandora_digitalocean --conf /usr/share/pandora_server/util/plugin/digitalocean.conf
La ejecución devolverá una salida en formato JSON con información sobre la ejecución, y generará un fichero XML para cada agente monitorizado que enviará al servidor de Pandora FMS por el método de transferencia indicado en la configuración.
Por ejemplo:
{"summary": {"Total agents": 18}}
Discovery
Este plugin puede integrarse con el Discovery de Pandora FMS.
Para ello se debe cargar el paquete ".disco" que puede descargar desde la librería de Pandora FMS:
https://pandorafms.com/library/
Una vez cargado, se podrán monitorizar entornos de Kubernetes creando tareas de Discovery desde la sección Management > Discovery > App
Para cada tarea se solicitarán los siguientes datos mínimos:
- Token: Token de digital ocean.
- Use prefix: Para especificar un prefijo en los agentes
- Filter project : Para apuntar a un proyecto determinado
- Discard droplets : Para descartar droplets
- Max threads: Número máximo de threads
- Tentacle IP: IP del servidor de Tentacle al que enviar los datos de los agentes. Normalmente este parámetro no se modificará.
- Tentacle port: Puerto del servidor de Tentacle al que enviar los datos. Normalmente este parámetro no se modificará.
Las tareas completadas con éxito tendrán un resumen de ejecución con la siguiente información:
- Total agents : Número total de agentes generados por la tarea.
Agentes y módulos generados por el plugin
La ejecución del plugin, creara los siguientes agentes y módulos:
- Agente global
< prefix ><Digital Ocean > |
Modules
Account balance |
Droplets |
Month to data balance |
Month to date usage |
- Un agente por cada droplet
< prefix >< Nombre Droplet > |
Modules
Status |
Cpu % |
Mem % |
Load 1 |
Load 5 |
Load 15 |
Public inbound |
Public outbound |
Private inbound |
Private outbound |
< Nombre del último backup > |
< Nombre del último snapshot > |
< Nombre disco > % |