Wiki » Historique » Révision 104
« Précédent |
Révision 104/127
(diff)
| Suivant »
Patrice Nadeau, 2017-04-29 11:38
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 nagios@nagios.domain.tld.
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. NRPE
h3. Modules supplémentaires
h2. Agents
h3. GNU/Linux
Installer nagios-nrpe
h4. Version déjà compilée
opensSUSE
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
h4. À partir des sources
Voir NRPE
h4. Configuration
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
Source
openSUSE :
sudo zypper install python-configparser
wget https://nagstamon.ifw-dresden.de/files/stable/Nagstamon-2.0.1.tar.gz
python setup.py install
h2. Plugins maison
Mis à jour par Patrice Nadeau il y a presque 8 ans · 104 révisions