Nagios – Monitorando filas OTRS
Si en nuestro entorno disponemos de OTRS como sistema de gestión y Nagios o Centreon como sistema de monitorización, podremos integrarlos y hacer auténticas maravillas, en este primer documento veremos algo muy sencillo: Cómo monitorizar las Colas que tengamos en OTRS desde Nagios o Centreon. Y ya seguiremos a futuro con otro tipo de integraciones!
Lo que necesitaremos para esto es muy sencillo, un pequeño script en PHP que descargaremos de Exchange Nagios en nuestra carpeta de plugins (/usr/lib/nagios/plugins) de nuestra máquina con Nagios o Centreon y hacerlo ejecutable. Obviamente, tenemos que tener ya creadas las colas en OTRS, y tiene que ser funcional tanto el OTRS como Nagios/Centreon!
En nuestro servidor OTRS, editaremos el fichero de configuración de MySQL (/etc/mysql/my.cnf) e verificaremos se temos os seguintes parâmetros nesta seção:
[Código-fonte][Mysqld]
max_allowed_packet = 20M
query_cache_size = 32M
innodb_log_file_size = 256M[/Código-fonte]
Devemos modificar as permissões no MySQL, para isso damos permissões, atenção que eu faço isso com o utilizador ‘root’, que poderíamos melhor ter um utilizador dedicado. Algo como:
[Código-fonte]mysql -u raiz -p
GRANT ALL PRIVILEGES ON *.* TO ‘root’@’%’;
select host from mysql.user where user = ‘root’;
GRANT SELECT ON otrs.* TO ‘root’@’192.168.1.102’;
PRIVILÉGIOS FLUSH;
quit[/Código-fonte]
E após reiniciar os serviços já poderemos começar a fazer consultas com o utilizador root desde a máquina de Centreon ou Nagios!
[Código-fonte]/etc/init.mysql restart[/Código-fonte]
E de volta ao nosso Nagios, se quisermos testá-lo, abrimos uma shell e vamos ao diretório dos plugins, ahí habremos descargado el ‘check_otrs.php’, probamos a ejecutarlo!
Con el siguiente comando podremos visualizar el estado de los tickets de una cola, filtrando por Estado y Cola, además de que nos notifique un Warning o un Critical dependiendo del número de Tickets que haya en una Cola:
[Código-fonte]./check_otrs.php -H DIRECCION_IP_OTRS -u root -p CONTRASEÑA_ROOT_MYSQL -d BASE_DATOS -t ESTADO -q COLA -w WARNING -c CRITICAL[/Código-fonte]
Portanto, si vamos a nuestro Centreon, tendremos que dar de alta primeramente el Comando que vamos a usar, Vamos “Configuração” > “Comandos” > “Adicionar” y lo dejamos algo así:
- Nome do comando: Normalmente le llamamos como el script, check_otrs.php.
- Tipo de comando: Seleccionamos ‘Check’.
- Linha de comando: Indicamos lo que debe ejecutar cuando se llame a este Comando, nos basamos en el ejemplo anterior que puse, que cumplimentaremos con argumentos:
[Código-fonte]$USER1$/check_otrs.php -H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$ -d $ARG3$ -t $ARG4$ -q $ARG5$ -w $ARG6$ -c $ARG7$[/Código-fonte]
- Descrições dos Argumentos: Devemos preencher os argumentos, para que quando utilizarmos este Comando a partir de um Serviço relacionemos o que devemos preencher! O primeiro argumento será o utilizador de MySQL, o segundo será a sua palavra-passe, o terceiro será a base de dados do OTRS, o quarto será o Tipo ou Estado do Ticket, e o quinto argumento será a Fila de OTRS.
Gravamos com “Salvar”,
Podemos já criar as Filas que queremos monitorizar, para isso criaremos um Serviço por Fila, desde “Configuração” > “Serviços” > “Adicionar…” (ou clonamos melhor de um existente) e adicionamos ao Host do OTRS cada verificação. Damos um nome ao serviço que associamos à fila que monitorizamos, le asociamos habitualmente la plantilla de servicio genérica, indicamos que utilice el Comando que acabamos de crear en el paso anterior (check_otrs.php), y cumplimentamos lo que nos pregunta, que se lo pasará como argumentos a la hora de ejecutar este checkeo.
Gravamos com “Salvar”, exportamos la configuración y recargamos Nagios/Centreon.
E nada! Ya si volvemos a la vista de “Monitorização” veremos todas las Colas de OTRS que ya tenemos monitorizadas! Facilisimo, Não?? Espero que os sea de utilidad, gracias a todos por compartir!!














































