Instalar check_mssql_health como plugin de nagios en CentOS 6

El objetivo de check_mssql_health es monitorizar las bases de datos internas a un sql server desde nagios, centreon o similar.

La conexión, se hace desde el monitor (nagios) hacia la base de datos, directamente por el puerto de base de datos. Por defecto, en las instalaciones MS SQL SERVER es 1433. En caso de no funcionar, habrá que revisar que no haya un cortafuegos (tanto de windows como físico) que corte el puerto 1433 entre el monitor y el SQL Server.

Instalación del check en CentOS 6

Descargar el paquete

Descomprimir, configurar e instalar:

   tar -xvzf check_mssql_health-1.5.19.1.tar.gz

cd check_mssql_health-1.5.19.1

./configure

./make

./make install

El directorio donde deja el script, no coincide con el directorio donde están los plugins en nagios sobre CENTOS. Por lo tanto, es importante moverlo:

mv /usr/local/nagios/libexec/check_mssql_health /usr/lib64/nagios/plugins/

Problema DB:Sybase

Al ejecutar mssql_health faltan  paquetes de perl:

> ./check_mssql_health –hostname host  –username nagios –password dkfjlskf –mode  database-online
CRITICAL – cannot connect to host . install_driver(Sybase) failed: Can’t locate DBD/Sybase.pm in @INC (@INC contains: . /usr/local/lib64/perl5 /usr/local/share/perl5 /usr/lib64/perl5/vendor_perl /usr/share/perl5/vendor_perl /usr/lib64/perl5 /usr/share/perl5) at (eval 17) line 3.
Perhaps the DBD::Sybase perl module hasn’t been fully installed,
or perhaps the capitalisation of ‘Sybase’ isn’t right.
Available drivers: DBM, ExampleP, File, Gofer, Proxy, SQLite, Sponge, mysql.
at ./check_mssql_health line 3045.

Instalamos perl-DBD-Sybase con yum:

 yum install perl-DBD-Sybase.x86_64 -y

Comando de nagios /etc/nagios/checkcommands.cfg

 

define command{
command_name                    check_mssql_health
command_line                    $USER1$/check_mssql_health –hostname $HOSTADDRESS$  –username $ARG1$ –password $ARG2$ –mode  database-online
;command_example                        !nagios!password
;$ARG1$                         Service
}

 

 

 

Autor: Ester Niclós Ferreras

http://www.linkedin.com/pub/ester-niclos-ferreras/9/887/3b4

1 opinión en “Instalar check_mssql_health como plugin de nagios en CentOS 6”

  1. Buenas tengo unas dudas con el plugin. Estoy haciendo un proyecto de final de ciclo sobre nagios y no logro conseguir monitorizar servicios de sql server. Mis conocimientos son muy basicos sobre el tema.

    La cosa es que intento lanzar el siguiente comando y me sale esto:

    root@thinksupport:/usr/local/nagios/libexec# ./check_mssql_health –server 10.0.0.130 –hostname ADMINSQL –username admin –password contraseña1 –mode database-online
    CRITICAL – DBI connect(‘;host=ADMINSQL;port=1433′,’admin’,…) failed: OpenClient message: LAYER = (0) ORIGIN = (0) SEVERITY = (78) NUMBER = (44)
    Server , database
    Message String: Server name not found in configuration files.
    OpenClient message: LAYER = (0) ORIGIN = (0) SEVERITY = (78) NUMBER = (45)
    Server , database
    Message String: Unknown host machine name.
    at ./check_mssql_health line 6343.

    No se si podrias ayudarme, si necesitas mas información dimelo.

Deja un comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *