Icinga LogoVoici le cinquième article consacré au serveur de supervision Icinga. Dans notre précédent article, nous avons défini une collection de tests fondamentaux qui permettent de garder un œil sur l’état de santé de notre machine. Reste à savoir ce que nous sommes censés faire en cas d’anomalie.

En effet, vous n’allez probablement pas rester les yeux rivés sur le tableau de bord d’Icinga pour superviser votre parc de machines – à moins que vous ne soyez un grand opérateur avec votre propre datacenter et des gens payés pour faire ça à longueur de journée.

Si votre entreprise est de taille plus modeste, la solution la plus pragmatique consiste à activer les notifications par mail en cas de problème. C’est relativement simple à mettre en œuvre.

Prérequis

Icinga doit pouvoir envoyer des notifications. Votre serveur de supervision doit donc être doté d’une installation minimale de Postfix capable d’envoyer des e-mails.

Activer les notifications

Ouvrez le fichier de configuration d’un de vos hôtes, repérez la stance object Host et ajoutez trois lignes comme ceci :

// /etc/icinga2/zones.d/master/host-sd-151768.dedibox.fr.conf

object Endpoint "sd-151768.dedibox.fr" {
}

object Zone "sd-151768.dedibox.fr" {
  endpoints = [ "sd-151768.dedibox.fr" ]
  parent = "master"
}

object Host "sd-151768.dedibox.fr" {
  import "generic-host"
  address = "163.172.81.8"
  vars.os = "Linux"
  vars.client_endpoint = name
  vars.notification["mail"] = {  
    groups = [ "icingaadmins" ]  
  }
}

Enregistrez les modifications, ouvrez le fichier conf.d/users.conf et renseignez l’adresse mail vers laquelle vous souhaitez envoyer les notifications :

// /etc/icinga2/conf.d/users.conf
  
object User "icingaadmin" {
  import "generic-user"
  display_name = "Icinga Admin"
  groups = [ "icingaadmins" ]
  email = "info@microlinux.fr"
}

object UserGroup "icingaadmins" {
  display_name = "Icinga Admin Group"
}

ImportantOui, c’est mieux si vous mettez votre adresse mail. Non, ce n’est pas une bonne idée de mettre la mienne. Je dis ça parce que je reçois régulièrement des notifications en provenance de machines configurées par des lecteurs qui prennent mes articles un peu trop au pied de la lettre.

Vérifiez la syntaxe de votre configuration et prenez en compte les modifications :

# icinga2 daemon -C
# systemctl reload icinga2

Simuler un dysfonctionnement

Pour tester le bon fonctionnement de ma configuration, je vais simuler un dysfonctionnement sur la serveur dédié que je surveille.

Ma partition /boot est relativement réduite, et elle est utilisée à un peu plus de la moitié :

# df -h /boot
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       488M  246M  206M  55% /boot

Je vais la remplir à ras bord en créant un fichier « bidon » rempli de zéros :

# dd if=/dev/zero of=/boot/0bits bs=1M count=200
200+0 records in
200+0 records out
209715200 bytes (210 MB, 200 MiB) copied, 0.490476 s, 428 MB/s

Voyons le résultat de l’opération :

# df -h /boot
Filesystem      Size  Used Avail Use% Mounted on
/dev/sda1       488M  446M  5.6M  99% /boot

Je jette un œil sur le tableau de bord d’Icinga, et le problème me saute aux yeux :

Icinga alerte

À partir du moment où Icinga détecte un composant ou un service dans un état critique – ou lorsqu’il n’arrive plus à joindre un hôte distant – il vous envoie une notification. Je jette un œil dans ma messagerie, et effectivement :

Icinga alerte

Je me connecte donc à la machine en question, j’identifie le problème et j’essaie de le résoudre. En l’occurrence c’est très simple, puisque c’est moi qui l’ai créé à la base :

# rm -f /boot/0bits

Je vérifie sur le tableau de bord, et je vois que tout est rentré dans l’ordre. Mais je n’ai même pas besoin de faire ça, puisque mon serveur de supervision fait bien les choses. En effet, il m’envoie une deuxième notification pour m’indiquer que les choses sont retournées à la normale :

Icinga alerte

La suite au prochain numéro, où nous allons essayer de connecter un serveur derrière un NAT.


La rédaction de cette documentation demande du temps et des quantités significatives de café espresso. Vous appréciez ce blog ? Offrez un café au rédacteur en cliquant sur la tasse.

 


0 commentaire

Laisser un commentaire

Emplacement de l’avatar

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *