Outils pour utilisateurs

Outils du site


tech:generateur_de_conf_nagios

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
tech:generateur_de_conf_nagios [2025/05/05 10:19] Jean-Baptistetech:generateur_de_conf_nagios [2025/11/20 10:00] (Version actuelle) Jean-Baptiste
Ligne 131: Ligne 131:
  
 ''templates.cfg'' ''templates.cfg''
-~~~+~~~perl
 #define host { #define host {
 # #
Ligne 153: Ligne 153:
  
 ''linux.cfg'' ''linux.cfg''
-~~~+~~~perl
 define hostgroup { define hostgroup {
     hostgroup_name       linux-hosts     hostgroup_name       linux-hosts
Ligne 161: Ligne 161:
  
 ''windows.cfg'' ''windows.cfg''
-~~~+~~~perl
 define hostgroup { define hostgroup {
  
Ligne 179: Ligne 179:
 ## templates2.cfg ## templates2.cfg
  
-~~~c+~~~perl
  
  
Ligne 394: Ligne 394:
 ~~~ ~~~
  
 +--------------
 +
 +# README
 +
 +# Nagios object configuration files generator
 +
 +Cet outil sert à générer les fichiers de configuration Nagios (object configuration files) en prenant les données dans des fichiers YAML et de les exploiter grâce à un template JINJA.
 +Les fichers .cfg en sortie seront à déposer dans nagios/etc/objects/
 +
 +
 +Avantage :
 +* Une seule configuration central qui peut être déclinée sur l'ensemble des lignes
 +* Evite d'avoir des disparités trop importantes d'une ligne à une autre
 +* Permet de mieux voir et comprendre les désparités
 +* Il devient facil et rapide de comparer la conf d'une ligne à une autre et donc les incohérences resortent mieux
 +* En cas de création d'une nouvelle ligne il est pertinent et facile de partir du tronc commun
 +* Plus besoin de merger la conf Nagios d'une ligne à une autre
 +
 +Inconvéniens:
 +* Précaution à prendre dans le cas où les fichiers finaux seraient modifiés à la mains sur les serveurs Nagios.
 +
 +
 +
 +## Usage 
 +
 +Les fichiers en entrée sont dans in/
 +Ils sont de deux types: 
 +  * cfg (nagios object configuration files). Ces fichiers ne seront pas transformés. Ces fichiers ne devraient pas ordinairement être modifiés.
 +  * yaml qui servirons à générer des fichiers .cfg
 +
 +Les fichiers cfg existant serons copiés tel quel
 +Ex
 +in/localhost.cfg => out/L12/localhost.cfg
 +in/contacts.cfg  => out/L12/contacts.cfg
 +
 +Chanque fichier yaml générera un fichier cfg.
 +Ex
 +in/printer.yaml => out/L12/printer.cfg
 +in/servers.yaml => out/L12/servers.cfg
 +
 +
 +Noter que chaque fichier cfg généré devra être inclue dans nagios.cfg pour être pris en compte par Nagios.
 +
 +Pour modifier la conf il faut :
 +1. Editer le fichier yaml approprié. Ex: servers.yaml. Prendre garde à la clause ''__lines'' pour restreindre la définition à une liste de ligne (défaut : toutes)
 +2. Lancer la commande ci-dessous. (Exemple avec la ligne 12)
 +3. Copier les fichiers out/L12/*.cfg dans nagios/etc/objects
 +4. S'assurer en cas de création d'un nouveau fichier yaml que celui-ce est bien appelé dans nagios.cfg
 +5. Vérifier la syntaxe (voir plus bas)
 +
 +Exemple pour la ligne 12
 +~~~bash
 +env LINE=12 ./play-templating-nagios-config.yml
 +~~~
 +
 +Le dossier out/L<line>/ contient tous les fichiers à placer dans nagios/etc/objects/
 +<line> correspond au numéro de la ligne
 +
 +Une fois les nouveaux fichiers en place il est recommandé de les vérifier
 +~~~bash
 +/usr/local/nagios/bin/nagios -v /usr/local/nagios/etc/nagios.cfg
 +~~~
 +
 +
 +## Compatibilité
 +
 +Compatible Nagios 3 et Nagios 4
 +
 +
 +## Limites
 +
 +Pour le moment seuls les types d'objects ci-dessous sont pris en charge :
 +* host
 +* hostgroup
 +* service
 +
 +Cepandent si d'autres types sévererait nécessaire il est aisé de modifier le fichier template.jinja 
  
tech/generateur_de_conf_nagios.1746433175.txt.gz · Dernière modification : de Jean-Baptiste

Donate Powered by PHP Valid HTML5 Valid CSS Driven by DokuWiki