Big Brother 2.0 is watching you
By n on Tuesday 15 August 2017, 19:24 - Permalink
La Tourmentine dispose d'un système de surveillance ultra-moderne à base d'Icinga, qui ne sert que très peu car ça ne plante jamais voyons. Pour configurer celui-ci, comme j'ai passé l'âge d'éditer des fichiers à la main j'ai opté pour l'outil NConf, plus maintenu depuis des années, mais "qui fait le job".
Enfin, qui faisait.
L'autre jour en voulant ajouter un service, la conf ne se déployait plus. En lançant le script de déploiement (en Perl, quelle idée pour une appli PHP...), je me prends un:
[ Initializing NConf perl-API (library version 0.3, written by A. Gargiulo) ]
[ Copyright (c) 2006 - 2012 Sunrise Communications AG, Zurich, Switzerland ]
Can't use a hash as a reference at [...]/nconf/bin/lib/NConf/ExportNagios.pm line 1274.
Compilation failed in require at bin/generate_config.pl line 51.
BEGIN failed--compilation aborted at bin/generate_config.pl line 51.
Sans doute du à la dernière mise à jour de Perl... n'étant pas masochiste je n'ai pas cherché plus loin, ou plutôt j'ai cherché une solution de remplacement pour me débarrasser de NConf (et puis du Perl en moins, ça n'a pas de prix)
J'utilise Zabbix au taf depuis quelques années déjà, mais après l'avoir installé j'ai finalement été découragé par la centaine de services à migrer, et pour la plupart à réécrire :-/
Je me suis alors tourné vers Icinga2 et son ami Icinga2-module-director (qui est un peu buggé mais bon), qui, hormis le fait qu'ils utilisent une base de données, ont l'immense avantage de gérer les fameuses sondes NRPE sur lesquelles reposent 80% de services :-)
La seule ombre au tableau étant que je risque de faire une croix sur les outils utilisant les CGI d'Icinga 1.x genre Nagios Checker/iMoin/NagStaMon, mais il est parait-il possible de câbler lesdits CGI sur la version 2. À voir quand tout sera migré.
En bonus, l'astuce du professionnel: Si vous êtes sous *BSD et que vous souhaitez personnaliser l'expéditeur des notifications par mail, installez heirloom-mailx et remplacez:
MAILBIN="mail"
par:
MAILBIN="/usr/local/bin/mailx"
dans scripts/mail-service-notification.sh
et scripts/mail-host-notification.sh