Outils personnels

Paramétrage de Shinken : Différence entre versions

De wikiGite

(Paramétrages de base)
 
(18 révisions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
== Emplacement des principaux fichiers de configuration ==
+
=== Documentation ===
Backup configuration file : /tmp/shinken-backup-20110513073545.tgz
+
*http://blog.nicolargo.com/wp-content/plugins/download-monitor/download.php?id=1
Configuration file folder : /etc/shinken
+
*http://www.shinken-monitoring.org/wiki/official/start
Plugins Nagios : cd /usr/lib/nagios/plugins
 
Thruk : /opt/thruk
 
Log file : /var/lib/shinken/nagios.log
 
Shinken startup script : /etc/init.d/shinken
 
Thruk startup script : /etc/init.d/thruk
 
Thruk web interface URL : http://<@IP_serveur_Shinken>:3000
 
  
Après chaque modification du paramétrage, il est conseillé de tester la configuration.
+
Les fichiers de configuration de Shinken sont identiques à ceux de Nagios, donc les documentations Nagios sont applicables à Shinken.
  
Il est également nécessaire de relancer les services Shinken:  
+
=== Emplacement des principaux fichiers ===
 +
*<u>Configuration file folder</u> : /etc/shinken
 +
*<u>Plugins Nagios</u> : cd /usr/lib/nagios/plugins
 +
*<u>Thruk</u> : /opt/thruk
 +
*<u>Log file</u> : /var/lib/shinken/nagios.log
 +
*<u>Shinken startup script</u> : /etc/init.d/shinken
 +
*<u>Thruk web interface URL</u> : http://<@IP_serveur_Shinken>:3000
 +
 
 +
=== Arborescence /etc/shinken ===
 +
* brokerd.ini
 +
* brokerd-windows.ini
 +
* certs
 +
* commands.cfg
 +
* contactgroups.cfg
 +
* contacts.cfg
 +
* dependencies.cfg
 +
* discovery.cfg
 +
* discovery_rules.cfg
 +
* discovery_runs.cfg
 +
* escalations.cfg
 +
* hostgroups.cfg
 +
* hosts
 +
** .cfg
 +
* htpasswd.users
 +
* nagios.cfg
 +
* nagios-windows.cfg
 +
* objects
 +
** contacts
 +
** discovery
 +
* pollerd.ini
 +
* pollerd-windows.ini
 +
* reactionnerd.ini
 +
* reactionnerd-windows.ini
 +
* receiverd.ini
 +
* receiverd-windows.ini
 +
* resource.cfg
 +
* sample
 +
** hosts
 +
** services
 +
* sample.cfg
 +
* schedulerd.ini
 +
* schedulerd-windows.ini
 +
* servicegroups.cfg
 +
* services
 +
* shinken-specific.cfg
 +
* shinken-specific-high-availability.cfg
 +
* shinken-specific-load-balanced-only.cfg
 +
* shinken-specific-windows.cfg
 +
* templates.cfg
 +
* timeperiods.cfg
 +
 
 +
=== Principaux Fichiers de configuration ===
 +
*contactgroups.cfg : Définition des groupes de contacts.
 +
*nagios.cfg : Fichier principal de configuration de Nagios.    
 +
*resources.cfg : Définition des ressources externes (Variables?)
 +
*shinken-specific.cfg : Fichier principal de configuration de Shinken.  
 +
*timeperiods.cfg : Définition des "périodes de temps".
 +
*dependencies.cfg        
 +
*escalations.cfg        
 +
*commands.cfg : Fichier de définition des commandes utilisées par Shinken pour "checker" les machines.   
 +
*hostgroups.cfg : Définition des groupes d'hôtes      
 +
*servicegroups.cfg : Définition des groupes de services.
 +
*templates.cfg : Définition des modèles.
 +
*objects (Répertoire contenant les fichiers de configuration des contacts, hôtes et services)
 +
**contacts
 +
**hosts
 +
**services
 +
 
 +
=== Paramétrages de base, paramètres utiles  ===
 +
Seront listés ici les paramètres qu'il peut être intéressant de modifier.
 +
* service_check_timeout dans /etc/shinken/nagios.cfg
 +
Si certains tests prennent plus de 10 secondes (valeur par défaut), augmenter cette valeur pour éviter les erreurs de timeout
 +
 
 +
=== A faire après chaque modification du paramétrage ===
 +
*Tester la configuration.
 
  /etc/init.d/shinken check
 
  /etc/init.d/shinken check
   
+
*Si le check est Failed, vérifier les logs :
 +
  cat /tmp/shinken_checkconfig_result
 +
*Relancer les services Shinken:
 
  /etc/init.d/shinken restart
 
  /etc/init.d/shinken restart
  
Pour vérifier les logs si le check est Failed :
+
<u>Remarque(s)</u> :
  cat /tmp/shinken_checkconfig_result
+
*Démarrage en Mode débug :
 +
  /etc/init.d/shinken -d start
 +
 
 +
=== Ajouter un template ===
 +
dans templates.cfg
 +
define host{
 +
        name                            '''linux-server'''    ; The name of this host template
 +
        use                            generic-host    ; This template inherits other values from the generic-host template
 +
        check_period                    24x7            ; By default, Linux hosts are checked round the clock
 +
        check_interval                  5              ; Actively check the host every 5 minutes
 +
        retry_interval                  5              ; Schedule host check retries at 1 minute intervals
 +
        max_check_attempts              2              ; Check each Linux host 10 times (max)
 +
        check_command                  check_dummy!1  ; by default down
 +
        notification_period            24x7
 +
                                                        ; Note that the notification_period variable is being overridden from
 +
                                                        ; the value that is inherited from the generic-host template!
 +
        notification_interval          1              ; Resend notifications every 2 hours
 +
        notification_options            d,u,r          ; Only send notifications for specific host states
 +
#      contact_groups                  admins          ; Notifications get sent to the admins by default
 +
        register                        0              ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE!
 +
#        hostgroups              ServeursRedHat
 +
        }
  
NRPE
+
=== Ajouter un hôte ===
http://downloads.sourceforge.net/project/nagios/nrpe-2.x/nrpe-2.12/nrpe-2.12.tar.gz
 
Sur les machines à surveiller :
 
apt-get install nagios-nrpe-server
 
vim /etc/nagios/nrpe.cfg
 
/etc/init.d/nagios-nrpe-server start
 
 
== Ajouter un hôte ==
 
 
*Créer un fichier <nom_hote>.cfg dans /etc/shinken/objects/host :
 
*Créer un fichier <nom_hote>.cfg dans /etc/shinken/objects/host :
 
  define host{
 
  define host{
Ligne 39 : Ligne 123 :
 
*Ajouter l'hôte dans un hostgroup (/etc/shinken/hostgroups.cfg)
 
*Ajouter l'hôte dans un hostgroup (/etc/shinken/hostgroups.cfg)
  
== Ajouter un service ==
+
=== Ajouter un service ===
 
*Créer un fichier .cfg (par exemple apache.cfg) dans /etc/shinken/objects/services :
 
*Créer un fichier .cfg (par exemple apache.cfg) dans /etc/shinken/objects/services :
 
  # Simple web check
 
  # Simple web check
Ligne 50 : Ligne 134 :
 
         }
 
         }
  
== PNP4Nagios (Graph) ==
+
=== Installation de NRPE sur les serveurs (Linux) à monitorer ===
Pré-Requis :
+
Rajouter NSClient ++
apt-get install rrdtool
 
apt-get install librrds-perl
 
apt-get install zlib1g zlib1g-dev libpng12-0 libpng12-dev libfreetype6 libfreetype6-dev libart-2.0-2 libart-2.0-dev librrd-dev
 
wget http://oss.oetiker.ch/rrdtool/pub/rrdtool-1.4.5.tar.gz
 
gzip -d rrdtool-1.2.23.tar.gz
 
tar -xvf
 
cd
 
./configure --prefix=/data/rrd/src
 
make && make install
 
  
  PHP GD : apt-get install php5-gd
+
Wikipedia :
  Mod_rewrite : a2enmod rewrite
+
  NRPE (Nagios Remote Plugin Executor) est un "Addons" pour Nagios qui permet d'exécuter des greffons (plugins) sur un serveur Linux/Unix distant. Cela permet de surveiller des ressources locales (charge du processeur, utilisation de la mémoire, espace disque...) qui ne sont normalement pas disponibles depuis d'autres machines.
 +
  Afin d'interroger un client NRPE il faut utiliser le greffon "check_nrpe" sur le serveur Nagios.
  
Téléchargement :
+
  apt-get install nagios-nrpe-server
  http://downloads.sourceforge.net/project/pnp4nagios/PNP-0.6/pnp4nagios-0.6.13.tar.gz
+
  vim /etc/nagios/nrpe.cfg
./configure --with-nagios-user=shinken --with-nagios-group=shinken
+
  /etc/init.d/nagios-nrpe-server start
  make && make install
 
make fullinstall
 
 
 
Attention htpasswd
 
 
 
Renommer fichier
 
 
 
URL : http://localhost/pnp4nagios
 
 
 
activer dans shinken : http://shinken-monitoring.org/wiki/use_with_pnp
 
 
 
nagios.cfg
 
  process_performance_data=1
 
#
 
# service performance data
 
#
 
service_perfdata_file=/usr/local/nagios/var/service-perfdata  service_perfdata_file_template=DATATYPE::SERVICEPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tSERVICEDESC::$SERVICEDESC$\tSERVICEPERFDATA::$SERVICEPERFDATA$\tSERVICECHECKCOMMAND::$SERVICECHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$\tSERVICESTATE::$SERVICESTATE$\tSERVICESTATETYPE::$SERVICESTATETYPE$\tSERVICEOUTPUT::$SERVICEOUTPUT$
 
service_perfdata_file_mode=a
 
service_perfdata_file_processing_interval=15
 
service_perfdata_file_processing_command=process-service-perfdata-file
 
#
 
# host performance data starting with Nagios 3.0
 
#
 
host_perfdata_file=/usr/local/nagios/var/host-perfdata
 
host_perfdata_file_template=DATATYPE::HOSTPERFDATA\tTIMET::$TIMET$\tHOSTNAME::$HOSTNAME$\tHOSTPERFDATA::$HOSTPERFDATA$\tHOSTCHECKCOMMAND::$HOSTCHECKCOMMAND$\tHOSTSTATE::$HOSTSTATE$\tHOSTSTATETYPE::$HOSTSTATETYPE$\tHOSTOUTPUT::$HOSTOUTPUT$
 
host_perfdata_file_mode=a
 
host_perfdata_file_processing_interval=15
 
host_perfdata_file_processing_command=process-host-perfdata-file
 
 
 
/etc/init.d/ncpd restart
 
 
 
== Nagvis (Cartographie) ==
 
Téléchargement :
 
http://sourceforge.net/projects/nagvis/files/NagVis%201.5/nagvis-1.5.9.tar.gz
 
tar xvzf nagvis-1.5*.tar.gz
 
cd nagvis
 
 
 
Make installer executable
 
chmod +x install.sh
 
 
 
Run installer
 
./install.sh
 

Version actuelle datée du 26 mars 2012 à 10:39

Documentation

Les fichiers de configuration de Shinken sont identiques à ceux de Nagios, donc les documentations Nagios sont applicables à Shinken.

Emplacement des principaux fichiers

  • Configuration file folder : /etc/shinken
  • Plugins Nagios : cd /usr/lib/nagios/plugins
  • Thruk : /opt/thruk
  • Log file : /var/lib/shinken/nagios.log
  • Shinken startup script : /etc/init.d/shinken
  • Thruk web interface URL : http://<@IP_serveur_Shinken>:3000

Arborescence /etc/shinken

  • brokerd.ini
  • brokerd-windows.ini
  • certs
  • commands.cfg
  • contactgroups.cfg
  • contacts.cfg
  • dependencies.cfg
  • discovery.cfg
  • discovery_rules.cfg
  • discovery_runs.cfg
  • escalations.cfg
  • hostgroups.cfg
  • hosts
    • .cfg
  • htpasswd.users
  • nagios.cfg
  • nagios-windows.cfg
  • objects
    • contacts
    • discovery
  • pollerd.ini
  • pollerd-windows.ini
  • reactionnerd.ini
  • reactionnerd-windows.ini
  • receiverd.ini
  • receiverd-windows.ini
  • resource.cfg
  • sample
    • hosts
    • services
  • sample.cfg
  • schedulerd.ini
  • schedulerd-windows.ini
  • servicegroups.cfg
  • services
  • shinken-specific.cfg
  • shinken-specific-high-availability.cfg
  • shinken-specific-load-balanced-only.cfg
  • shinken-specific-windows.cfg
  • templates.cfg
  • timeperiods.cfg

Principaux Fichiers de configuration

  • contactgroups.cfg : Définition des groupes de contacts.
  • nagios.cfg : Fichier principal de configuration de Nagios.
  • resources.cfg : Définition des ressources externes (Variables?)
  • shinken-specific.cfg : Fichier principal de configuration de Shinken.
  • timeperiods.cfg : Définition des "périodes de temps".
  • dependencies.cfg
  • escalations.cfg
  • commands.cfg : Fichier de définition des commandes utilisées par Shinken pour "checker" les machines.
  • hostgroups.cfg : Définition des groupes d'hôtes
  • servicegroups.cfg : Définition des groupes de services.
  • templates.cfg : Définition des modèles.
  • objects (Répertoire contenant les fichiers de configuration des contacts, hôtes et services)
    • contacts
    • hosts
    • services

Paramétrages de base, paramètres utiles

Seront listés ici les paramètres qu'il peut être intéressant de modifier.

  • service_check_timeout dans /etc/shinken/nagios.cfg

Si certains tests prennent plus de 10 secondes (valeur par défaut), augmenter cette valeur pour éviter les erreurs de timeout

A faire après chaque modification du paramétrage

  • Tester la configuration.
/etc/init.d/shinken check
  • Si le check est Failed, vérifier les logs :
cat /tmp/shinken_checkconfig_result
  • Relancer les services Shinken:
/etc/init.d/shinken restart

Remarque(s) :

  • Démarrage en Mode débug :
/etc/init.d/shinken -d start

Ajouter un template

dans templates.cfg

define host{
       name                            linux-server    ; The name of this host template
       use                             generic-host    ; This template inherits other values from the generic-host template
       check_period                    24x7            ; By default, Linux hosts are checked round the clock
       check_interval                  5               ; Actively check the host every 5 minutes
       retry_interval                  5               ; Schedule host check retries at 1 minute intervals
       max_check_attempts              2               ; Check each Linux host 10 times (max)
       check_command                   check_dummy!1   ; by default down
       notification_period             24x7
                                                       ; Note that the notification_period variable is being overridden from
                                                       ; the value that is inherited from the generic-host template!
       notification_interval           1               ; Resend notifications every 2 hours
       notification_options            d,u,r           ; Only send notifications for specific host states
#       contact_groups                  admins          ; Notifications get sent to the admins by default
       register                        0               ; DONT REGISTER THIS DEFINITION - ITS NOT A REAL HOST, JUST A TEMPLATE!
#        hostgroups              ServeursRedHat
       }

Ajouter un hôte

  • Créer un fichier <nom_hote>.cfg dans /etc/shinken/objects/host :
define host{
        use                     linux-server
        contact_groups          admins
        host_name               atlanta
        alias                   Atlanta France
        address                 atlanta.dynalias.org
        check_interval          1
        parents                 router1
        }
  • Ajouter l'hôte dans un hostgroup (/etc/shinken/hostgroups.cfg)

Ajouter un service

  • Créer un fichier .cfg (par exemple apache.cfg) dans /etc/shinken/objects/services :
# Simple web check
define service{
        use                             local-service         ; Name of service template to use
        host_name                       localhost
        service_description             Http
        check_command                   check_http
        servicegroups                   LocalServices
        }

Installation de NRPE sur les serveurs (Linux) à monitorer

Rajouter NSClient ++

Wikipedia :

NRPE (Nagios Remote Plugin Executor) est un "Addons" pour Nagios qui permet d'exécuter des greffons (plugins) sur un serveur Linux/Unix distant. Cela permet de surveiller des ressources locales (charge du processeur, utilisation de la mémoire, espace disque...) qui ne sont normalement pas disponibles depuis d'autres machines.
Afin d'interroger un client NRPE il faut utiliser le greffon "check_nrpe" sur le serveur Nagios.
apt-get install nagios-nrpe-server
vim /etc/nagios/nrpe.cfg
/etc/init.d/nagios-nrpe-server start