2013
Nagios - Linux 2013
Sommaire
I. Introduction....................................................................................................................................3
II. Nagios.............................................................................................................................................3
1. Pré-requis...................................................................................................................................3
2. Configuration..............................................................................................................................3
3. Création d’hôtes.........................................................................................................................4
4. Création de groupes...................................................................................................................6
5. Création d’un service..................................................................................................................6
6. Partie Privée...............................................................................................................................7
7. Plugins........................................................................................................................................9
III. Fan............................................................................................................................................11
8. Pré-requis.................................................................................................................................11
9. Centreon...................................................................................................................................11
10. Nagvis...................................................................................................................................13
2 GRAGLIA – CORNU – VERIE - DESCUDE
Nagios - Linux 2013
I. Introduction
Nagios (anciennement appelé Netsaint) est une application permettant la surveillance système et réseau. Elle surveille les hôtes et services spécifiés, alertant lorsque les systèmes ont des dysfonctionnements et quand ils repassent en fonctionnement normal. C'est un logiciel libre sous licence GPL.
C'est un programme modulaire qui se décompose en trois parties :
1. Le moteur de l'application qui vient ordonnancer les tâches de supervision.
2. L'interface web, qui permet d'avoir une vue d'ensemble du système d'information et des possibles anomalies.
3. Les plugins, une centaine de mini programmes que l'on peut compléter en fonction des besoins de chacun pour superviser chaque service ou ressource disponible sur l'ensemble des ordinateurs ou éléments réseaux du SI.
II. Nagios
1. Pré-requis
Nous allons installer Nagios sur une machine que vous avez au préalable configurée, du type machine virtuelle Debian.
Pour installer dans le terminal taper la commande suivante :
apt-get install nagios3 nagios3-doc
L’installation nagios par défaut installe d’autre logiciel nécessaire :
- Apache2- Php5- Gd- …
2. Configuration
Configuration de Nagios et son interface
/etc/default/nagios3
/etc/nagios3/cgi.cfg
/etc/nagios3/nagios.cfg
3 GRAGLIA – CORNU – VERIE - DESCUDE
# /etc/default/nagios3
ENABLED="yes"
NAGIOSCFG="/etc/nagios3/nagios.cfg"
CGICFG="/etc/nagios3/cgi.cfg"
NICENESS=5
Nagios - Linux 2013
Plugins de supervision
/usr/lib/nagios/plugins/check_xxxx
Modèle d'exploitation des plugins (commandes)
/etc/nagios-plugins/config/xxxx.cfg
Définition des machines, des groupes, des services...
/etc/nagios3/conf.d/xxxx.cfg
Répertoire d'interactivité avec l'interface web
/var/lib/nagios3/rw/
Réglage de l'interface graphique
Éditer /etc/nagios3/cgi.cfg
Régler la fréquence de rafraîchissement de l'écran
refresh_rate=5
Autoriser l'interactivité avec le serveur web
Éditer /etc/nagios3/nagios.cfg
check_external_command=1
Ajouter www-data dans le groupe nagios
adduser www-data nagios
Donner les droits d'écriture au groupe nagios donc à www-data sur /var/lib/nagios3/rw/
chmod g+rwx /var/lib/nagios3/rw
chmod u+s /var/lib/nagios3/rw
Redémarrer le démon nagios3
/etc/init.d/nagios3 restart
Autoriser l'exploitation de tous les plugins, même ceux qui utilisent des commandes nécessitant les droits de root
chmod u+s /usr/lib/nagios/plugins/*
4 GRAGLIA – CORNU – VERIE - DESCUDE
Nagios - Linux 2013
3. Création d’hôtesa. Introduction
On peut assembler les hôtes selon les besoins
Il faut pour des raisons pratiques créer des groupes
- Par système d'exploitation (linux, mac, win2k3...)- Par service rendu (http, ssh, ftp...)- Par type de matériels (routeur, switch, serveurs...)- Par marque de matériels (switch cisco, switch 3com...)- Par surveillance à effectuer (mémoire, température, occupation disque...)
b. En pratique
Les fichiers de configuration sont libres
Ils peuvent contenir n'importe quels objets
- Être in-homogènes- En quantité quelconque- Sous n'importe quel nom
Mais il est préférable de garder la structure par défaut et de l'enrichir
Deux contraintes :
- Les fichiers doivent être suffixés .cfg- Stockés dans /etc/nagios3/conf.d/
Créez donc un fichier qui contiendras les hôtes, sans oublié l’extension .cfg, utilisez le fichier de configuration host installé de base pour compléter le votre.
Fichier Crée Fichier Crée
Fichier de conf host.cfg
5 GRAGLIA – CORNU – VERIE - DESCUDE
Nagios - Linux 2013
…
4. Création de groupes
Fichier de conf hostsgroups.cfg
5. Création d’un service
Fichier de conf services.cfg
6 GRAGLIA – CORNU – VERIE - DESCUDEPensez à redémarrer le service après les modifications:
/etc/init.d/nagios3 restart
Nagios - Linux 2013
6. Partie Privée
Quatre possibilités
Écrire des plugins qui lancent les commandes via ssh sur une machine distante
- Authentification ssh par certificat- Très fort overload réseau et équipement pour l'ouverture du tunnel ssh- Rarement utilisée
Implanter des agents (NRPE ou NS-client) qui vont exécuter les plugins localement, à la demande de Nagios, et lui renvoyer les résultats schéma
- Surveillance dite « active »- Nrpe sous linux et Mac OS X, NS-client sur Windows schéma- Ne permet pas de surveiller les architectures distribuées- Non utilisable sur des matériels d'électronique active
Implanter des démons (NSCA) sur les machines à surveiller qui déclencheront eux-même les contrôles et feront remonter l'information vers Nagios schéma
- Pas de contrôle par Nagios- Diminue l'overload réseau- Permet de surveiller les architectures distribuées- Non utilisable sur des équipements d'électronique active
Utiliser des agents SNMP
c. NRPE
Installation du plugin NRPE sur le serveur Nagios
apt-get install nagios-nrpe-plugin
Installation de l'agent NRPE et des plugins sur le client linux
apt-get install nagios-nrpe-server nagios-plugins
Sur l’hôte distant configure le fichier de conf services
7 GRAGLIA – CORNU – VERIE - DESCUDE
define service {host_name srv-webuse generic-serviceservice_description Charge
Processeurcheck_command check_nrpe_1arg!
check_load}
Nagios - Linux 2013
Accéder à votre configuration avec votre navigateur web :
Identification :
Login : nagiosadmin
MDP : admin
Hosts :
Services :
?N
Exemple NRPE :
8 GRAGLIA – CORNU – VERIE - DESCUDE
Pensez à redémarrer le service après les modifications:
/etc/init.d/nagios3 restart
Nagios - Linux 2013
7. Pluginsd. Introduction
Écrire ses propres plugins
- Le langage est libre- Un plugin peut accepter 0..n paramètres- Un plugin doit fournir un état de sortie (exit), parmi 4, après l'exécution d'un algorithme
0 → OK 1 → Warning 2 → Critical 3 → Unknown
Un plugin peut générer un message sur une ou plusieurs lignes. Ce message sera inclus dans les vues détaillées de Nagios
- Un plugin est stocké (en principe) dans /usr/lib/nagios/plugins- On peut le tester indépendamment de Nagios- Et vérifier la valeur de retour, sous linux avec : echo $?
e. Configuration
Objectif : compter le nombre d’utilisateurs potentiels, déclarés sur une machine, en comptant le nombre de répertoires dans /home/
- Le programme du plugin- Test du plugin- Définition de la commande associée au plugin- Stockée dans /etc/nagios-plugins/config/- Intégration dans la surveillance de la machine hôte- Définition d'un nouveau service utilisant la nouvelle commande
Intégration dans les autres machines
- Copie du plugin sur chaque machine- Définition du service pour le groupe de machines
9 GRAGLIA – CORNU – VERIE - DESCUDE
#check_nb_userdefine command {
command_name check_nb_usercommand_line
/usr/lib/nagios/plugins/check_nb_user '$ARG1$' '$ARG2$' }# ARG1 est la valeur d'alerte# ARG2 est la valeur critique
Nagios - Linux 2013
Visualisation sur Nagios Interface Web :
10 GRAGLIA – CORNU – VERIE - DESCUDE
#!/bin/bash# Compte le nombre de répertoires utilisateur dans /home
N=`ls /home | wc -l`# On part du principe que ça va être bon
R=0# Petit message pour faire joli dans Nagios
echo il y a $N utilisateurs dans /home/# On teste les conditions limites
if [ $N -gt $2 ] ; then R=2 # S'il y en aplus que la valeur critique
elif [ $N -gt $1 ] ; then R=1 # s'il y en a plus que la valeur d'alerte
elif [ $N -lt 1 ] ; then R=3 # s'il n'y en a pas
define service { hostgroup_name srv-dhcp service_description DHCP
check_command check_dhcp use generic-service
notification_interval 0 ; set > 0 if you want to be renotified
}
Pensez à redémarrer le service après les modifications:
/etc/init.d/nagios3 restart
Nagios - Linux 2013
III. Fan
8. Pré-requis
Procurez vous une image .iso de l’OS FAN, qui est en faites un package complet pour la supervision réseau, avec tous les utilitaires qui s’installe avec L’OS.
Lors de l’installation un assistant d’installation vous guidera pour configurer correctement la machine. Le serveur sera accessible par son adresse IP.
9. Centreon f. Ajouter un hôte
Pour accéder à centreon héberger par votre machine FAN qui vient d’être installé, tapez dans votre navigateur web.
Dans le menu cliquez sur , puis , la fenêtre suivant s’affiche.
11 GRAGLIA – CORNU – VERIE - DESCUDE
Nagios - Linux 2013
Pour ajouter un hôte cliquez sur Add, et compléter la fiche.
Suivre la même procédure pour ajouter un service, et un groupe.
12 GRAGLIA – CORNU – VERIE - DESCUDE
Nagios - Linux 2013
10. Nagvisg. Connexion
Pour accéder à Nagvis héberger par votre machine FAN qui vient d’être installé, tapez dans votre navigateur web :
Pour accéder à centreon, remplacer nagvis par centreon.
h. Création d’une map
Sélectionner une carte par défaut, ou créez une nouvelle carte en suivant les étapes ci-dessous :
Créer la carte map dans la partie Créer une carte :
13 GRAGLIA – CORNU – VERIE - DESCUDE
Nagios - Linux 2013
Ouvrez la carte créée, dans le menu action ajouté des icones que nous allons faire correspondre au hosts.
Add Icon -> Ajouter l’hôte correspondant.
Utilisez dans Actions pour déplacer les icones sur la MAP.
Dans Edit Map -> Map Options, changez les paramètres votre carte comme les types d’icones et de nombreuses autre options.
14 GRAGLIA – CORNU – VERIE - DESCUDE
Top Related