Skip to main content

Parámetros

Modo simple

--urlsURLs del endpoint de estadísticas de HAProxy, separadas por comas. Cada URL generará un agente.
--usernombre del usuario si el endpoint de HAProxy requiere autenticación básica, opcional
--passwordcontraseña si el endpoint de HAProxy requiere autenticación básica, opcional
--sslpara verificar si la URL tiene certificado HTTPS o no, opcional
--prefixprefijo para los nombres de los módulos, opcional
--transfer_modemodo de transferencia de datos (native o tentacle), opcional
--tentacle_ipip del tentacle, opcional
--tentacle_portpuerto del tentacle, opcional
--intervalintervalo de monitorización en segundos, opcional
--allow_listexpresión regular para incluir únicamente los módulos cuyo nombre coincida, opcional
--deny_listexpresión regular para excluir módulos cuyo nombre coincida, opcional
--monitor_frontendsmonitorizar filas de tipo frontend (type=0), opcional
--monitor_backendsmonitorizar filas de tipo backend (type=1), opcional
--monitor_serversmonitorizar filas de tipo server (type=2), opcional

Modo avanzado

--confruta del archivo de configuración
--conf_targetsruta del archivo con las URLs de HAProxy (obligatorio al usar --conf)

Archivo de configuración (--conf)

username= nombre del usuario si el endpoint de HAProxy requiere autenticación básica, opcional
password= contraseña si el endpoint de HAProxy requiere autenticación básica, opcional
verify_ssl= para verificar si la URL tiene certificado HTTPS o no, opcional
prefix= prefijo para los nombres de los módulos, opcional
transfer_mode= modo de transferencia de datos (native o tentacle), opcional
tentacle_ip= ip del tentacle, opcional
tentacle_port= puerto del tentacle, opcional
agents_group= nombre del grupo de agentes al que se asignarán los agentes creados, opcional
agents_group_id= id del grupo de agentes al que se asignarán los agentes creados, opcional
interval= intervalo de monitorización en segundos, opcional
allow_list= expresión regular para incluir únicamente los módulos cuyo nombre coincida, opcional
deny_list= expresión regular para excluir módulos cuyo nombre coincida, opcional
monitor_frontends= monitorizar filas de tipo frontend (type=0), opcional
monitor_backends= monitorizar filas de tipo backend (type=1), opcional
monitor_servers= monitorizar filas de tipo server (type=2), opcional

Ejemplo

[CONF]
username=admin
password=12345
verify_ssl=true
prefix=haproxy_
transfer_mode=native
tentacle_ip=127.0.0.1
tentacle_port=41121
interval=300
allow_list=
deny_list=.*_wredis|.*_wretr
monitor_frontends=true
monitor_backends=true
monitor_servers=true

Archivo de targets (--conf_targets):

http://192.168.0.10:8404/stats
http://192.168.0.11:8404/stats

Ejecución manual

El formato de la ejecución del plugin es el siguiente:

./pandora_haproxy --urls <urls del endpoint de HAProxy separadas por comas> --user <usuario> --password <contraseña> --ssl <true|false> --prefix <prefijo> --transfer_mode <native|tentacle> --tentacle_ip <ip del tentacle> --tentacle_port <puerto del tentacle> --interval <intervalo> --allow_list <regex> --deny_list <regex> --monitor_frontends <true|false> --monitor_backends <true|false> --monitor_servers <true|false> --conf <ruta al fichero de configuración> --conf_targets <ruta al fichero de URLs>

Ejemplos:

para ejecutar el modo simple

./pandora_haproxy --urls http://192.168.0.10:8404/stats,http://192.168.0.11:8404/stats --user admin --password 12345 --ssl false --transfer_mode native --tentacle_ip 127.0.0.1 --tentacle_port 41121

para ejecutar el modo avanzado

./pandora_haproxy --conf /etc/pandora/haproxy.conf --conf_targets /etc/pandora/haproxy_targets.conf

La ejecución devolverá una salida en formato JSON con información sobre la ejecución, y generará un fichero XML por cada agente monitorizado (en modo tentacle) que enviará al servidor de Pandora FMS por el método de transferencia indicado en la configuración. En modo native los datos se exponen en el campo monitoring_data del JSON de salida para que los consuma el servidor de Discovery.