Outils personnels

Paramétrage de Shinken : Différence entre versions

De wikiGite

(Emplacement des principaux fichiers)
(Paramétrages de base)
 
(14 révisions intermédiaires par 2 utilisateurs non affichées)
Ligne 1 : Ligne 1 :
== Documentation ==
+
=== Documentation ===
 
*http://blog.nicolargo.com/wp-content/plugins/download-monitor/download.php?id=1
 
*http://blog.nicolargo.com/wp-content/plugins/download-monitor/download.php?id=1
 
*http://www.shinken-monitoring.org/wiki/official/start
 
*http://www.shinken-monitoring.org/wiki/official/start
  
== Emplacement des principaux fichiers ==
+
Les fichiers de configuration de Shinken sont identiques à ceux de Nagios, donc les documentations Nagios sont applicables à Shinken.
 +
 
 +
=== Emplacement des principaux fichiers ===
 
*<u>Configuration file folder</u> : /etc/shinken
 
*<u>Configuration file folder</u> : /etc/shinken
 
*<u>Plugins Nagios</u> : cd /usr/lib/nagios/plugins
 
*<u>Plugins Nagios</u> : cd /usr/lib/nagios/plugins
Ligne 11 : Ligne 13 :
 
*<u>Thruk web interface URL</u> : http://<@IP_serveur_Shinken>:3000
 
*<u>Thruk web interface URL</u> : http://<@IP_serveur_Shinken>:3000
  
Après chaque modification du paramétrage, il est conseillé de tester la configuration.
+
=== 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
  
Il est également nécessaire de relancer les services Shinken:  
+
=== 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
Pour vérifier les logs si le check est Failed :
+
*Si le check est Failed, vérifier les logs :
  cat /tmp/shinken_checkconfig_result  
+
  cat /tmp/shinken_checkconfig_result
 
+
*Relancer les services Shinken:
 
  /etc/init.d/shinken restart
 
  /etc/init.d/shinken restart
  
Démarrage en Mode débug :
+
<u>Remarque(s)</u> :
 +
*Démarrage en Mode débug :
 
  /etc/init.d/shinken -d start
 
  /etc/init.d/shinken -d start
  
== Ajouter un hôte ==
+
=== 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 :
 
*Créer un fichier <nom_hote>.cfg dans /etc/shinken/objects/host :
 
  define host{
 
  define host{
Ligne 36 : 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 47 : Ligne 134 :
 
         }
 
         }
  
== Installation de NRPE sur les serveurs (Linux) à monitorer ==
+
=== Installation de NRPE sur les serveurs (Linux) à monitorer ===
 +
Rajouter NSClient ++
 +
 
 
Wikipedia :
 
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.
 
  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.
Ligne 55 : Ligne 144 :
 
  vim /etc/nagios/nrpe.cfg
 
  vim /etc/nagios/nrpe.cfg
 
  /etc/init.d/nagios-nrpe-server start
 
  /etc/init.d/nagios-nrpe-server start
 
== PNP4Nagios (Graph) ==
 
Pré-Requis :
 
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
 
Mod_rewrite : a2enmod rewrite
 
 
Téléchargement :
 
http://downloads.sourceforge.net/project/pnp4nagios/PNP-0.6/pnp4nagios-0.6.13.tar.gz
 
./configure --with-nagios-user=shinken --with-nagios-group=shinken
 
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