|
La configuration de Nagios est une chose très simple puisque lors de l'installation, des fichiers exemple sont installés. Il suffit de s'en inspirer pour créer les hotes et les services qui nous intéressent. Pour pouvoir configurer la surveillance d'un hote ( la démarche est la même lorsqu'il y en a plusieurs ), il faut renseigner plusieurs fichiers de configuration. Hosts.cfg C'est dans ce fichier que l'on va décrire les hotes que l'on veut surveiller. Un hote peut être un serveur, une station de travail, une imprimante, un switch, enfin tout ce qui a une IP sur votre lan. Le plus simple est de passer par l'exemple : Au debut du fichier exemple, vous pouvez remarquer qu'un " generic-host " est déclaré ; il sera réutilisé pour les autres hotes et vous pouvez en refaire dès que le besoin s'en fait ressentir. define host { # Nom de ce modèle d'hote name generic-host # Active les alertes notifications_enabled 1 # Active le gestionnaire d'évènements event_handler_enabled 1 # Active la détection de changement d'état flap_detection_enabled 1 process_perf_data 1 retain_status_information 1 retain_nonstatus_information 1 register 0 # Le groupe de contact associé à cet hote contact_groups localhost-admins } define host { # On utilise les paramètres de l'hote générique use generic-host # Nom de l'hote : il faut que ce soit un nom routable sur le réseau host_name poste1.lan # Description de l'hote alias localhost # Adresse Ip de l'hote address 127.0.0.1 # Le nom de l'hote parent dans la hierarchie du réseau. Option facultative parents switch1.lan # Le nom de la commande que l'on utilise pour le surveiller check_command check-host-alive # C'est le nombre de fois que Nagios relancera la commande controle si celle-ci renvoie un état différent de OK max_check_attempts 10 # C'est l'intervalle de temps en minutes avant que Nagios n'alertes un contact notification_interval 120 # C'est la pèriode durant laquel des notifications peuvent être envoyées aux contacts (24h x 7j) notification_period 24x7 # Définit quand les alertes doivent être envoyées : d : envoie de la notification pour un état DOWN u : envoie de la notification pour un état UNREACHABLE r : envoie de la notification pour un retour a la normal n : aucune notification ne sera envoyé notification_options d,u,r } Hostgroups.cfg C'est dans ce fichier que l'on va classer vos hotes par groupe. define hostgroup { # Le nom du groupe hostgroup_name postes # La description du groupe alias postes de travail # Les hotes membre de ce groupe. Ici vous pouvez remarquer que l'on peut spécifier plusieurs hotes a la suite ne les séparant par une virgule. Cette methode est bonne pour tous les fichiers de configurations. members poste1.lan, poste2.lan } Hostextinfo.cfg C'est dans ce fichier que l'on va indiquer les informations annexe aux hotes tels que leurs icones dans le cgi. Si les informations de ce fichier ne sont pas prisent en compte, vérriifer dans nagios.cfg que ce fichier est indiqué. define hostextinfo{ # Nom de l'hote host_name poste1.lan # Icone que 'lon va trouvé associé a l'hote dans les services du cgi icon_image win40.png # Icone qui sera présente sur la map 3d vrml_image win40.png # Icone qui sera présente dans le " status map " statusmap_image win40.gd2 } Services.cfg La il va falloir commencer le gros boulot, car c'est dans ce fichier que ce passe la très grosse majorité de la configuration. Comme dans hosts.cfg, au début du fichier est spécifié un " generic-service " qui sera réutilisé par les autres services. define service { # Nom du service générique name generic-service # Acitve la vérification des services actifs active_checks_enabled 1 # Active la vérification des service passifs passive_checks_enabled 1 # Il est conseillé de laisser ce paramètre a 1 pour des raisons de performances parallelize_check 1 obsess_over_service 1 # Désactive le controle de validité des données check_freshness 0 # Active le service d'avertissement notifications_enabled 1 # Active le gestionnaire d'énènements event_handler_enabled 1 # Active la détection de changement d'état flap_detection_enabled 1 process_perf_data 1 retain_status_information 1 retain_nonstatus_information 1 register 0 } define service { # On utilise le service générique use generic-service # Nom des hotes a controler host_name poste1.lan, poste2.lan # Description du service service_description Ping # Si le service a controler n'est pas important, mettre a 1 is_volatile 0 # Pèriode durant laquelle Nagios va faire le check_service check_period 24x7 # C'est le nombre de fois que Nagios relancera la commande si celle_ci renvoie un état différent de OK max_check_attempts 3 # C'est l'intervalle en minutes séparant 2 vérifiations standards normal_check_interval 5 # Pariel que l'option précédente mais pour une nouvelle tentative retry_check_interval 1 # Nom du groupe de contatc a contacter en cas de problème contact_groups localhost-admins # C'est l'intervalle de temps écoulé en minutes avant que Nagios n'alerte un contact notification_interval 5 # Pèriode durant laquelle Nagios peut alerter un conatct notification_period 24x7 # Définit quand les notifications doivent etre envoyées c : envoie de notification pour un état CRITICAL w : envoie de notification pour un état WARNING u : envoie de notification pour un état UNKNOWN r : envoie de notification pour un retour a la normal n : aucune notification ne sera envoyée notification_options c,r # La commande pour surveiller l'hote check_command check_ping!100.0,20%!500.0,60% } Une fois que vous avez configurer correctement ces différents fichiers, vous pouvez controler si Nagios ne génère pas d'erreurs en lancant la commande : nagios -v nagios.cfg Si il n'y a pas d'erreurs, vous pouvez lancer votre cgi et controler que tout ce passe bien.
|
|
|
Flash info
Grosse mise a jour de la section Nagios. Au rendez-vous, les plugins NSCA et NRPE mais aussi NagiosGraph... |
Qui est en ligne
|