Home / Supervision / Script PERL pour afficher le statut de chaque module d’un switch Cisco.

Script PERL pour afficher le statut de chaque module d’un switch Cisco.

Ce script PERL va vous permettre de détecter une anomalie sur les modules d’un châssis Cisco 4500. Nous allons récupérer la couleur du statut sur le module, pour vérifier qu’une panne imminente ne va pas arriver. Le voyant du module est important car de nombreux check (que nous ne pouvons pas forcément superviser en SNMP) sont réalisés. Cela vous permettra de vous connecter sur le switch et de réaliser une vérification.

Tous les scripts sont sur mon compte Github. Vous pourrez donc les télécharger. Je ne vais pas détailler le script car j’utilise depuis des années toujours les mêmes scripts PERL. D’ailleurs vous pouvez les retrouver avec les explications à cette adresse : Modèles de scripts PERL pour Centreon

Présentation du script.

Le script PERL check_snmp_cisco4500_displaystate.pl permet de remonter la couleur du statut d’un module dans un châssis Cisco 4500. Nous récupérons la table SNMP à analyser dans la MIB CISCO-ENTITY-DISPPLAY. La table se nomme ceDisplayTable dont voici une sortie :

Dans notre script, nous allons récupérer le ceDisplayName (qui correspond au nom du module) et le ceDisplayColor (qui correspond à la couleur du statut du module), tout cela grâce à l’Index Value.

A la fin, vous aurez une sortie comme celle-ci dans Centreon pour ce plugin :

Ici vous pouvez constater que tous les modules des chassis sont OK, sauf pour le R112 ou la carte SUP à un statut de Warning, cela peut être dû à plusieurs choses Températures excessive, Module TenGiga qui surchauffe, erreur sur la carte supervisor, ….

Analyse du script.

Ce script prend en argument :

  • La communauté SNMP (-C)
  • La version SNMP (-V)
  • L’adresse IP de l’équipement (-H)
Si aucun module n’a de problème le message suivant s’affichera : OK All modules are Green LED. Sinon si un module à un souci, son nom s’affiche avec le statut de la LED Amber LED = Warning, Red LED = Critical.

Le plugin n’a pas de sortie graphique.

Voici un passage du code du script PERL qui mérite quelques explications :

  • Ligne 4 à 17 : Préparation de la requête SNMP.
  • Ligne 19 : On parcourt la table ceDisplayTable pour récupérer nos informations.
  • Ligne 21 à 23 : On récupère la valeur de l’Index.Value
  • Ligne 25 à 33 : Grâce à la valeur de l’index value on récupère le nom du module qui a un problème et la couleur de la LED sur le module.
  • Ligne 35 à 45 : On construit l’affichage pour Centreon. La variable $Result_Process_Color permet de retourner la couleur de la LED, la valeur 3 = RED, la valeur 6 = Amber. Ensuite on exclut de nos vérifications les ports d’accès avec cette instruction : $Result_Process_Name !~/GigabitEthernet/. Les variables $compteurcritical et $compteurwarning nous servent à afficher le bon statut pour le service.

Finalité du script.

Le script sert tout simplement à remonter dans Centreon la couleur du statut des modules dans un châssis 4500 Cisco.

Ce script évite un contrôle visuel des switchs et permet d’anticiper un maximum des problèmes comme par exemple le nettoyage des locaux techniques et en particulier des switchs qui avec le temps accumulent de la poussière sur leurs grilles d’extractions d’air par exemple.

Etablir un diagnostic.

Pour établir un diagnostic rapide sur le statut de vos modules (=cartes) dans un châssis Cisco 4500, vous pouvez utiliser deux commandes :

#show module

(Cette commande va lister le comportement du module dans son ensemble : online, reboot, off, mais vous donnera aussi des informations sur les cartes, références, numéro d série, ….)

#show environment

(Cette commande va vous remonter le statut de la carte et vous indiquez précisément ce qui ne va pas, car elle vérifie plusieurs éléments sur le module comme la température, les alimentations électriques, le POE …)

Dans la capture, ci-dessus nous voyons un problème de température sur la carte 7, qui commence à chauffer. Cela doit être dû à un problème d’aération des ventilateurs par exemple.

Tous les scripts sont sur mon compte Github. Vous pourrez donc les télécharger. Je ne vais pas détailler le script car j’utilise depuis des années toujours les mêmes scripts PERL. D’ailleurs vous pouvez les retrouver avec les explications à cette adresse : modèles de scripts PERL pour Centreon

That’s All.

  

Laisser un commentaire

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

7e99ace105dbd50cf74e9d8fcb2fdd17KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK