GNU/Linux >> Tutoriels Linux >  >> Linux

Comment surveiller le commutateur réseau et les ports à l'aide de Nagios

Nagios est de loin le meilleur outil de surveillance pour surveiller les équipements hôtes et réseau. En utilisant les plugins Nagios, vous pouvez surveiller à peu près n'importe quoi.

J'utilise Nagios de manière intensive et cela me rassure de savoir que je reçois une alerte sur mon téléphone en cas de problème. De plus, si les niveaux d'avertissement sont correctement configurés, Nagios vous alertera de manière proactive avant qu'un problème ne devienne critique.

Plus tôt, j'ai écrit sur la façon de configurer Nagios pour surveiller l'hôte Linux, l'hôte Windows et le périphérique VPN.

Dans cet article, je vais vous expliquer comment configurer Nagios pour surveiller le commutateur réseau et ses ports actifs .

1. Activer switch.cfg dans nagios.cfg

Décommentez la ligne switch.cfg dans /usr/local/nagios/etc/nagios.cfg comme indiqué ci-dessous.

[nagios-server]# grep switch.cfg /usr/local/nagios/etc/nagios.cfg
cfg_file=/usr/local/nagios/etc/objects/switch.cfg

2. Ajouter un nouveau groupe d'hôtes pour les commutateurs dans switch.cfg

Ajoutez le groupe d'hôtes de commutateurs suivant au fichier /usr/local/nagios/etc/objects/switch.cfg.

define hostgroup{
hostgroup_name  switches
alias           Network Switches
}

3. Ajouter un nouvel hôte pour le commutateur à surveiller

Dans cet exemple, j'ai défini un hôte pour surveiller le commutateur principal dans le fichier /usr/local/nagios/etc/objects/switch.cfg. Changez la directive d'adresse en votre adresse IP de commutateur en conséquence.

define host{
use             generic-switch
host_name       core-switch
alias           Cisco Core Switch
address         192.168.1.50
hostgroups      switches
}

4. Ajouter des services communs pour tous les commutateurs

L'affichage de la disponibilité du commutateur et la vérification de son fonctionnement sont des services communs à tous les commutateurs. Définissez donc ces services sous les commutateurs hostgroup_name comme indiqué ci-dessous.

# Service definition to ping the switch using check_ping
define service{
use                     generic-service
hostgroup_name          switches
service_description     PING
check_command           check_ping!200.0,20%!600.0,60%
normal_check_interval   5
retry_check_interval    1
}

# Service definition to monitor switch uptime using check_snmp
define service{
use                     generic-service
hostgroup_name          switches
service_description     Uptime
check_command           check_snmp!-C public -o sysUpTime.0
}

5. Ajouter un service pour surveiller l'utilisation de la bande passante du port

check_local_mrtgtraf utilise le Multil Router Traffic Grapher – MRTG. Vous devez donc installer MRTG pour que cela fonctionne correctement. Le fichier *.log mentionné ci-dessous doit pointer vers le fichier journal MRTG sur votre système.

define service{
use			        generic-service
host_name			core-switch
service_description	Port 1 Bandwidth Usage
check_command		check_local_mrtgtraf!/var/lib/mrtg/192.168.1.11_1.log!AVG!1000000,2000000!5000000,5000000!10
}

6. Ajouter un service pour surveiller un port de commutateur actif

Utilisez check_snmp pour surveiller le port spécifique comme indiqué ci-dessous. Les deux services suivants surveillent le port n° 1 et le port n° 5. Pour ajouter des ports supplémentaires, modifiez la valeur ifOperStatus.n en conséquence. i.e n définit le numéro de port.

# Monitor status of port number 1 on the Cisco core switch
define service{
use                  generic-service
host_name            core-switch
service_description  Port 1 Link Status
check_command        check_snmp!-C public -o ifOperStatus.1 -r 1 -m RFC1213-MIB
}

# Monitor status of port number 5 on the Cisco core switch
define service{
use                  generic-service
host_name            core-switch
service_description  Port 5 Link Status
check_command	       check_snmp!-C public -o ifOperStatus.5 -r 1 -m RFC1213-MIB
}

7. Ajoutez des services pour surveiller plusieurs ports de commutateur ensemble

Parfois, vous devrez peut-être surveiller l'état de plusieurs ports combinés. c'est-à-dire que Nagios devrait vous envoyer une alerte, même si l'un des ports est en panne. Dans ce cas, définissez le service suivant pour surveiller plusieurs ports.

# Monitor ports 1 - 6 on the Cisco core switch.
define service{
use                   generic-service
host_name             core-switch
service_description   Ports 1-6 Link Status
check_command         check_snmp!-C public -o ifOperStatus.1 -r 1 -m RFC1213-MIB, -o ifOperStatus.2 -r 1 -m RFC1213-MIB, -o ifOperStatus.3 -r 1 -m RFC1213-MIB, -o ifOperStatus.4 -r 1 -m RFC1213-MIB, -o ifOperStatus.5 -r 1 -m RFC1213-MIB, -o ifOperStatus.6 -r 1 -m RFC1213-MIB
}

8. Valider la configuration et redémarrer nagios

Vérifiez la configuration de nagios pour vous assurer qu'il n'y a pas d'avertissements et d'erreurs.

# /usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg

Total Warnings: 0
Total Errors:   0
Things look okay - No serious problems were detected during the pre-flight check

Redémarrez le serveur nagios pour commencer à surveiller le périphérique VPN.

# /etc/rc.d/init.d/nagios stop
Stopping nagios: .done.

# /etc/rc.d/init.d/nagios start
Starting nagios: done.

Vérifiez l'état du commutateur à partir de l'interface utilisateur Web de Nagios :http://{nagios-server}/nagios comme indiqué ci-dessous :

Fig :interface graphique Nagios affichant l'état d'un commutateur réseau

 

9. Dépannage

Problème 1 : L'interface graphique de Nagios affiche le message d'erreur "check_mrtgtraf :impossible d'ouvrir le fichier journal MRTG" pour l'utilisation de la bande passante du port

Solution 1 : assurez-vous que le fichier *.log défini dans le service check_local_mrtgtraf pointe vers le bon emplacement.

Problème 2  :L'interface utilisateur de Nagios affiche le message d'erreur "Le code de retour de 127 est hors limites - le plugin peut être manquant" pour l'état de la liaison du port.

Solution2 :Assurez-vous que les packages net-snmp et net-snmp-util sont installés. Dans mon cas, il me manquait le package net-snmp-utils et son installation a résolu ce problème comme indiqué ci-dessous.

[nagios-server]# rpm -qa | grep net-snmp
net-snmp-libs-5.1.2-11.el4_6.11.2
net-snmp-5.1.2-11.el4_6.11.2

[nagios-server]# rpm -ivh net-snmp-utils-5.1.2-11.EL4.10.i386.rpm
Preparing...       ########################################### [100%]
1:net-snmp-utils   ########################################### [100%]

[nagios-server]# rpm -qa | grep net-snmp
net-snmp-libs-5.1.2-11.el4_6.11.2
net-snmp-5.1.2-11.el4_6.11.2
net-snmp-utils-5.1.2-11.EL4.10

Remarque : Après avoir installé net-snmp et net-snmp-utils, recompilez et réinstallez les plugins nagios comme expliqué dans « 6. Compilez et installez les plugins nagios » dans le guide de démarrage de Nagios 3.0.

Deux meilleurs livres de Nagios

Ce sont les deux meilleurs livres Nagios qui couvre le dernier Nagios 3. Je vous recommande fortement de lire ces deux livres pour acquérir une compréhension détaillée de Nagios. Puisque Nagios est un logiciel libre, dépenser quelques dollars dans les livres peut être le meilleur investissement que vous puissiez faire.

Des articles géniaux sur Nagios

Voici quelques articles Nagios géniaux qui pourraient vous être utiles.

  • Comment surveiller une machine Windows distante à l'aide de Nagios sous Linux
  • Comment surveiller un hôte Linux distant à l'aide de Nagios 3
  • Guide de démarrage de Nagios 3 pour Linux – Présentation, installation et configuration

Linux
  1. Comment installer Nagios 4 et surveiller vos serveurs sur Ubuntu 20.04

  2. Comment surveiller une machine Windows distante à l'aide de Nagios sous Linux

  3. Comment surveiller les sessions VPN actives et la température à l'aide de Nagios

  4. CentOS / RHEL :Comment bloquer les ports entrants et sortants à l'aide d'iptables

  5. Comment surveiller le trafic réseau sous Linux à l'aide de vnStat

Comment zoomer et dézoomer des vidéos à l'aide de FFmpeg

Comment installer nload pour surveiller le trafic réseau en temps réel

Comment configurer le réseau sous Linux à l'aide de Netplan et NMTUI

Comment surveiller le serveur Linux et les métriques à partir du navigateur à l'aide de Scout Realtime

Comment utiliser la commande ss (Surveiller les connexions réseau)

Comment mettre en réseau Ubuntu et Windows 10 ?