Dans ce chapitre, nous allons voir comment mettre en la supervision Exchange Server 2016 via le protocole NRPE. Nous allons commencer par installer et configurer NSClient++ sur notre serveur Exchange, puis nous verrons comment superviser fonctionne la supervision via le protocole NRPE depuis Centreon…
Ce qu’il vous faut :
- Votre plateforme de supervision Centreon
- Exchange 2016 : Installation complète d’Exchange Server 2016
Mais aussi :
- NSClient++ pour Windows (Exchange) : nsclient.org/download/
- Installation et configuration NRPE par Nagios :
Quelques sources Github sympa :
- Exchange Server : Paul Cunningham
- Exchange Server : PowerShell/xExchange
- AD, Exchange, SCCM, Office365 : lazywinadmin/PowerShell
- AD, Exchange, O365, Hyper-V : scriptrunner/ActionPacks
N’oubliez pas de superviser le serveur Windows lui même : supervision-exchange-server-2016-mode-actif/
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 Exchange via NRPE
NSClient++ est un agent de supervision multiplateforme pour Windows. Conçu à l’origine pour Nagios, depuis, il a beaucoup évolué en un agent de monitoring complet qui peut être utilisé avec de nombreux outils de monitoring (Centreon, Icinga, Naemon, OP5, NetEye, Shinken…etc). Il supporte de nombreux protocoles de supervision :
- NRPE : Nagios Remote plugin Executor : est un protocole centré Nagios pour collecter les métriques distantes.
- NSCA : Nagios Service Check Acceptor : est un protocole centré Nagios pour la soumission des résultats.
- REST est le protocole natif NSClient++ qui vous permet d’interagir avec NSClient++ sur le protocole http(s).
- NRDP est un remplacement php pour NSCA développé par Nagios.
- SMTP : permet d’envoyer des e-mails directement depuis NSClient+++.
source : https://docs.nsclient.org/
Installation NSClient++
Lancer l’installation de NSClient++ sur votre serveur Exchange.
- Cliquez sur next
- Choisir Generic
- Choisir Typical
- Allowed hosts : 127.0.0.1,172.16.1.6 – Ajouter à la suite l’adresse IP de votre serveur Centreon
- Choisir un mot de passe : Pour l’accès à l’interface Web NSClient.
- Cochez les cases comme sur l’image ci-dessous :
- Enable common check plugin
- Enable nsclient server
- Enable NRPE server
- Safe mode
- Enable NSCA client
- Enable Web server
Remarque : il est possible de modifier ces informations après l’installation !
- Cliquez sur next
- Cliquez sur install
- Cliquez sur finish
- Redémarrer s’il le demande.
Configuration NSClient++
Le fichier de configuration se trouve dans : C:\Program Files\NSClient++\nsclient.ini. Voici les paramètres par défaut, j’ai supprimé les commentaires et les lignes vides pour y avoir clair :
Remarque : après chaque modification, vous devez redémarrer le service NSClient++
Interface Web NSClient++
Il est super simple de gérer les modules NSClient depuis l’interface Web. Pour se connecter à l’interface Web NSClient++ :
https://localhost:8443/
- Sous Firefox:
- Cliquez sur Avancé
- Cliquez sur Ajouter une exception et confirmer
- Sous IE :
- Cliquez sur Poursuivre…
- Mot de passe : PiXelabs c’est le mot de passe renseigné lors de l’installation.
– désinstaller le module – + installer le module
Remarque : à la première connexion, il se peut qu’une alerte (icône rouge) s’afficher à côté du menu Settings : il faut appliquer la configuration la première fois, suivre simplement l’icône rouge.
- Cliquez sur Settings
- Cliquez en suite sur Unsaved Changes ) droite puis sur Save Changes (save file)
Une fois la configuration appliquée, d’autres modules seront donc ajoutés dans le fichier de configuration nsclient.ini :
- [/settings/external scripts/scripts]
- [/settings/external scripts/alias]
- [/settings/external scripts/wrappings]
- [/settings/eventlog/real-time/filters]
- [/settings/WEB/server]
Si vous avez déjà NSClient installé, mais sans l’interface Web, vous pouvez activer simplement le mode web :
- Lancer une invite de commande (CMD)
- Se positionner dans le répertoire NSClient++ et activer le mode web
C:\Users\Administrateur.PIXELABS#> cd "\Program Files\NSClient++" ... C:\Program Files\NSClient++#> nscp web install Enabling WEB from (currently not supported): 127.0.0.1,172.16.1.6 HTTP(s) is enabled using C:\Program Files\NSClient++/security/certificate.pem. Point your browser to: 8443 ... ... C:\Program Files\NSClient++#> net stop nscp Le service NSClient++ (x64) s’arrête.. Le service NSClient++ (x64) a été arrêté. ... ... C:\Program Files\NSClient++#> net start nscp Le service NSClient++ (x64) démarre. Le service NSClient++ (x64) a démarré. ... ... C:\Program Files\NSClient++>
Configuration Module NRPE
Nous allons maintenant passer à la configuration du module NRPE. Lancez une invite de commande (CMD) :
Se positionner sur le dossier NSClient++ :
C:\Users\Administrateur.PIXELABS#> cd "\Program Files\NSClient++"
Lancez les commandes suivantes l’une après l’autre :
C:\Program Files\NSClient++#> nscp settings --path /settings/NRPE/server --key insecure --set true C:\Program Files\NSClient++> C:\Program Files\NSClient++#> nscp settings --path /settings/NRPE/server --key "use ssl" --set true C:\Program Files\NSClient++> C:\Program Files\NSClient++#> nscp settings --path /settings/NRPE/server --key "ssl options" --set "" C:\Program Files\NSClient++> C:\Program Files\NSClient++#> nscp settings --path /settings/NRPE/server --key "verify mode" --set "" C:\Program Files\NSClient++>
Vous pouvez maintenant visualiser/modifier ses paramètres depuis le fichier nsclient.ini :
Edit : changer le paramètre suivant à la ligne 22 : use ssl = false
Voici l’état de mon fichier nsclient.ini : Télécharger. J’ai rien modifié d’autres dans ce fichier à part NRPE, le reste a été rajouté automatiquement après la première connexion à l’interface Web.
Remarque : Vous pouvez remplacer votre fichier nsclient.ini par le mien sans problème (modifier l’adresse IP et le mot de passe) puis redémarrer le service NSClient++.
Centreon Plugin NRPE
Nous allons utiliser le plugin Centreon suivant :
apps::protocols::nrpe::plugin
Pour tester la supervision, nous allons nous servir des alias déjà configurés automatiquement par NSClient dans le fichier nscNSClient.ini sous [/settings/external scripts/alias]
Check-CPU
Supervision du CPU via le protocole NRPE :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=apps::protocols::nrpe::plugin --mode=query --custommode=nrpe --hostname=serv-exchange --command=alias_cpu OK CPU Load ok.|'5m'=3%;80;90 '1m'=2%;80;90 '30s'=3%;80;90 [root@centreon plugins]#
Check-Memory
Supervision de la mémoire RAM :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=apps::protocols::nrpe::plugin --mode=query --custommode=nrpe --hostname=serv-exchange --command=alias_mem OK: physical memory: Total: 63.9G - Used: 34.4G (53%) - Free: 29.5G (47%), virtual memory: Total: 128T - Used: 89.9M (0%) - Free: 128T (100%), paged bytes: Total: 73.4G - Used: 40.5G (55%) - Free: 32.9G (45%), page file: Total: 73.4G - Used: 40.5G (55%) - Free: 32.9G (45%)|'physical memory %'=53%;80;90 'physical memory'=34.36GB;51.12;57.52;0;63.91 'virtual memory %'=0%;80;90 'virtual memory'=89.91MB;107374182.3;120795955.09;0;134217727.88 'paged bytes %'=55%;80;90 'paged bytes'=40.47GB;58.72;66.07;0;73.41 'page file %'=55%;80;90 'page file'=40.47GB;58.72;66.07;0;73.41 [root@centreon plugins]#
Check-UpTime
Supervision du temps de fonctionnement du serveur :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=apps::protocols::nrpe::plugin --mode=query --custommode=nrpe --hostname=serv-exchange --command=alias_up OK all counters within bounds.|'uptime'=213319000;3600000;0 [root@centreon plugins]#
Check-Disk
Supervision des disques :
[root@centreon plugins]# ./centreon_plugins.pl --plugin=apps::protocols::nrpe::plugin --mode=query --custommode=nrpe --hostname=serv-exchange --command=alias_disk OK: All drives within bounds.|'C:\ %'=30%;10;5 'C:\'=194.45GB;27.68;13.84;0;276.83 'E:\ %'=44%;10;5 'E:\'=1189.59GB;208.89;104.44;0;2088.87 'F:\ %'=49%;10;5 'F:\'=1072.69GB;208.89;104.44;0;2088.87 'G:\ %'=52%;10;5 'G:\'=1012.53GB;208.89;104.44;0;2088.87 'H:\ %'=44%;10;5 'H:\'=1190.13GB;208.89;104.44;0;2088.87 'N:\ %'=93%;10;5 'N:\'=155.8GB;208.89;104.44;0;2088.87 'O:\ %'=81%;10;5 'O:\'=414.55GB;208.89;104.44;0;2088.87 'P:\ %'=100%;10;5 'P:\'=184.44MB;213900.59;106950.3;0;2139005.94 'Q:\ %'=100%;10;5 'Q:\'=184.25MB;213900.59;106950.3;0;2139005.94 [root@centreon plugins]#
Allez, je m’arrête ici les amis, je pensais terminer ce projet en une seule partie, mais c’est raté…
Nous verrons dans le prochain chapitre, la configuration des scripts PowerShell dans le fichier de configuration NSClient++
Bonne journée et à 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/
Bel article, je l’ai partagé avec mes amis.
Merci pour le partage 😉
Bel article, je l’ai partagé avec mes amis.
Merci bien 😉
Bonjour,
Il est possible de remonter en séparer les disques par exemple que le disque C: ou le disque D: ?
Merci
Bonjour,
Il faut utiliser le plugin Windows c’est mieux.
Les commandes pour remonter un seul ou plusieurs disques sont ici : https://pixelabs.fr/installation-complete-centreon-2-8-26-iso-3-4-6-el7/#Check_All_Disk
J’ai essayer avec la modification, ça fonctionne.
Merci beaucou !
Nickel.
Je viens de mettre à jour l’article.
Bonne journée.
J’ai redémarrer le service NSclient et là j’ai l’erreur
Tu as un problème de configuration SNClient++
Tu as également désactivé le firewall Windows ?
Dans le fichier de conf NSClient, change ce paramètre :
Si ça ne fonctionne pas, je peux y jeter un coup d’œil à distance si tu veux.
UNKNOWN: Failed to create socket: Connexion refusée
J’ai ce message
Par contre la j’ai une autre erreur UNKNOWN: Failed to create socket: Connexion refusée
Essaies plutôt comme ça :
Bonjour, j’ai une réponse en UNKNOW: No response from remote hosts.
De quoi ça peut venir ?
Bonjour,
Peux-tu me montrer la configuration NSClient ? Le fichier NSClient.ini
Tu ping bien ton serveur via Centreon ?
Bonjour,
Oui je ping bien.
Mon fichier nsclient:
Bien cordialement,
Peux-tu me montrer la commande Centreon ?
Bonjour, j’ai mis un message et j’ai eu une réponse de votre part, mais je ne voit plus ce message…
Ma question était que lorsque j’interrogeais mon centreon avec cette requête :
j’avais cette réponse :
UNKNOWN: Failed to create socket: Argument invalide
Mon fichier nsclient.ini est le suivant :
Voici mon fichier, il fonction très bien :
Un autre exemple via script powershell :
Voici le fichier, tu peux remplacer le tiens et n’oublie pas de redémarrer le service NSCLIENT++ après modification.
Bonjour,
J’ai un soucis lorsque je fait la commande :
j’ai le résultat suivant :
Salut Thor8one,
C’est un problème de configuration NRPE sur ton serveur Exchange (NSClient++).
Peux-tu me montrer le fichier de configuration NSClient ?
Bonjour ,
Moi je n’est aucune donnée 🙁
[root@localhost ~]# cpanm –uninstall Convert::Binary::C
! Convert::Binary::C is not found in the following directories and can’t be uninstalled.
/root/perl5/lib/perl5/x86_64-linux-thread-multi
/root/perl5/lib/perl5
Salut,
ça donne quoi depuis Centreon Web ? toujours le message ?
Salut,
Je ne l’ai pas tester depuis Centreon Web car impossible d’allez plus loin je ne peu pas utilisé le plugin NRPE, j’ai le même probléme que Jerome ci dessous mais en suivant les infos je ne peu pas allez plus loin 🙁
Salut, je peux tenter de t’aider à distance si tu veux.
Si c’est possible, envoie moi un mail : sysadmin[at]pixelabs.fr
-sysadmin
Problème résolu à distance : Installation des modules perl suivant :
J’ai ensuite copié les modules au bon endroit.
-sysadmin.
Bonjour,
j’ai le message d’erreur suivant quand je veux utiliser les nouveau plugins nrpe
j’ai bien tout les répertoires mais seul l’utilisateur à les droits , comment faut-il les ajouter pour l’utilisateur centreon-engine
Merci de votre aide.
Salut,
Il te manque des plugins perl, commence par installer celui la :
Bonne journée,
sysadmin.
Merci de la réponse
j’ai déjà installé le convert::binarry::c
j’ai lu qu’il fallait désactive l’environnement perl au profil root?
You need to unset perl environment variable for your root user –> https://github.com/centreon/centreon-plugins/issues/1637
Salut Jerome,
Tu as eu le même problème que moi. J’ai tout essayé et je n’ai pas pu malheureusement.
Alors, j’ai copié les fichiers de ce module la ou centreon les voulait…
C’est chiant mais ça marche, faut juste copier les fichiers respectivement dans les bon répertoire…
Je n’ai pas centreon sous la main, si tu n’y arrives pas tu me le dis, je te montrerais ou tu dois copier les fichiers de ce module dès que possible.
bonne journée.
sysadmin
Bonjour,
je veux bien , car je n’ai pas trouvé ou copier les fichiers du module , et cela n’a pas marché en désactivant l’environnement perl du compte root.
Salut,
Commence par installer CPANM :
Une fois installé, affiche le répertoire d’installation du module :
C’est ici que le module doit être installé. Du coup, tu dois avoir les chemins différents du mien.
Il faut maintenant copier les fichiers de ce module vers l’emplacement ci-dessus. Si un répertoire n’existe pas, tu peux le créer.
Exemple : pour copier le fichier C.pm :
Une fois terminé, Centreon risque de te demander un autre module : Digest::CRC
tu dois faire de même.
Bon courage.
-sysadmin.
Mise à jour majeur 🙂
Supervision avec Centreon Plugin Packs
Bonjour,
merci pour ton retour .
j’ai copié les fichiers, il me semble ne pas les avoir copié au bon endroit
# cpanm –uninstall Convert::Binary::C
Convert::Binary::C contains the following files:
/root/perl5/bin/ccconfig
/root/perl5/lib/perl5/x86_64-linux-thread-multi/Convert/Binary/C.pm
/root/perl5/lib/perl5/x86_64-linux-thread-multi/Convert/Binary/C/Cached.pm
/root/perl5/lib/perl5/x86_64-linux-thread-multi/auto/Convert/Binary/C/C.so
/root/perl5/man/man1/ccconfig.1
/root/perl5/man/man3/Convert::Binary::C.3pm
/root/perl5/man/man3/Convert::Binary::C::Cached.3pm
j’ai copié les fichiers comme ceci
# cp /root/perl5/lib/perl5/x86_64-linux-thread-multi/Convert/Binary/C/Cached.pm /usr/local/lib64/perl5/Convert/Binary/
# cp /root/perl5/lib/perl5/x86_64-linux-thread-multi/auto/Convert/Binary/C/C.so /usr/local/lib64/perl5/Convert/Binary/
# cp /root/perl5/man/man1/ccconfig.1 /usr/local/lib64/perl5/Convert/Binary/
# cp /root/perl5/man/man3/Convert::Binary::C.3pm /usr/local/lib64/perl5/Convert/Binary/
# cp /root/perl5/man/man3/Convert::Binary::C::Cached.3pm /usr/local/lib64/perl5/Convert/Binary/
# ll
total 1992
-r–r–r– 1 root root 10622 Oct 3 16:05 Cached.pm
-r–r–r– 1 root root 13786 Oct 3 16:06 ccconfig.1
-r–r–r– 1 root root 184774 Oct 3 16:06 Convert::Binary::C.3pm
-r–r–r– 1 root root 6954 Oct 3 16:07 Convert::Binary::C::Cached.3pm
-r–r–r– 1 root root 147620 Oct 3 16:04 C.pm
-r-xr-xr-x 1 root root 1660776 Oct 3 16:05 C.so
il me semble cependant qu’il doit me manquer quelque chose car j’ai voulu tester un autre plugin ./centreon_plugins.pl –plugin=database::mongodb::plugin et j’ai le même message
Can’t locate MongoDB.pm in @INC
Merci encore de votre aide.
Salut,
C’est très bien mais, attention, il te manque le dossier « C » et le reste ce n’est pas bon :
# cp /root/perl5/lib/perl5/x86_64-linux-thread-multi/Convert/Binary/C/Cached.pm
/usr/local/lib64/perl5/Convert/Binary//usr/local/lib64/perl5/Convert/Binary/C/# cp /root/perl5/lib/perl5/x86_64-linux-thread-multi/auto/Convert/Binary/C/C.so
/usr/local/lib64/perl5/Convert/Binary//usr/local/lib64/perl5/auto/Convert/Binary/C/# cp /root/perl5/man/man1/ccconfig.1
/usr/local/lib64/perl5/Convert/Binary//usr/local/lib64/perl5/man/man1/# cp /root/perl5/man/man3/Convert::Binary::C.3pm
/usr/local/lib64/perl5/Convert/Binary//usr/local/lib64/perl5/man/man3/# cp /root/perl5/man/man3/Convert::Binary::C::Cached.3pm
/usr/local/lib64/perl5/Convert/Binary//usr/local/lib64/perl5/man/man3/Il te manque le module perl pour MongoDB :
Bonne journée,
-sysadmin.