Projet

Général

Profil

Actions

Wiki » Historique » Révision 94

« Précédent | Révision 94/127 (diff) | Suivant »
Patrice Nadeau, 2017-04-29 10:36


h1. Nagios

Nagios est un système de surveillance (monitoring) d’ordinateurs, imprimantes, routeurs et de services logiciels.
Il existe en version payante (Nagios IX) et « open source » (Nagios Open Source).
C’est cette dernière version qui seras discutée ici.

Ce guide est une introduction et ne ce veux en aucun cas une formation complète. Pour plus d’informations, consulter le site http://www.nagios.org/

{{lastupdated_at}} {{lastupdated_by}}


{{TOC}}

h2. Installation

h3. Requis

  • Un serveur
    ** openSUSE
     
    OU
     
    ** [[guides_ubuntu:wiki|Ubuntu]] (Voir #37 pour installation avec un BeagleBone Black)
  • Apache fonctionnel avec
    ** mod_version,
    ** mod_php5,
  • Un serveur de courriel (Postfix ou Exim) fonctionnel,
  • Une adresse IP fixe,
  • Une entré DNS (enregistrement A ou CNAME).

Un ordinateur physique est fortement recommandé.

h3. Installation de Nagios

h4. À partir des sources (nouvelle méthode)

Fonctionne pour openSUSE et Debian/Ubuntu

h4. À partir de YaST (ancienne méthode)

openSUSE seulement

h2. Modification de l'adresse d’envoi

Par défaut, les alertes vont provenir de .
Certains système de courriel peuvent bloquer ces messages si le sous-domaine nagios.domain.tld n'existe pas.

Pour changer l'adresse « from », modifier le fichier etc/objects/command.cfg pour les commandes :

  • notify-host-by-email
  • notify-service-by-email

Ajouter à la fin de la ligne de commande (command_line) :


-- -f nagios@domain.tld

h2. Utilisation

Typographie dans les fichiers

  • Un commentaire sur une ligne complète commence par un croisillon (#).
  • Un commentaire à la fin d’une ligne commence par un point-virgule (;).
  • Une exclusion est exprimé par un point d’exclamation (!) précédant l’item.
  • Les items d’une liste sont séparés par une virgule (,).

h3. Fichiers de configuration

L'emplacement des fichiers dépend de la méthode l’installation précédente

  • openSUSE (YaST) : /etc/nagios
  • sources : /usr/local/nagios

Les principaux fichiers de configuration général sont :

  • nagios.cfg : configuration de Nagios lui-même
  • ressources.cfg : liste des macros, usagers et mots de passe

h3. Fichiers d'objets

Les fichiers de configuration sont situés dans le répertoire objects.

Les principaux sont :

  • templates.cfg
  • commands.cfg : commandes, scripts à exécuter
  • contacts.cfg : contacts pour les alarmes
  • timeperiods.cfg : les périodes de vérifications

L’utilisation de gabarits (« templates ») est fortement recommandée.
Un item dans un gabarit peux être redéfinis.
Ceci permet d’avoir des gabarits ayant les options par défaut et seulement les exceptions sont à définir dans les sections hôtes, groupe et services.

Les explications suivantes prennent pour acquis l’utilisation des gabarits fournis avec Nagios.

h3. Hosts

"Liste complète des paramètres pour hôte":http://nagios.sourceforge.net/docs/3_0/objectdefinitions.html#host
Liste des items :

  • use : le nom du gabarit, contenu dans template.cfg
  • host_name : nom de l’hôte, seras utilisé dans le reste de la configuration.
  • alias : description du hôte.
  • address : l’adresse IP ou le FQDN du hôte.
  • icon_image (facultatif) : une image représentant le serveur.
  • action_url (facultatif) :

Exemple :


define host {
    use      linux−server
    hostname linux1
    alias    Serveur Linux 1
    address  linux1.mydomain.com
}

h3. Groups

"Liste complète des paramètres pour les groupes d’hôtes":http://nagios.sourceforge.net/docs/3_0/objectdefinitions.html#hostgroup

Liste des items minimum :

  • hostgroup_name : nom du groupe.
  • alias : description du groupe.
  • members : liste des hôtes dans ce groupe.

Exemple :


define hostgroup {
    hostgroup_name linux−servers
    alias          Linux servers
    members        linux1
}

h3. Services

"Liste complète des paramètres pour les services":http://nagios.sourceforge.net/docs/3_0/objectdefinitions.html#service

Liste des items minimum :

  • use : le nom du gabarit.
  • host_name : noms des hôtes utilisant ce service.
  • service_description : description du service.
  • check_command : commande à effectuer. Définis dans commands.cfg.

Exemple :


define service{
    use                    local−service
    host_name              localhost
    service_description    PING
    check_command          check_ping!100.0,20%!500.0,60%
}

h2. Agents

h3. GNU/Linux

Problème #31

h4. openSUSE (repos)

Installer nagios-nrpe

Version déjà compilés


# Ajout du repos
wget http://download.opensuse.org/repositories/openSUSE:/Leap:/42.2/standard/x86_64/nrpe-2.15-9.1.x86_64.rpm
rpm -Uhv nrpe-2.15-9.1.x86_64.rpm

À partir des sources

Ouvrir dans le pare feu le port TCP 5666 :


yast firewall services add service=service:nrpe zone=EXT

Éditer le fichier /etc/nrpe.cfg et modifier les lignes suivantes :

  • allowed_hosts : indiquer l’adresse IP ou le FQDN(Fully Qualified Domain Name) du serveur Nagios

Configuration du service


systemctl enable nrpe.service
systemctl start nrpe.service

h3. Windows

À venir ...

h2. Modules supplémentaires

h3. UPS

USP de la compagnie APC avec apcupsd.

Pre-requis : UPS sous openSUSE

h4. Installation


wget -O check_apcupsd "http://exchange.nagios.org/directory/Plugins/Hardware/UPS/APC/check_apcupsd/visit"
chmod +x check_apcupsd
mv check_apcupsd /usr/local/nagios/libexec

Faire un test avec


/usr/local/nagios/libexec/check_apcupsd -w 50 -c 25 bcharge

Si le message d'erreur suivant apparait Error: /sbin/apcaccess must exist and be executable!, exécuter


# Creer un lien symbolique vers l'executable apcaccess
ln -s /usr/sbin/apcaccess /sbin/apcaccess

h4. Configuration

Ajouter dans le fichier nagios/etc/objetcs/commands.cfg :


# Définis la commande check_apcupsd
define command{
       command_name    check_apcupsd
       command_line    $USER1$/check_apcupsd -h $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ $ARG3$
       }

Les arguments sont

  • $ARG1$ : le seuil d'avertissement (warning)
  • $ARG2$ : le seuil critique (critical)
  • $ARG3$ : un des test suivants (liste complète avec apcupsd sans arguments):
    ** bcharge : charge des batteries, en pourcent
    ** itemp : température interne, en Celsius
    ** loadpct : charge en pourcent
    ** timeleft : : temps restant selon la charge actuelle

Dans le fichier nagios/etc/objects/localhost.cfg, inscrire les test à effectuer.

Ex. : Vérification de la charge restante, 50% étant un avertissement et 25% critique.


# Définis le service de charge restante du UPS
define service{
        use                     local-service   
        host_name               localhost
        service_description     UPS charge left    
        check_command           check_apcupsd!50!25!charge
        }

h2. Nagstatmon

Logiciel de notification Nagios pour poste de travail.

Télécharger à partir de https://nagstamon.ifw-dresden.de/download

h3. GNU/Linux

h4. openSUSE

Utilisé la version disponible à http://software.opensuse.org/package/nagstamon?search_term=nagstamon


sudo zypper install nagstamon-1.0.1-1.1.noarch.rpm

h2. Plugins maison

Mis à jour par Patrice Nadeau il y a presque 8 ans · 94 révisions