ServiceNav propose plusieurs méthodes de notifications :
• Mail, SMS, Push Mail (application mobile) et SysLog
La politique de notification est entièrement paramétrable en fonction :
– des plages horaires
– des types d’événements (Alerte, Alerte Critique, Retour à la normale…)
– des méthodes utilisées pour envoyer la notification (mail, SMS, push applicatif, Syslog)
Nous allons nous intéresser ici à la notification par Syslog.
L’objectif est de permettre à l’utilisateur ServiceNav de consolider toutes les notifications dans un serveur Syslog centralisé pour traitements ou archivages.
Cette méthode permet l’écriture dans un fichier Syslog sur changement d’«Etat Nagios» de type HARD uniquement.
Pré-Requis : Mise en place d’un serveur Syslog
En tant que protocole, Syslog se compose d’une partie cliente et d’une partie serveur. La partie cliente émet les informations sur le réseau, via le port UDP 514. Les serveurs collectent l’information et se chargent de créer les journaux.
Le boitier de supervision ServiceNav peut être utilisé comme client ou comme client et serveur.
Remarque : Vous pouvez néanmoins utiliser votre propre serveur Syslog. Le boitier de supervision sera utilisé uniquement comme client pour rediriger les événements vers votre serveur Syslog.
Configurer le boitier en tant que client :
Le client rsyslog est déjà installé sur les boitiers de supervision, il ne reste qu’à le configurer afin d’écrire dans un serveur syslog. Il faut donc spécifier à rsyslog quel type de log rediriger et vers quel serveur.
Dans le dossier /etc/rsyslog.d/, créer un nouveau fichier de configuration 00-client-remote.conf
cd /etc/rsyslog.d/
nano 00-client-remote.conf
Ajouter la configuration suivante pour rediriger les logs provenant de l’application NAGIOS-SYSLOG (le tag utilisé dans la commande de notification).
En UDP :
if $programname == ‘NAGIOS-SYSLOG’ then @remote_server:port
En TCP :
if $programname == ‘NAGIOS-SYSLOG then @@remote_server:port
Si vous souhaitez configurer le boitier en tant que serveur :
Configuration
Se connecter en ssh sur le boitier de supervison.
Ouvrir le port syslog
Le port standard syslog est UDP/514 :
1. Editer sous vi/nano le fichier suivant : /etc/init.d/iptables.sh
2. Insérer cette ligne : PORT_RSYSLOG= »514″
3. Insérer cette ligne :
## Acceptation des connexions RSYSLOG
iptables -A INPUT -p udp -i eth0 -s –dport $PORT_RSYSLOG -j ACCEPT
4. Sauver le fichier et recharger les règles : /etc/init.d/iptables.sh
Remarques : Changez le port si vous opérez sur un port différent du port standard.
Le filtrage par IP source est optionnel, mais cela permet de limiter le trafic syslog entrant.
Format rsyslog supporté par le modèle
ServiceNav dispose d’un modèle de service « Lin-syslog » pour exploiter le fichier syslog
1. Editer sous vi/nano le fichier suivant : /etc/rsyslog.conf et effectuer les modifications décrites ci-dessous.
2. Sauver le fichier
3. Redémarrer le service rsyslog : service rsyslog restart
Configuration de la notification syslog
La notification syslog est disponible pour tous les équipements et les services et fonctionne de la même manière que la notification standard Nagios.
Un contact peut être notifié sur sa plage horaire de notification, sur tous les changements de statut ou sur certains d’entre eux, dès le changement de statut ou après que plusieurs vérifications de ce changement de statut aient été faites.
Création des contacts de notifications
Nous préconisons de créer 2 contacts syslog:
• un contact pour les notifications d’équipements
• un contact pour les notifications des services unitaires
Pour ajouter un contact : naviguer dans Configuration > Général > Contacts.
Cliquer sur Ajouter
Pour les services :
Pour les équipements :
Renseigner la période et le type d’état qui déclenchera la notification dans le fichier syslog
Configuration de la notification pour les équipements ou les services
Scénario simple
Je supervise le service «Teamviewer» localisé sur l’équipement RADIOLOGIE et je souhaite une écriture dans le fichier syslog lorsque l’équipement est injoignable ou lorsque le service Teamviewer n’est pas démarré.
Je vais donc mettre des notifications de type syslog sur mon équipement RADIOLOGIE et sur le service Teamviewer
Fiche équipement :
Ouvrir la fiche en mode création ou modification :
Dans l’onglet Notification :
Renseigner le contact lié.
Ici lorsque l’équipement passera en statut DOWN une notification ira écrire dans le fichier syslog le message défini pour le contact «CHSA – contact-syslog-equipement»
Fiche service unitaire
Ouvrir la fiche en mode création ou modification :
Dans l’onglet Notification
Lorsque mon service est en CRITIQUE, une notification ira écrire dans le fichier syslog le message défini pour le contact «CHSA – contact-syslog-service».
Remarque : La notification est déclenchée uniquement sur le type d’état Nagios HARD
Si vous avez rajouté des contrôles additionnels la notification partira uniquement lorsque tous les contrôles additionnels seront terminés.
Résultat obtenu
Il est possible de voir le résultat en consultant son serveur Syslog. Si le boitier de supervision ServiceNav fait office de serveur, le fichier syslog est localisé dans : /var/log/
Il est bien sûr possible d’utiliser le modèle Lin-syslog » pour exploiter le fichier syslog.
Exemple d’écriture dans le fichier Syslog :