Un peu de supervision avec Nagios, pourquoi pas!
[[http://wiki.auf.org/wikiteki/Projet/Supervision/AutomatisationdeNagios|Jettez un coup d'oeil ici aussi!]]

== Installation ==
Rien de plus simple:
{{{
# aptitude install apache2 nagios3
}}}
Pour la configuration du mot de passe de nagiosadmin
{{{
# dpkg-reconfigure nagios3-common
}}}
Cette commande crée le fichier /etc/nagios3/htpasswd.users qu'on peut utiliser plus tard pour gérer de nouveaux utilisateurs et leur mot de passe. 
Pour l'instant, pas de mysql (chaque chose en son temps).

== Configuration ==
Il me semble que la configuration de nagios est une tâche de longue haleine. Alors je suis pas pressé, j'y vais au fur et à mesure que j'identifierais des besoins de monitoring. Par conséquent, cette section s'enrichira au fur et à mesure que j'avancerais dans cette aventure.

=== Intégration avec Apache2 ===
Après installation du paquet nagios3, un fichier /etc/nagios3/apache2.conf est founit un lien vers ce fichier crée dans /etc/apache2/conf.d/nagios3.conf. Donc:
 * créer un fichier /etc/apache2/site-available/nagios
{{{
web:/etc/nagios3# cat /etc/apache2/sites-available/nagios 
NameVirtualHost *
<VirtualHost *>
	ServerAdmin webmaster@cm.auf.org
	ServerName nagios.cm.auf.org
	ServerAlias nagios.cm.refer.org

	#DocumentRoot /nagios3
        <Directory />
                #Options FollowSymLinks
                #AllowOverride None
                RedirectMatch ^/$ /nagios3/
        </Directory>

	ErrorLog /var/log/apache2/nagios-error.log

	LogLevel warn

	CustomLog /var/log/apache2/nagios-access.log combined
	ServerSignature On

	#SSLEngine            on 
	#SSLCertificateFile   /etc/apache2/ssl/server.crt
	#SSLCertificateKeyFile   /etc/apache2/ssl/server.key

</VirtualHost>

}}}
 * Activer la config:
{{{
web:/etc/apache2/sites-available# a2ensite nagios
web:/etc/apache2/sites-available# invoke-rc.d apache2 reload
}}}

 * Ajouter nagios.cm.{auf,refer}.org dans le dns
 * Un simple http://nagios.cm.auf.org dans le navigateur + login et mot de passe et nous voilà dans l'interface web de nagios3.
=== config des hôtes ===
Basée sur l'approche décrite [[http://wiki.auf.org/wikiteki/Projet/Supervision/AutomatisationdeNagios|Ici]].
{{{
              fichiers *.tmpl
                    |
                    |
                    | via le script compile
                    |
                    |
                    v
              fichiers .py     +      fichiers .csv (ou d'autres!!!)
                    \                        /
                     -------------------------
                                |
                                | via le script makeit (que je propose)
                                |
                                v
                      fichiers *.cfg de Nagios
}}}

Script makeit (version alpha très très très .... très améliorable): voir le [[attachment:makeit.py| script]].

'''Quelques éclaircissements: '''
 * Motivation du script: pouvoir ajouter de nouveaux templates sans avoir à modifier le script
 * Pour le moment il ne fait rien d'autres que d'afficher le contenu des fichiers .cfg générés (on peut facilement l'adapter pour écrire dans un fichier, mais j'y reviens)
 * De plus, je suppose que les fichiers .tmpl, et les fichiers .py et .cfg générés sont tous dans le répertoire courant. Comportement à corriger, j'y travaille.
 * Il y a plein de déchets dans ce script, mais ca semble donner de bons résultats. On jouera au puriste plus tard.
 * Un bon fichier make pour combiner les deux étapes décrites ci-dessus reste à faire.
 * Conclusion: je bavarde autant, parce que ce sera mon premier vrai (utile?) script écrit en python.