Installer shinken ? c’est facile !
Shinken commence à bien faire parler de lui. Seul problème, l’installation est relativement ardue pour les « non initiés ». C’est à partir de ce constat que les équipes du projet shinken ont décidé de simplifier autant que possible cette étape. Il existe dans les dépôts (et ce sera officiel pour la version 1) un script prenant en charge tous les aspects de l’installation de shinken (voir même plus).
Le script en question permet les actions suivantes :
- Installer shinken (et le supprimer, mais personne ne l’utilise
) - Sauvegarder et restaurer la configuration, les logs et les plugins installés (utile en phase de mise a jour)
- Effectuer une rotation des logs (avec compression)
- Paramétrer les démons devant être activés (dans une architecture distribuée c’est utile)
L’installation prend en charge les distributions basées sur Debian, Redhat 5.5 et 6.x et bientôt Suse Linux Enterprise Server (en version 10 et 11). Bon soyons honnête, le script à été intensivement testé sous Debian 6 et Ubuntu > 10.04. Il semble correctement fonctionner sour RedHat/Centos 6 et doit être testé de manière approfondie sur Debian 5 et Ubuntu < 10.04. Et pour cela rien de mieux que d’impliquer la communauté !
Le script se charge de tout ! Installation des dépendance et paramétrage. Après installation il suffit de le lancer.
Bien sur un ordonnanceur de supervision sans « plugins » de supervision ne serait pas très utile. Le script prend en charge l’installation d’un ensemble de plugins :
- check_esx3
- nagios-plugins
- check_oracle_health
- check_mysql_health
- check_wmi_plus
- check_mongodb
- check_emc_clariion
- check_nwc_health
- check_hpasm
- capture_plugin
En dehors des plugins, le script permet d’ajouter quelques « addons » bien utiles.
- pnp4nagios pour la métrologie
- l’interface multisite du projet check_mk pour la console (elle complète bien l’interface native de shinken)
- Nagvis devrait apparaître d’ici la version 1.0
- Sans oublier l’interface native de shinken qui apporte pas mal d’innovations
Un exemple d’utilisation est présent dans le wiki : http://wiki.monitoring-fr.org/shinken/shinken-install
La suitemod_gearman : Nagios distribué 2.0
Jusqu’à présent, pour gérer Nagios en mode distribué, c’est à dire avec un serveur central et plusieurs pollers (satellites) qui sont chargés de l’exécution des contrôles, vous aviez le choix entre le setup « officiel » de la documentation, vieux et au nombreux goulets d’étranglements ou Centreon et sa capacité à marquer certains hôtes, services comme devant être vérifié par tel ou tel poller. La solution avec Centreon étant quand même beaucoup plus conviviale. Citons encore Merlin de chez OP5 mais le projet ne semble pas très utilisé dans le monde francophone et ne présente pas de réelles nouveautés par rapport à un setup distribué Centreon.
La suiteSuperviser votre Serveur de Licence Citrix
Marre de constamment contrôler votre Serveur de Licence Citrix pour savoir combien de licences vous consommez ? Cet article est une traduction de l’article publié par le site IT Point Of View.
Le script suivant est un script NRPE permettant de contrôler votre serveur de Licence Citrix. Ce script est basé sur l’article CTX112594 qui commence un peu à dater (Octobre 2007).
La suiteVous verrez check_cluster sous un autre angle
Le plugin check_cluster sert à superviser un regroupement d’hôtes et de services que vous considérez comme un cluster dans votre supervision. Nous allons voir que si on regarde ce plugin sous un autre angle, son utilisation peut être très utile et surtout très simplifié.
Par exemple, vous disposez d’une batterie de serveur Web et vous désirez créer un service capable de vous alerter quand votre cluster apache commence à être défaillant.
Admettons que vous avez 5 hôtes :
- WEB_1
- WEB_2
- WEB_3
- WEB_4
- WEB_5
Ce qui vous intéresse est de contrôler que tous vos serveurs soient disponible. Pour se faire, l’utilisation traditionnelle de check_cluster veut que vous définissiez dans votre fichier commands.cfg la commande suivante :
define command {
command_name check_cluster_host
command_line /usr/local/nagios/libexec/check_cluster -h -d $ARG1$ -w $ARG2$ -c $ARG3$
}
- $ARG1$ : prend les valeurs des états des hôtes de votre cluster ($HOSTSTATEID)
- $ARG2$ : prend la valeur de la limite d’hôtes en états non-OK avant de passer en WARNING
- $ARG3$ : prend la valeur de la limite d’hôtes en états non-OK avant de passer en CRITICAL
Donc dans votre fichier services.cfg, votre déclaration ressemble à ça :
define service {
host_name SURV_CLUSTER
service_description Cluster WEB
check_command check_cluster_host!$HOSTSTATEID:WEB_1$,$HOSTSTATEID:WEB_2$,$HOSTSTATEID:WEB_3$,$HOSTSTATEID:WEB_4$,$HOSTSTATEID:WEB_5$!2!4
...
}
Ce que l’on remarque c’est que l’option -d donc le $ARG1$ peut être très rébarbative si vous disposez d’un cluster assez gros. Vous me direz que les clusters courent pas les rues forcément et quand il y en a, ça reste relativement petit.
Mais imaginez, que vous désirez appliquer ce « principe » de cluster à d’autres utilisations.
- Regrouper les machines d’un site de production pour avoir un service de surveillance de ce site
- Regrouper les machines d’une région afin de remonter les impacts d’une coupure d’une fibre ou autre
- etc …
Pour vous simplifier la vie du check_cluster, il est possible de mixer la puissance du check_cluster avec celle des macros à la demande de Nagios (cf : Chapitre 26 – Utilisation des macros dans les commandes.
On va reproduire le même exemple que ci-dessus mais avec les macros à la demande.
La définition de la commande reste la même.
Nous avons toujours nos 5 hôtes. Nous allons les regrouper dans un groupe d’hôtes que nous allons appeler HSTG_CLUSTER_WEB.
define hostgroup{
hostgroup_name HSTG_CLUSTER_WEB
alias Groupe d'hôtes de notre cluster Web
members WEB_1,WEB_2,WEB_3,WEB_4,WEB_5
}
Pour finir, la déclaration de notre service se fera de la manière suivante :
define service {
host_name SURV_CLUSTER
service_description Cluster WEB
check_command check_cluster_host!$HOSTSTATEID:HSTG_CLUSTER_WEB:,$!2!4
...
}
J'explique un peu le principe de ma macro. La macro $HOSTSTATEID:HSTG_CLUSTER_WEB:,$ retournera une liste d'états hôtes séparés par des virgules pour les hôtes membres du groupe HSTG_CLUSTER_WEB:
$HOSTSTATEID:HSTG_CLUSTER_WEB:,$
La définition de cette macro retournera quelque chose ressemblant à ceci :
0,2,1,1,0,0,2
Ca tombe bien c'est ce que désire l'option -d de check_cluster. Donc vous voyez cette petite astuce permet de vous simplifier la vie pour la saisie de cette commande et surtout de ne pas se limiter qu'à une utilisation de cluster.
A vos config !
La suiteNagVis : Faites tourner vos cartes !
Votre cartographie représente un nombre incalculable de cartes ? Vous en avez marre de changer d’onglets dans votre navigateur pour visualiser et contrôler vos différentes cartes ? Une des fonctionnalités de NagVis peut répondre à vos soucis. Il s’agit de la rotation des cartes. Le principe est simple, il vous suffit de déclarer une balise dans la configuration de NagVis où vous allez préciser les cartes qui vous intéressent et la fréquence de rotation. Voici la démarche à suivre pour pouvoir bénéficier de ce petit plus.
Pour pouvoir réaliser une rotation de vos différentes cartes NagVis, il faut paramétrer une balise de rotation dans le fichier de configuration de nagvis (/votre/chemin/nagvis/etc/nagvis.ini.php) comme le modèle ci-dessous :
[rotation_test1]
rotationid="test1"
; These steps are rotated. The "Demo2:" is a label which is being displayed in
; the index pages rotation list.
maps="Ma_Carte1:carte1,Ma_Carte2:carte2"
; rotation interval (seconds)
interval=15
Explication :
- rotationid: C’est l’identifiant correspondant à votre cycle de rotation
- maps: C’est la liste des cartes que vous désirez voir dans votre cycle. La syntaxe est composé de maps= »label_carte1:nom_de_la_carte1,label_carte2:nom_de_la_carte2,… »
- interval: L’intervalle de rotation des cartes
Votre test est accessible à l’url suivante : http://IP_SERV_NAGIOS/nagvis/nagvis/index.php?rotation=test1
La suitewiki.nagios-fr.org – Installation Nagios 3.x sur CentOS 5.3
A ce jour, une nouvelle page de wiki est disponible expliquant comment installer un Nagios 3.x sur une CentOS. Vous trouverez un bas de cette page les pièges que j’ai rencontré lors que l’installation de celui-ci alors méfiance.
La suite

Sauf mention spéciale, le contenu de ce site est distribué sous licence