Nagios - Modules complémentaires / plugins
Les plugins aident à surveiller les bases de données, les systèmes d'exploitation, les applications, les équipements réseau, les protocoles avec Nagios. Les plugins sont des exécutables compilés ou des scripts (Perl ou non-Perl) qui étendent les fonctionnalités de Nagios pour surveiller les serveurs et les hôtes. Nagios exécutera un plugin pour vérifier l'état d'un service ou d'un hôte. Nagios peut être compilé avec le support d'un interpréteur Perl intégré pour exécuter des plugins Perl. Sans cela, Nagios exécute les plugins Perl et non Perl en forçant et en exécutant les plugins en tant que commande externe.
Types de plugins Nagios
Nagios a les plugins suivants disponibles -
Official Nagios Plugins- Il existe 50 plugins officiels de Nagios. Les plugins officiels de Nagios sont développés et maintenus par l'équipe officielle des plugins de Nagios.
Community Plugins - Il existe plus de 3 000 plugins tiers Nagios qui ont été développés par des centaines de membres de la communauté Nagios.
Custom Plugins- Vous pouvez également écrire vos propres plugins personnalisés. Certaines directives doivent être suivies pour écrire des plugins personnalisés.
Instructions pour l'écriture de plugins Nagios personnalisés
Lors de l'écriture d'un plugin personnalisé dans Nagios, vous devez suivre les instructions ci-dessous -
- Les plugins doivent fournir une option de ligne de commande "-V" (vérifiez les changements de configuration)
- Imprimer une seule ligne de texte
- Imprimer le diagnostic et seulement une partie du message d'aide
- Les plugins réseau utilisent DEFAULT_SOCKET_TIMEOUT pour expirer
- "-v" ou "--verbose" est lié au niveau de verbosité
- "-t" ou "--timeout" (délai d'expiration du plugin);
- "-w" ou "--warning" (seuil d'avertissement);
- "-c" ou "--critical" (seuil critique);
- "-H" ou "--hostname" (nom de l'hôte à vérifier)
Plusieurs plugins Nagios s'exécutent et effectuent des vérifications en même temps, pour que tous fonctionnent correctement ensemble, le plugin Nagios suit un code d'état. Le tableau ci-dessous indique l'état du code de sortie et sa description -
Code de sortie | Statut | La description |
---|---|---|
0 | D'accord | Fonctionne bien |
1 | ATTENTION | Fonctionne bien, mais a besoin d'attention |
2 | CRITIQUE | Ne fonctionne pas correctement |
3 | INCONNUE | Lorsque le plugin est incapable de déterminer l'état de l'hôte / du service |
Les plugins Nagios utilisent des options pour leur configuration. Voici quelques paramètres importants acceptés par le plugin Nagios -
Sr. Non | Option et description |
---|---|
1 | -h, --help Cela fournit de l'aide |
2 | -V, --version Cela imprime la version exacte du plugin |
3 | -v, --verbose Cela permet au plugin de donner des informations plus détaillées sur ce qu'il fait |
4 | -t, --timeout Cela fournit le délai (en secondes); après cette heure, le plugin rapportera l'état CRITIQUE |
5 | -w, --warning Cela fournit les limites spécifiques au plugin pour le statut WARNING |
6 | -c, --critical Cela fournit les limites spécifiques au plugin pour le statut CRITICAL |
sept | -H, --hostname Cela fournit le nom d'hôte, l'adresse IP ou le socket Unix avec lequel communiquer |
8 | -4, --use-ipv4 Cela vous permet d'utiliser IPv4 pour la connectivité réseau |
9 | -6, --use-ipv6 Cela vous permet d'utiliser IPv6 pour la connectivité réseau |
dix | -p, --port Ceci est utilisé pour se connecter au port TCP ou UDP |
11 | -s, -- send Cela fournit la chaîne qui sera envoyée au serveur |
12 | -e, --expect Cela fournit la chaîne qui doit être renvoyée depuis le serveur |
13 | -q, --quit Cela fournit la chaîne à envoyer au serveur pour fermer la connexion |
Le package de plugins Nagios a beaucoup de vérifications disponibles pour les hôtes et les services pour surveiller l'infrastructure. Essayons les plugins Nagios pour effectuer quelques vérifications.
SMTP est un protocole utilisé pour envoyer des e-mails. Les plugins standards de Nagios ont des commandes pour effectuer des vérifications pour SMTP. La définition de commande pour SMTP -
define command {
command_name check_smtp
command_line $USER2$/check_smtp -H $HOSTADDRESS$
}
Utilisons le plugin Nagios pour surveiller MySQL. Nagios propose 2 plugins pour surveiller MySQL. Le premier plugin vérifie si la connexion mysql fonctionne ou non, et le second plugin est utilisé pour calculer le temps nécessaire pour exécuter une requête SQL.
Les définitions des commandes pour les deux sont les suivantes -
define command {
command_name check_mysql
command_line $USER1$/check_mysql –H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$ -d
$ARG3$ -S –w 10 –c 30
}
define command {
command_name check_mysql_query
command_line $USER1$/check_mysql_query –H $HOSTADDRESS$ -u $ARG1$ -p $ARG2$ -d
$ARG3$ -q $ARG4$ –w $ARG5$ -c $ARG6$
}
Note - Le nom d'utilisateur, le mot de passe et le nom de la base de données sont requis comme arguments dans les deux commandes.
Nagios propose un plugin pour vérifier l'espace disque monté sur toutes les partitions. La définition de la commande est la suivante
define command {
command_name check_partition
command_line $USER1$/check_disk –p $ARG1$ –w $ARG2$ -c $ARG3$
}
La majorité des vérifications peuvent être effectuées via les plugins standards de Nagios. Mais il existe des applications qui nécessitent des contrôles spéciaux pour les surveiller, auquel cas vous pouvez utiliser des plugins Nagios tiers qui fourniront des contrôles plus sophistiqués sur l'application. Il est important de connaître les problèmes de sécurité et de licence lorsque vous utilisez un plugin tiers sous forme d'échange Nagios ou que vous téléchargez le plugin à partir d'un autre site Web.