Intitulé du document : Comment installer/configurer Icingen ?
Localisation : http://www.opendoc.net/icingen
Auteur : Alexandre Bray
Vos questions : support@opendoc.net
Date de création : 2011/07/14
Date de modification : 2011/10/14
Tags :
Etat de la documentation : 80% completed
Vous souhaitez contribuer : Comment soutenir opendoc ?
Informations : Quelle est notre démarche ?
Licence : Contrat Creative Commons
opendoc.net est mis à disposition selon les termes de la licence Creative Commons Paternité - Pas d'Utilisation Commerciale - Partage à l'Identique 3.0 non transcrit.

Comment installer/configurer Icingen ?

Toutes les versions sont disponibles sur http://icingen.opendoc.net

4 Introduction

Icingen est un générateur de configuration pour Icinga. Il est écrit en bash. Il utilise des fichiers xls pour stocker la configuration. Icingen n'est pas une aide à la configuration comme centreon,lilac … mais un outil permettant de déléguer l'ajout de machines à une personne.

De plus Icingen utilise un le concept de supervision distribué / répartie (Comment superviser avec Nagios / Icinga ?) afin de vous permettre de monitorer un parc multi-site.

5 Pré-requis

  1. icinga fonctionnel
  2. plugin snmp
  3. catdoc pour la conversion xls → csv

6 Installation

6.1 téléchargement

télécharger la dernier version

wget http://mirror.opendoc.net/icingen/icingen.tgz

Vérifier que le MD5 est identique

wget http://mirror.opendoc.net/icingen/md5.txt

6.2 installation

tar xvzf icingen.tgz
mv icingen-x.x.x /opt/
ln -s /opt/icingen-x.x.x /opt/icingen
  • prendre en compte le répertoire qui contiendra toutes les configurations
  • vim /etc/icinga/icinga.cfg
  • commenter toutes les lignes commençant par cfg_dir
  • ajouter cfg_dir=/opt/icinga/etc/objects/conf.d
  • resource_file=/opt/icingen/icingen-resource.cfg
  • faire un lien symbolique
ln -s /opt/icingen/conf.d /opt/icinga/etc/conf.d

7 Configuration

7.1 Principe de fonctionnement

Le principe de fonctionnement est très simple. Icingen s'appui sur la notion de template présent dans Icinga. Les fichiers de configuration préfixé par HGRP_ indiquent les informations suivantes :

  1. le nom du hostgroup
  2. les machines présentes appartenant au hostgroup
  3. les services appliqués au hosts.

Le but du hostgroup est de regrouper les machines d'un même site et ayant caractéristiques communes.

exemple :

  1. HGRP_site-1-linux.xls : hostgroup du site 1 contenant les machines linux
  2. HGRP_site-1_switch.xls : hostgroup du site 1 contenant les switch

Icingen permet d'appliquer un ensemble de services à un hostgroup. Toutes machines appartenant au hostgroup seront superviser de la même manière. Cela permet de gagner du temps car il est très simple de reprendre un fichier xls existant et de l'adapter pour qu'il soit compatible avec Icingen.

7.2 Déclaration d' un groupe de services

Dans le répertoire /opt/icingen/share/, vous pouvez créer un fichier xls du type default-svc-.

Par exemple, nous souhaitons réaliser un groupe de services pour une machine Linux. Créer un fichier de type default-svc-linux.xls contenant les informations suivantes :

SVC;tpl-svc-linux;ALL_PROCESS;process!!50,100!0,200!$USER98$
SVC;tpl-svc-linux;MYSQL_PROCESS;process!mysqld!1,4!0,7!$USER98$
SVC;tpl-svc-linux;MDADM_PROCESS;process!mdadm!2,3!0,4!$USER98$
SVC;tpl-svc-linux;MEM;linux_mem!60,85!90,95!$USER98$
SVC;tpl-svc-linux;LOAD;linux_load!80,60,50!95,85,70!$USER98$
SVC;tpl-svc-linux;BANDWIDTH_ETH0;int_bw!eth0!1,2!3,4!$USER98$
SVC;tpl-svc-linux;STORAGE_/;storage!/!60!80!$USER98$
SVC;tpl-svc-linux;STORAGE_/VAR;storage!/var!60!80!$USER98$

Explication de la première ligne :

  • SVC : On déclare une ligne de type service
  • tpl-svc-linux : Template utilisé pour le service. Vous trouverez le contenu du template dans /opt/icingen/templates/tpl-icingen-svc.cfg.
  • ALL_PROCESS : Est le nom du service
  • process!!50,100!0,200!$USER98$ : Nom de la commande avec les argnuments.

7.3 Appliquer le groupe de services à un hostgroup

Au début de votre fichier xls, vous spécifiez les paramètre du hostgroup :

HGRP;linux-site-1;linux servers located on site 1;default-svc-linux;R_EXEC-1
  • HGRP : On spécifie que la ligne est de type hostgroup
  • inux-site-1 : Nom du hostgroup
  • linux servers located on site 1 : L'alias du hostgroup
  • default-svc-linux : Groupe de services appliqué à l'ensemble des hosts
  • R_EXEC-1 : (Option facultative) Détermine la machine sur laquelle la configuration sera synchronisée pour la supervision distribuée.

7.4 Appliquer le groupe de services à un host

HOST;tpl-host-linux;LINUX-9;LINUX-9;192.168.218.57;default-svc-linux
  • HOST : On indique que la ligne est de type host.
  • tpl-host-linux : On indique le template de host utilisé.
  • LINUX-9 : Nom de la machine.
  • LINUX-9 : Alias de la machine.
  • 192.168.218.57 : Ip de la machine.
  • default-svc-linux : Groupe de services utilisé.

7.5 Exemple d'un fichier xls

;NAME OF GROUPE;ALIAS;ASSOCIATED SERVICES;DISTRIBUTED MONITORING SERVER
HGRP;linux-site-1;linux servers located on site 1;default-svc-linux
;HOST TEMPLATE;NAME;ALIAS;IP;ASSOCIATED SERVICES
HOST;tpl-host-linux;LINUX-1;LINUX-1;192.168.218.10;
HOST;tpl-host-switch;SW-1;SW-1;192.168.218.230;default-svc-cisco
SVC;tpl-svc-switch;BANDWIDTH-0/24;int_bw!FastEthernet0/24!2,4!9,6!$USER98$

Nous avons indiqué :

  • le nom du hostgroup.
  • le groupe de services appliqué à l'ensemble des machines.
  • une exception car SW-1 n'est pas une machine linux. Nous avons donc indiqué un groupe de services différents. Lorsqu' un group de services est appliqué sur un host, le groupe de services appliqué au hostgroup n'est pas pris en compte.
  • une deuxième exception. Nous avons déclarer un nouveau service par l'intermédiaire de SVC. Il sera appliqué au host situé au-dessus.

8 Génération de la configuration

Il faut vous rendre dans le répertoire d'icingen /opt/icingen/ et actionner le script : ./icingen

Voici la résultat :

####################################
# Icingen check your configuration #
####################################
+++ Cluster :	 OK 

######################################
# Icingen restart your configuration #
######################################
+++ Cluster :	OK 

###########
# Summary #
###########
GLOBAL :
  Hostgroup : 	4
  Host : 	20
  Service : 	102

Configuration generated, checked and pushed in 0m:8s
solutions/icingen.txt · Dernière modification: 2013/07/14 17:19 (modification externe)
 
Sauf mention contraire, le contenu de ce wiki est placé sous les termes de la licence suivante : CC Attribution-Noncommercial-Share Alike 3.0 Unported
Recent changes RSS feed Donate Powered by PHP Valid XHTML 1.0 Valid CSS Driven by DokuWiki