Nous allons voir dans ce chapitre la supervision d’un switch Cisco. Nous allons notamment surveiller le trafic des interfaces réseau, mais aussi le CPU, la mémoire, le châssis…etc, et bien sûr, pour réaliser ce projet, nous allons utiliser Centreon ainsi que ses plugins packs…
Ce que nous allons réaliser ici :
- Supervision d’un switch Cisco en ligne de commande
- Création de commandes sous Centreon Web
Ce qu’il vous faut :
- Infrastructure Cisco.
- Centreon Server : installation-complete-centreon-2-8-26
- Centreon Plugins Pack : Install, Conf, Utilisation
- SNMP Cisco : Activation du protocole SNMP
Important : vous devez avoir la même configuration que moi, surtout l’installation des plugins et l’ajout des macros personnalisées. Tout est expliqué dans les liens ci-dessus. Dans le cas contraire, vous devez adapter la conf par rapport à votre installation. Du moment que votre supervision fonctionne, c’est parfait (on s’en fiche de ma configuration).
Voir également mes projets sur la supervision : /supervision
- Supervision Certificat HTTPS/Windows : supervision-des-certificats-https-windows/
- Supervision Web HTTP(S) : supervision-https-response-expected-content-centreon/
- Supervision ORACLE BDD : oracle-database-monitoring-centreon-plugins/
- Supervision EMC VNX : vnx5300-vnx5200-monitoring-centreon/
- Supervision MSSQL : microsoft-sql-server-monitoring/
- Supervision Switch CISCO : switch-cisco-centreon-partie-1-2/
- Supervision VMWARE ESXi : vmware-esxi-6-7-monitoring/
- Supervision EXCHANGE Server : exchange-server-2016-monitoring-actif/
- Supervision Quotas Windows : supervision-des-quotas-windows-nrpe-nsclient/
- Supervision Skype for Business : supervision-microsoft-skype-for-business/
- Supervision HPE Proliant Gen10 : supervision-hpe-proliant-gen10-snmp-restapi/
- Supervision NETAPP SANTricity : supervision-netapp-santricity-storage-restapi/
Supervision Switch Cisco (CLI)
N’oubliez pas d’activer SNMP sur votre switch Cisco. Vous devez ajouter une communauté et autoriser SNMP en lecture seule. Nous allons d’abord superviser le switch en ligne de commande avant de passer à la création des commandes, les modèles, hôtes, services depuis l’interface web Centreon.
Recherche de plugin pour la supervision des switchs Cisco :
[root@centreon plugins]# ./centreon_plugins.pl --list-plugin | grep cisco | grep PLUGIN PLUGIN: apps::voip::cisco::meetingplace::plugin PLUGIN: network::cisco::WaaS::plugin PLUGIN: network::cisco::wlc::snmp::plugin PLUGIN: apps::cisco::cms::restapi::plugin PLUGIN: network::cisco::callmanager::snmp::plugin PLUGIN: network::cisco::asa::snmp::plugin PLUGIN: network::cisco::smallbusiness::standard::snmp::plugin PLUGIN: hardware::server::cisco::ucs::plugin PLUGIN: apps::cisco::ise::restapi::plugin PLUGIN: network::cisco::prime::restapi::plugin PLUGIN: network::cisco::meraki::cloudcontroller::snmp::plugin PLUGIN: network::cisco::vcs::restapi::plugin PLUGIN: network::cisco::standard::snmp::plugin PLUGIN: network::cisco::vg::snmp::plugin PLUGIN: network::cisco::ironport::snmp::plugin [root@centreon plugins]#
Nous allons donc utiliser le plugin PLUGIN: network::cisco::standard::snmp::plugin
Voici les modes disponible :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=network::cisco::standard::snmp::plugin --list-mode Plugin Description: Check Cisco equipments (2800, 2900, 3750, Nexus,...) in SNMP. Global Options: --mode Choose a mode. --dyn-mode Specify a mode with the path (separated by '::'). --list-mode List available modes. --mode-version Check minimal version of mode. If not, unknown error. --version Display plugin version. --pass-manager Use a password manager. Modes Available: configuration cpu environment hsrp interfaces ipsla list-interfaces list-spanning-trees memory memory-flash qos-usage spanning-tree stack uptime [root@centreon plugins]#
Check-Cisco-CPU
Supervision du CPU :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=network::cisco::standard::snmp::plugin --hostname=SW-HOST --snmp-community=pixelabs --snmp-version=2 --mode=cpu --verbose OK: All CPUs are ok. | ... ... CPU '3': 19.00% (5sec), 22.00% (1min), 22.00% (5min) CPU '19': 0.00% (5sec), 1.00% (1min), 1.00% (5min) CPU '6': 1.00% (5sec), 1.00% (1min), 1.00% (5min) CPU '24': 29.00% (5sec), 26.00% (1min), 26.00% (5min) CPU '30': 21.00% (5sec), 28.00% (1min), 29.00% (5min) CPU '4': 18.00% (5sec), 27.00% (1min), 28.00% (5min) CPU '1': 23.00% (5sec), 19.00% (1min), 19.00% (5min) CPU '5': 43.00% (5sec), 30.00% (1min), 29.00% (5min) CPU '51': 16.00% (5sec), 28.00% (1min), 28.00% (5min) CPU '18': 0.00% (5sec), 1.00% (1min), 1.00% (5min) CPU '2': 19.00% (5sec), 28.00% (1min), 28.00% (5min) [root@centreon plugins]#
Remarque : essayez sans le paramètre --verbose
Check-Cisco-Memory
Supervision de la mémoire :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=network::cisco::standard::snmp::plugin --mode=memory --hostname=SW-HOST --snmp-community=pixelabs --snmp-version=2 --warning-usage=80 --critical-usage=90 --verbose OK: Memory is ok. | 'used_Processor'=161884680B;0.00:725975027.20;0.00:816721905.60;0;907468784 'used_I/O'=25189592B;0.00:53687091.20;0.00:60397977.60;0;67108864 Memory 'Processor' Total: 865.43 MB Used: 154.39 MB (17.84%) Free: 711.04 MB (82.16%) Memory 'I/O' Total: 64.00 MB Used: 24.02 MB (37.54%) Free: 39.98 MB (62.46%) [root@centreon plugins]#
Check-Cisco-Traffic
Le plus important, c’est la surveillance du trafic de votre infrastructure. A l’aide des graphs Centreon, vous avez la possibilité de visualiser et d’analyser le trafic réseau de votre organisation. C’est une source importante pour évaluer les performances de votre réseau, détecter les attaques DDoS (trafic élevé, saturation de la bande passante) …etc.
On peut commencer par afficher les interfaces disponibles :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=network::cisco::standard::snmp::plugin --hostname=SW-HOST --snmp-community=pixelabs --snmp-version=2 --mode=list-interfaces --oid-filter=ifDesc --oid-display=ifDesc List interfaces: ... 'TenGigabitEthernet1/4/8' [speed = 10000, status = up, id = 11] 'TenGigabitEthernet1/4/9' [speed = 10000, status = up, id = 12] # 'GigabitEthernet2/3/1' [speed = 1000, status = up, id = 129] 'TenGigabitEthernet1/4/10' [speed = 10000, status = up, id = 13] 'GigabitEthernet2/3/2' [speed = 1000, status = up, id = 130] 'GigabitEthernet2/3/3' [speed = 1000, status = up, id = 131] ... ... ... [root@centreon plugins]#
Choisissez ensuite l’interface réseau que vous souhaitez superviser. Ici, l’interface ‘GigabitEthernet2/3/1’ qui a pour l’ID = 129
[root@centreon plugins]# ./centreon_plugins.pl --plugin=network::cisco::standard::snmp::plugin --hostname=SW-HOST --snmp-community=pixelabs --snmp-version=2 --mode=interfaces --interface=129 --add-traffic OK: Interface 'Gi2/3/1' Traffic In : 723.54Kb/s (0.07%), Traffic Out : 57.07Kb/s (0.01%) | 'traffic_in'=723542.15b/s;;;0;1000000000 'traffic_out'=57069.81b/s;;;0;1000000000 [root@centreon plugins]#
Remarque : vous pouvez améliorer le résultat en rajoutant, la vitesse entrée/sortie, le seuil Warning/Critical…etc. A vous d’explorer le mode trafic en affichant de l’aide (–help) .
Check-Cisco-Stack
Supervision de l’état du StackWise :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=network::cisco::standard::snmp::plugin --hostname=SW-HOST --snmp-community=pixelabs --snmp-version=2 --mode=stack --verbose OK: Stack ring is redundant | Member '5' state is ready [Role is 'member'] Member '3' state is ready [Role is 'member'] Member '2' state is ready [Role is 'member'] Member '1' state is ready [Role is 'master'] Member '4' state is ready [Role is 'member'] [root@centreon plugins]#
Check-Cisco-UpTime
Supervision du temps de fonctionnement :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=network::cisco::standard::snmp::plugin --hostname=SW-HOST --snmp-community=pixelabs --snmp-version=2 --mode=uptime --verbose OK: System uptime is: 1d 40m 10s | 'uptime'=7173610s;;;0; [root@centreon plugins]#
Check-Cisco-ENV
Supervision de l’environnement (châssis). Ventilateurs, Alimentation, température…etc.
Check-FAN
Supervision des composants FAN :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=network::cisco::standard::snmp::plugin --mode=environment --hostname=SW-HOST --snmp-community=pixelabs --snmp-version=2 --component='fan' --verbose OK: All 6 components are ok [6/6 fans]. | Environment type: cat6000 Checking fans fan 'chassis-1 Chassis Fan Tray 1' status is normal [instance: 11]. fan 'chassis-1 Power Supply 1 Fan' status is normal [instance: 12]. fan 'chassis-1 Power Supply 2 Fan' status is normal [instance: 13]. fan 'chassis-2 Chassis Fan Tray 1' status is normal [instance: 201]. fan 'chassis-2 Power Supply 1 Fan' status is normal [instance: 202]. fan 'chassis-2 Power Supply 2 Fan' status is normal [instance: 203]. [root@centreon plugins]#
Check-PSU
Supervision des alim :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=network::cisco::standard::snmp::plugin --mode=environment --hostname=SW-HOST --snmp-community=pixelabs --snmp-version=2 --component='psu' --verbose OK: All 22 components are ok [22/22 psus]. | Environment type: cat6000 Checking power supplies Power supply 'chassis-1 Power Supply 1, WS-CAC' status is normal [instance: 11] [source: internalRedundant] Power supply 'chassis-1 Power Supply 2, WS-CAC' status is normal [instance: 12] [source: internalRedundant] ... ... Power supply 'Chassis 2 Enhanced 9-slot Fan Tray 1' status is on [instance: 15] Power supply 'Chassis 2 AC power supply, 6000 watt 1' status is on [instance: 18] ... ... Power supply 'Chassis 2 VS-S720-10G 5 ports Supervisor Engine 720 10GE Rev. 3.4' status is on [instance: 2000] Power supply 'Chassis 2 WS-X6748-GE-TX CEF720 48 port 10/100/1000mb Ethernet Rev. 2.5' status is on [instance: 4000] ... ... Power supply 'Chassis 2 WS-X6716-10GE CEF720 16 port 10GE Rev. 1.2' status is on [instance: 7000] Power supply 'Chassis 1 Enhanced 9-slot Fan Tray 1' status is on [instance: 8013] Power supply 'Chassis 1 AC power supply, 3000 watt 1' status is on [instance: 8016] Power supply 'Chassis 1 AC power supply, 3000 watt 2' status is on [instance: 8027] Power supply 'Chassis 1 VS-S720-10G 5 ports Supervisor Engine 720 10GE Rev. 4.3' status is on [instance: 9000] Power supply 'Chassis 1 WS-SVC-NAM-1 3 ports Network Analysis Module Rev. 4.2' status is on [instance: 10000] ... ... [root@centreon plugins]#
Check-Temp
Supervision de la température :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=network::cisco::standard::snmp::plugin --mode=environment --hostname=SW-HOST --snmp-community=pixelabs --snmp-version=2 --component='temperature' --verbose OK: All 58 components are ok [58/58 temperatures] Environment type: cat6000 Checking temperatures Temperature 'Chassis 1 VTT 1 outlet temperatu' status is normal [instance: 140040] [value: 37 C] Temperature 'Chassis 1 VTT 2 outlet temperatu' status is normal [instance: 140050] [value: 29 C] Temperature 'Chassis 1 VTT 3 outlet temperatu' status is normal [instance: 140060] [value: 32 C] Temperature 'Chassis 1 module 1 outlet temper' status is normal [instance: 160170] [value: 38 C] Temperature 'Chassis 1 module 1 inlet tempera' status is normal [instance: 160171] [value: 35 C] ... ... Temperature 'Chassis 1 module 5 RP outlet tem' status is normal [instance: 200210] [value: 31 C] Temperature 'Chassis 1 module 5 RP inlet temp' status is normal [instance: 200211] [value: 31 C] Temperature 'Chassis 2 VTT 1 outlet temperatu' status is normal [instance: 240070] [value: 35 C] Temperature 'Chassis 2 VTT 2 outlet temperatu' status is normal [instance: 240080] [value: 28 C] Temperature 'Chassis 2 VTT 3 outlet temperatu' status is normal [instance: 240090] [value: 32 C] Temperature 'Chassis 2 module 3 outlet temper' status is normal [instance: 260350] [value: 48 C] Temperature 'Chassis 2 module 3 inlet tempera' status is normal [instance: 260351] [value: 27 C] ... ... Temperature 'Chassis 2 module 5 RP outlet tem' status is normal [instance: 300370] [value: 29 C] Temperature 'Chassis 2 module 5 RP inlet temp' status is normal [instance: 300371] [value: 30 C] [root@centreon plugins]#
Check-Modules
Supervision des modules :
[root@hcentreon plugins]# ./centreon_plugins.pl --plugin=network::cisco::standard::snmp::plugin --mode=environment --hostname=SW-HOST --snmp-community=pixelabs --snmp-version=2 --component='module' --verbose OK: All 25 components are ok [25/25 modules]. | Environment type: cat6000 Checking modules Module 'Chassis 2 WS-X6716-10GE CEF720 16 port 10GE Rev. 1.1' status is ok [instance: 1000] Module 'Chassis 2 WS-F6700-DFC3C Distributed Forwarding Card 3 Rev. 1.4' status is ok [instance: 1009] ... Module 'Chassis 2 VS-F6K-PFC3C Policy Feature Card 3 Rev. 1.2' status is ok [instance: 2018] Module 'Chassis 2 WS-X6748-GE-TX CEF720 48 port 10/100/1000mb Ethernet Rev. 2.5' status is ok [instance: 4000] ... ... Module 'Chassis 1 WS-F6700-CFC Centralized Forwarding Card Rev. 2.1' status is ok [instance: 12007] Module 'Chassis 1 WS-X6716-10GE CEF720 16 port 10GE Rev. 1.1' status is ok [instance: 13000] ... Module 'Chassis 1 WS-F6700-DFC3C Distributed Forwarding Card 3 Rev. 1.6' status is ok [instance: 14009] [root@centreon plugins]#
Supervision Switch Cisco (UI)
Connectez-vous à l’interface web de Centreon. Nous allons mettre en place des modèles de services/hôtes afin de nous faciliter un peu la vie pour les futures switch à superviser. Commençons d’abord par la création des commandes nécessaires.
Commande #1 : Check-Cisco-Systems
Cette commande sera utilisée par les services UPTIME et STACK.
Allez dans Configuration > Commandes >
- Cliquez sur le bouton vert Ajouter
- Nom de commande : Check-Cisco-Systems
- Ligne de commande :
$USER2$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --mode=$_SERVICEMODE$ --hostname=$HOSTADDRESS$ --snmp-community=$_HOSTSNMPCOMMUNITY$ --snmp-version=$_HOSTSNMPVERSION$ $_SERVICEOPTION$
- Ajoutez une description à vos macros.
- Sauvegarder
Remarque : $USER2$= chemin des plugins Centreon. /usr/lib/centreon/plugins. Paramétrable (ainsi que les macros personnalisés) depuis : Configuration > Collecteurs > Ressources
Commande #2 : Check-Cisco-Traffic
Cette commande sera utilisée par le service TRAFFIC. Allez dans Configuration > Commandes >
- Cliquez sur le bouton vert Ajouter
- Nom de commande : Check-Cisco-Traffic
- Ligne de commande :
$USER2$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --hostname=$HOSTADDRESS$ --snmp-version=$_HOSTSNMPVERSION$ --snmp-community=$_HOSTSNMPCOMMUNITY$ --mode=$_SERVICEMODE$ --interface=$_SERVICEINTERFACE$ --warning-in-traffic=$_SERVICEWARNINGIN$ --warning-out-traffic=$_SERVICEWARNINGOUT$ --critical-in-traffic=$_SERVICECRITICALIN$ --critical-out-traffic=$_SERVICECRITICALOUT$ $_SERVICEOPTION$
- Modèle de graphique : Traffic
- Sauvegarder
Commande #3 : Check-Cisco-CPU
Cette commande sera utilisée par le service CPU. Allez dans Configuration > Commandes >
- Cliquez sur le bouton vert Ajouter
- Nom de commande : Check-Cisco-CPU
- Ligne de commande :
$USER2$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --mode=$_SERVICEMODE$ --hostname=$HOSTADDRESS$ --snmp-community=$_HOSTSNMPCOMMUNITY$ --snmp-version=$_HOSTSNMPVERSION$ --warning-average=$_SERVICEWARNING$ --critical-average=$_SERVICECRITICAL$ $_SERVICEOPTION$
- Modèle de graphique : Ne rien mettre. Il faut penser à mettre le bon modèle graphique (cpu) lors de la création de service pour hôte.
- Sauvegarder
********************UPDATE 1 – 29/07/2020********************
Commande #4 : Check-Cisco-Memory
Cette commande sera utilisée par le service MEMORY. Allez dans Configuration > Commandes >
- Cliquez sur le bouton vert Ajouter
- Nom de commande : Check-Cisco-Memory
- Ligne de commande :
$USER2$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --mode=$_SERVICEMODE$ --hostname=$HOSTADDRESS$ --snmp-community=$_HOSTSNMPCOMMUNITY$ --snmp-version=$_HOSTSNMPVERSION$ --warning-usage=$_SERVICEWARNING$ --critical-usage=$_SERVICECRITICAL$ $_SERVICEOPTION$
- Modèle de graphique : Ne rien mettre. Il faut penser à mettre le bon modèle graphique (memory) lors de la création de service pour hôte.
- Sauvegarder
Commande #5 : Check-Cisco-ENV
Cette commande sera utilisée par les services FAN, PSU, TEMPERATURE, MODULES…etc. Allez dans Configuration > Commandes >
- Cliquez sur le bouton vert Ajouter
- Nom de commande : Check-Cisco-ENV
- Ligne de commande :
$USER2$/centreon_plugins.pl --plugin=$_SERVICEPLUGIN$ --mode=$_SERVICEMODE$ --hostname=$HOSTADDRESS$ --snmp-community=$_HOSTSNMPCOMMUNITY$ --snmp-version=$_HOSTSNMPVERSION$ --component=$_SERVICECOMPONENT$ $_SERVICEOPTION$
- Sauvegarder
C’est terminé pour la commandes.
Je m’arrête ici les amis. J’aimerais détailler la partie sur la création des modèles services/hôtes et la supervision des switch. Je préfère donc réaliser ce projet en deux parties.
Voir la deuxième partie : supervision-switch-cisco-centreon-partie-2-2/
Si vous aimez l’article, n’hésitez pas à lâcher une étoile ou deux (ou 5 hein :p ) ! cela m’encourage beaucoup 🙂
Bonne journée et à très bientôt.
Supervision Systèmes & Réseaux
Voir également mes projets sur la supervision : /supervision
- Supervision Certificat HTTPS/Windows : supervision-des-certificats-https-windows/
- Supervision Web HTTP(S) : supervision-https-response-expected-content-centreon/
- Supervision ORACLE BDD : oracle-database-monitoring-centreon-plugins/
- Supervision EMC VNX : vnx5300-vnx5200-monitoring-centreon/
- Supervision MSSQL : microsoft-sql-server-monitoring/
- Supervision Switch CISCO : switch-cisco-centreon-partie-1-2/
- Supervision VMWARE ESXi : vmware-esxi-6-7-monitoring/
- Supervision EXCHANGE Server : exchange-server-2016-monitoring-actif/
- Supervision Quotas Windows : supervision-des-quotas-windows-nrpe-nsclient/
- Supervision Skype for Business : supervision-microsoft-skype-for-business/
- Supervision HPE Proliant Gen10 : supervision-hpe-proliant-gen10-snmp-restapi/
- Supervision NETAPP SANTricity : supervision-netapp-santricity-storage-restapi/
Bonjour,
Les commandes CPU et Memory restent à l’état UNKNOWN dans centreon web, alors que si je la passe en CLI directement de Centos j’obtiens les résultats.
Salut,
C’est quoi l’erreur exactement sur Centreon Web ?
Assures toi que tu as bien configuré SNMP depuis Centreon web (et sur le serveur que tu supervise)
-sysadmin.
Question posée par mail.
Je souhaite récupérer l’état du duplex de mes switchs Cisco (halfduplex ou fullduplex) via un service ?
Réponse : Voici un exemple :
Le mode
list-interface
permet de lister simplement les interfaces disponible sur le switch :Je vais donc vérifier si l’interface
'GigabitEthernet1/0/8'
est en fullduplex, sinon, l’alerte CRITICAL se déclenche (si elle est en halfduplex).Voici donc la commande finale :
Explication :
--interface='^GigabitEthernet1/0/8$'
: ‘^….$’ = ‘commence strictement par….se termine strictement par’Si tu veux checker toutes les interfaces commençant par Gigabit, tu supprimes le ‘$’ à la fin.
--critical-status='%{admstatus} eq "up" and (%{opstatus} ne "up" or %{duplexstatus} eq "halfDuplex")'
= si l’interface est en halfDuplex, l’alerte CRITICAL se déclenche, sinon, c’est Ok.Si on imagine le contraire, je vérifie si l’interface est en halfDuplex, sinon, l’alerte CRITICAL se déclenche :
J’ai ajouté la commande dans l’article (partie Cisco) pour centreon-web.
Bonne journée.
-Pixel.