Plugin NGINX Enterprise monitoring
Plugin para la monitorización de status de Nginx o Nginx plus
- Introducción
- Matriz de compatibilidad
- Pre requisitos
- Configuración
- Parámetros generales del plugin
- Parámetros específicos del plugin
- Ejecución manual
- Resolución de posibles problemas
- Configuración en Pandora
- Módulos generados por el plugin
Introducción
Ver. 140521
Coge los datos de status de la ip requerida y genera los módulos necesarios.
Tipo: Plug-in de agente
Matriz de compatibilidad
Sistemas donde se ha probado |
CentOS 7 |
Sistemas donde debería funcionar |
Cualquier sistema linux |
Pre requisitos
Se requiere :
- ngx_http_stub_status_module
- Instalación del agente de Pandora FMS
Se requiere tener habilitado el módulo “ngx_http_stub_status_module” de nginx, que es de donde el plugin va a coger los datos.
Configuración
Depende de si se ha compilado manualmente NGINX o el paquete precompilado que se esté usando puede que esté instalado el módulo “ngx_http_stub_status_module” o no, para verificar si está o no se puede usar el siguiente comando:
nginx -V | grep -o with-http_stub_status_module
with-http_stub_status_module
En este ejemplo vemos que esta instalado asi que podemos utilizarlo, de no ser el caso debemos compilar NGINX añadiendo el módulo:
./configure \
--prefix=/opt/nginx \
--sbin-path=/opt/nginx/sbin \
--conf-path=/opt/nginx/nginx.conf \
--pid-path=/opt/nginx/run/nginx.pid \
--with-http_ssl_module \
--with-http_gzip_static_module \
--with-http_stub_status_module
Configuración de status en NGINX
Vamos a declarar status dentro del fichero nginx.conf que está situado en /etc/nginx
Añadiremos /status a la derecha de location, tal como sale en la imagen.
Parámetros generales del plugin
./nginx_monitor_enterprise <ip> /status
Para hacer funcionar el plugin, se ejecutara seguido de la ip a monitorizar (debe incluir el puerto de nginx) y seguido de /status, como se vio en configuración se declara en "location", por defecto es status, asi que si le pones este nombre no será necesario incluirlo en el comando.
Parámetros específicos del plugin
Este plugin no contiene parámetros específicos, podremos ver un ejemplo de uso ejecutandolo sin ningún tipo de parámetro.
Ejecución manual
Podemos comprobar el plugin desde el terminal para ver si funciona, para comprobarlo, ejecutamos el plugin según los parámetros vistos antes, este nos devolvera datos en formato XML :
Para comprobar si funciona el .exe para agentes software windows lo haremos así, haciendo una llamada al path donde se encuentre con comillas:
Resolución de posibles problemas
Por defecto las colecciones tienen un limite de 1000000 bytes, por eso cuando subamos el plugin mediante colecciones nos dará este error :
Esto tiene fácil solución, deberemos aumentar el límite de las colecciones, para ello iremos a configuración>configuración>enterprise :
Y cambiamos esto:
En este caso yo he puesto 7000000 bytes, que es más que suficiente para el uso de este plugin.
Configuración en Pandora
Sin la configuración remota habilitada
Deberemos pasarnos el plugin a la maquina virtual, esto podemos hacerlo mediante pscp. Ejecutamos pscp y abrimos el terminal de windows, dentro para pasarnoslo usaremos este código:
pscp -P 22 <path-plugin> root@<ip-maquina>:<path-destino>
Ejemplo:
La recomendación es meter los plugins de agente en la ruta /etc/pandora/plugins para un uso más cómodo.
Para usarlo abriremos pandora_agent.conf
vim /etc/pandora/pandora_agent.conf
Y abajo de todo el archivo, cargaremos el plugin que hemos pasado a la maquina añadiendo :
module_plugin <path del plugin> <ip a monitorizar con el puerto nginx> <url de status>
Con configuración remota habilitada
Para habilitar la configuración remota tenemos que abrir el archivo pandora_agent.conf :
vim /etc/pandora/pandora_agent.conf
Dentro buscamos la línea remote_config, para habilitarla la ponemos en 1.
Hecho esto, para instalar el plugin con configuración remota habilitada hay dos opciones, la primera es :
Realizar el proceso de enviar el plugin a la máquina virtual como esta definido en la forma de instalar en plugin sin configuración remota habilitada descrita anteriormente, solo que en vez de meter la línea :
module_plugin <path del plugin> <ip a monitorizar con el puerto nginx> <url de status>
en pandora_agent.conf desde la máquina, lo haremos desde la consola , en el menu de agentes, pinchamos en configuración remota:
Y metemos la línea, después damos a actualizar:
La segunda opción es mediante colecciones.
Vamos a configuration > collections:
Pinchamos en crear :
Ponemos nombre y nombre corto y pinchamos en crear otra vez:
Cuando este creado vamos a archivos :
Pinchamos en "Upload":
Subimos el plugin y le damos a "ir":
Pinchamos en "volver a crear archivo" :
Vamos al menú de plugins de agente :
Metemos la ruta del plugin con la dirección ip a monitorizar, seguido de /status:
Se verá abajo que se ha cargado el plugin (en esta imagen puedes comprobar la forma en la que hay que introducir la IP, recuerda que hay un espacio entre la IP y /status.
Después, reiniciamos el agente con :
/etc/init.d/pandora_agent_daemon restart
Y si todo ha salido bien, deberían salir los módulos en el agente.
Instalar plugin en versión zip para dispositivos windows
Lo primero será instalar el agente software windows, lo podremos descargar de https://sourceforge.net/projects/pandora/files/
buscaremos para la versión de pandora que estemos usando, y pinchamos en windows :
Aquí descargaremos en agente windows, en este caso yo me bajare la versión de 64 bits :
Empezaremos la instalación del archivo, ponemos la ruta en la que queremos que se instale ("C:\Program Files" por defecto) y cuando se complete el proceso, ponemos la ip del server en el que se va a instalar el agente.
En la siguiente ventana marcamos la pestaña de configuración remota para que salga directamente habilitada.
Cuando este instalado, ya en la consola vamos a crear una colección, vamos a configuración > colecciones :
Subimos el archivo.zip y marcamos la pestañita que dice "descomprimir":
Hecho esto, damos a "volver a crear archivo" para que se guarde.
Luego vamos a recursos>gestionar agentes>módulos (del agente software windows) y vamos a colecciones :
Damos en la colección creada previamente al icono de "añadir" :
Una vez hecho esto, vamos a servicios y reiniciamos el agente :
Veremos que se nos ha creado la colección en "collections", en la carpeta donde se instalo el agente:
Después vamos a "plugins de agente" y hacemos la llamada al plugin de la la coleccion que hemos creado poniendo "Program Files\pandora_agent\collections\nginx-plus\nginx_monitor_enterprise\nginx_monitor_enterprise.exe" <ip ngins con el puerto> :
Veremos que ha aparecido abajo :
Vamos a agentes, pinchamos en configuración remota del agente windows :
Y abajo veremos como se nos ha creado esta línea :
Hecho esto, volvemos a reiniciar el agente software desde servicios, y ya se nos habran creado los módulos.
Módulos generados por el plugin
La ejecución estándar de este plugin devolverá los siguientes módulos por defecto (con todos los bloques opcionales habilitados):
Monitorización:
|
El número actual de conexiones activas de los clientes |
|
El número actual de conexiones aceptadas de los clientes |
|
El número total de conexiones gestionadas de clientes desde que se inició el proceso |
|
El número total de solicitudes de clientes desde que se inició el proceso |
|
Número de conexiones keep-alive |
|
Si el plugin se esta ejecutando, 1 si es así, 0 en caso contrario |
|
Excepción si no se generan los módulos anteriores. |
Asi se vería en la pantalla de módulos :
Y este es un ejemplo de como recoge los datos en la vista del agente :