Monitorizando Nextcloud desde Centreon
Y como no iba a faltar un post de cómo monitorizar Nextcloud con Centreon, con toda la matraca que os estoy dando de estos dos grandes productos! En este post veremos cómo monitorizar un entorno de Nextcloud pero con metricas muy muy interesantes! No sólo la máquina Linux, si no que también los servicios de Nextcloud! Atent@!
A parte de monitorizar como ya sabemos la máquina de Nextcloud, o sea los componentes básicos del sistema operativo, CPU, RAM, discos, etc.. que podéis utilizar este post para apoyaros y crear lo que necesitéis, este post va más orientado a lo dicho, los servicios que ofrece y métricas interesantes. Eso sí en el siguiente post también vamos a flipar con cosicas guays que sacamos en Nextcloud…
Venga, al grano! Lo primero, usaremos en este documento un maravilloso script de Kozliatko llamado check_nextcloud.py, con él vamos a poder sacar métricas como los usuarios que tenemos habilitados, el total de archivos que tenemos, los almacenes de datos, la base de datos, los datos de lo que comparten, número de ítems que comparten, y pudiendo ver el tipo, si tienen link, contraseña, etc… así como ver los usuarios activos en cada momento.
Para empezar, en la máquina de Centreon, nos descargamos el script que usaremos y lo ponemos en la carpeta de los plugins:
[sourcecode]wget https://raw.githubusercontent.com/BornToBeRoot/check_nextcloud/master/check/check_nextcloud.py
chmod +x check_nextcloud.py
mv check_nextcloud.py /usr/lib/centreon/plugins/[/sourcecode]
Recordar que como casi cualquier script, si le pasamos un /h podremos ver toda la ayuda y todas las posibilidades que nos dará. Ah por cierto, si tienes un certificado y te interesa monitorizarlo, puedes repasar este post, o si quieres ver si tiene algún puerto específico levantado repasa este otro…
Por cierto en este post omito la creación del Host en Centreon, que es la máquina de Nextcloud al uso, eso lo sabéis y si no, recordad que lo tenéis en el post de cómo monitorizar un equipo Linux.
Una vez el script lo tenemos listo, tenemos que dar de alta el Comando (desde “Configuration” > “Commands” > “Add…”), con crear un sólo Comando para monitorizar luego todos los Servicios nos valdrá, tendremos que indicar un usuario con privilegios de administrador en Nextcloud y su contraseña, seguido de la URL de nuestro sitio Nextcloud y al final le pasaremos un argumento indicando el tipo de chequeo que haremos:
- Command Name: check_nextcloud.py
- Command Type: $CENTREONPLUGINS$/check_nextcloud.py -u USUARIO -p CONTRASEÑA -H datos.openservices.eus -c $ARG1$
- Argumentos: Con poner 1 argumento nos vale y será para usarlo en el tipo de chequeo que hará.
En este ejemplo vamos a generar 5 Servicios con el Comando que acabamos de crear, los asociaremos al Host de Nextcloud que tendremos ya creado, desde “Configuration” > “Services” > “Add…”. Os dejo a continuación los 5 Servicios, os comento el Argumento que llevaría cada uno asociado y lo que podemos ver con ellos:
- Almacenamiento con el argumento ‘storage’ nos dirá los usuarios que están dados de alta en Nextcloud, el número de ficheros, el número de almacenes, de carpetas, etc…
- Base de datos con el argumento ‘database’ nos dirá la versión de MySQL y el tamaño de la BD.
- Compartido con el argumento ‘shares’ nos dirá todos los ítems que nuestros usuarios han compartido, si son carpetas, ficheros, con elnace, sin contraseña, con caducidad…
- Sistema con el argumento ‘system’ nos indicará si Nextcloud está corriendo y su versión.
- Usuarios activos con el argumento ‘activeUsers’ nos indicará las sesiones activas de usuarios que hemos tenido en los últimos 5 minutos, en la última hora o en las últimas 24 horas.
Como siempre, tras grabar y exportar la configuración de nuestro Centreon, podremos ver ya el estado de la monitorización en nuestro servidor de Nextcloud! Una maravilla! Conocemos a parte de los 5 Servicios creados, pues el consumo de CPU, Memoria RAM, Memoria Swap, Certificado, BBDD, Discos, red… que grande! Pues en un siguiente post alucinaremos con otras cosas cuquis que le podemos sacar… así que tod@s ojo avizor!