openSYD

Autour de la distribution Ubuntu et du Logiciel Libre

Recevoir ses alertes Nagios sur un compte Jabber

Jabber est un système de messagerie instantanée libre, standard et ouvert, qui va nous permettre d’être averti des alertes du logiciel de supervision Nagios.

Nous utiliserons pour cela le paquet sendxmpp qui, couplé au logiciel de monitoring Nagios, permettra de recevoir les notifications en temps réel sur une messagerie instantanée Jabber (dont Gmail fait parti, quoique discutable). Après quelques galères sur plusieurs solutions disponibles ici et , voici une solution parmi d’autres mais qui a le mérite de fonctionner sur ma ubuntu-server LTS.

sendxmpp est un script Perl disponible dans le dépot universe qui permet de manière très simple d’envoyer des messages Jabber en ligne de commande.

Vous devez juste disposer d’une adresse Jabber (disponible gratuitement sur jabber.apinc.org) pour le logiciel Nagios et qui servira à envoyer les messages sur votre adresse.

Installer et configurer sendxmmp

sudo aptitude install sendxmpp

Il faut ensuite créer un fichier /etc/nagios/sendxmpprc et l’éditer pour y indiquer les paramètres de votre compte jabber ; exemple de contenu du fichier :

useraccount@jabber.org password

Il vous faudra changer les permissions de ce fichier pour que sendxmpp puisse l’utiliser.

sudo chmod 0600 sendxmpprcsudo chgrp www-data sendxmpprcsudo chown nagios sendxmpprc

Paramétrage de Nagios

Editer le fichier misccommands.cfg (situé dans /etc/nagios/ chez moi) et ajouter les 2 notifications suivantes :

# 'notify-by-jabber' personnal command definitiondefine command{  command_name notify-by-jabber  command_line /usr/bin/printf "%b" "** $NOTIFICATIONTYPE$ alert - $HOSTALIAS$/$SERVICEDESC$ is $SERVICESTATE$ **" | /usr/bin/sendxmpp $CONTACTEMAIL$ -f /etc/nagios/sendxmpprc  }

# 'host-notify-by-jabber' personnal command definitiondefine command{  command_name host-notify-by-jabber  command_line /usr/bin/printf "%b" "Host $HOSTSTATE$ alert for $HOSTNAME$!" | /usr/bin/sendxmpp $CONTACTEMAIL$ -f /etc/nagios/sendxmpprc  }

Ensuite, créer un nouveau contact dans le fichier contacts.cfg en précisant le mail jabber auquel seront envoyées les notifications :

define contact{        contact_name                    sidney_v-jabber        alias                           sidney_v        service_notification_period     24x7        host_notification_period        24x7        service_notification_options    w,u,c,r        host_notification_options       d,u,r        service_notification_commands   notify-by-jabber        host_notification_commands      host-notify-by-jabber        email                           useraccount-dest@jabber.fr        }

Il ne vous reste plus qu’à associer le contact à un groupe de contacts puis le contactgroup à un service ou un hôte et le tour est joué !

sendxmpp-nagios.png

nota : si votre serveur Jabber ne supporte pas SASL (erreur ‘undefined value as a HASH reference’), la solution est sur ce site.

Les articles sur le même sujet :


Tags , , + Dans la catégorie Actu libre

5 commentaires

  1. Tout simplement génial merci beaucoup pour ce post ;)

  2. Sinon il existe une super extension firefox qui a le même but :

    https://addons.mozilla.org/fr/firef...

  3. Nous on utilise un système qui s’appelle alarmTILT.
    Pour plus d’infos:
    http://www.alarmtilt.com/?action=so...

  4. Bonjour,

    j’aimerai avoir des éclaicissement concernant cette partie:

     » il faut ensuite créer un fichier /etc/nagios/sendxmpprc et l’éditer pour y indiquer les paramètres de votre compte jabber ; exemple de contenu du fichier :

    useraccount@jabber.org password  »

    si c’est l’adresse IP du serveur qu’on doit ajouter ou les comptes des utilisateurs à notifier

  5. Bonjour,

    Il n’est pas utile de renseigner l’adresse IP d’un quelconque serveur. Les informations réseaux de la machine (et notamment la passerelle) seront utilisées.

    C’est bien l’adresse de type mail du compte jabber et le mot de passe qu’il vous faut saisir dans le fichier /etc/nagios/sendxmpprc

    Attention lors des copier/coller de commandes : ce thème ne semble pas tenir compte des retours à la ligne

Laisser un commentaire