Projet

Général

Profil

Wiki » Historique » Version 68

Patrice Nadeau, 2015-02-15 12:36

1 21 Patrice Nadeau
h1. Nagios
2 1 Patrice Nadeau
3 4 Patrice Nadeau
Nagios est un système de surveillance (monitoring) d’ordinateurs, imprimantes, routeurs et de services logiciels.
4
Il existe en version payante (Nagios IX) et « open source » (Nagios Open Source). 
5
C’est cette dernière version qui seras discutée ici.
6
7 33 Patrice Nadeau
>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/
8 24 Patrice Nadeau
9 62 Patrice Nadeau
{{lastupdated_at}} {{lastupdated_by}}
10
11
---
12
13 3 Patrice Nadeau
{{TOC}}
14
15 21 Patrice Nadeau
h2. Installation
16 2 Patrice Nadeau
17 21 Patrice Nadeau
h3. Requis
18 11 Patrice Nadeau
19 56 Patrice Nadeau
* Un serveur 
20
** [[guides_opensuse:wiki|openSUSE]]
21
 
22
OU
23
 
24 61 Patrice Nadeau
** [[guides_ubuntu:wiki|Ubuntu]] (Voir #37 pour installation avec un BeagleBone Black)
25 4 Patrice Nadeau
* Apache installé et configuré,
26 26 Patrice Nadeau
* Un serveur de courriel (Postfix ou Exim) installé et configuré,
27 1 Patrice Nadeau
* Une adresse IP fixe,
28 4 Patrice Nadeau
* Une entré DNS (enregistrement A ou CNAME).
29 53 Patrice Nadeau
> Un serveur physique est fortement recommandé. 
30 4 Patrice Nadeau
31
h3. Installation de Nagios
32
33 31 Patrice Nadeau
h4. [[from source|À partir des sources]] (nouvelle méthode)
34
35 54 Patrice Nadeau
Fonctionne pour openSUSE et Debian/Ubuntu
36
37 31 Patrice Nadeau
h4. [[from yast|À partir de YaST]] (ancienne méthode)
38
39 55 Patrice Nadeau
openSUSE seulement
40
41 68 Patrice Nadeau
h2. Modification de l'adresse d’envoi
42
43
Par défaut, les alertes vont provenir de _nagios@nagios.domain.com_.
44
Certains système de courriel peuvent bloquer ces messages si le sous-domaine _nagios.domain.com_ n'existe pas.
45
Pour changer l'adresse « from », modifier le fichier *etc/objects/command.cfg*
46
47 34 Patrice Nadeau
h3. Fichiers de configuration
48 27 Patrice Nadeau
49 63 Patrice Nadeau
L'emplacement des fichiers dépend de la méthode l’installation précédente
50 64 Patrice Nadeau
* openSUSE (YaST) : _/etc/nagios_
51 63 Patrice Nadeau
* sources : _/usr/local/nagios_
52 32 Patrice Nadeau
53
Les principaux fichiers de configuration général sont :
54 22 Patrice Nadeau
* *nagios.cfg* : configuration de Nagios lui-même
55 5 Patrice Nadeau
* *ressources.cfg* : liste des macros, usagers et mots de passe
56
57
h2. Utilisation
58
59
Typographie dans les fichiers
60
* Un commentaire sur une ligne complète commence par un croisillon (#).
61 21 Patrice Nadeau
* Un commentaire à la fin d’une ligne commence par un point-virgule (;).
62 67 Patrice Nadeau
* Une exclusion est exprimé par un point d’exclamation (<notextile>!</notextile>) précédant l’item.
63 10 Patrice Nadeau
* Les items d’une liste sont séparés par une virgule (,).
64
65 32 Patrice Nadeau
h3. Fichiers d'objets
66 10 Patrice Nadeau
67 66 Patrice Nadeau
Les fichiers de configuration sont situés dans le répertoire *objects*.
68 32 Patrice Nadeau
69 30 Patrice Nadeau
Les principaux sont :
70 5 Patrice Nadeau
* *templates.cfg*
71 65 Patrice Nadeau
* *commands.cfg* : commandes, scripts à exécuter
72 5 Patrice Nadeau
* *contacts.cfg* : contacts pour les alarmes
73
* *timeperiods.cfg* : les périodes de vérifications
74 7 Patrice Nadeau
75
L’utilisation de gabarits (« templates ») est fortement recommandée. 
76
Un item dans un gabarit peux être redéfinis.
77
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.
78
> Les explications suivantes prennent pour acquis l’utilisation des gabarits fournis avec Nagios.
79
80
h3. Hosts
81 21 Patrice Nadeau
82 6 Patrice Nadeau
"Liste complète des paramètres pour hôte":http://nagios.sourceforge.net/docs/3_0/objectdefinitions.html#host
83
Liste des items :
84
* *use* : le nom du gabarit, contenu dans template.cfg
85
* *host_name* : nom de l’hôte, seras utilisé dans le reste de la configuration.
86
* *alias* : description du hôte.
87
* *address* : l’adresse IP ou le FQDN du hôte.
88 32 Patrice Nadeau
* *icon_image* (facultatif) : une image représentant le serveur. 
89 6 Patrice Nadeau
* *action_url* (facultatif) :
90
91
Exemple :
92
<pre><code class="nagios">
93
define host {
94 5 Patrice Nadeau
    use      linux−server
95
    hostname linux1
96
    alias    Serveur Linux 1
97
    address  linux1.mydomain.com
98
}
99
</code></pre>
100
101 21 Patrice Nadeau
h3. Groups
102 12 Patrice Nadeau
103
"Liste complète des paramètres pour les groupes d’hôtes":http://nagios.sourceforge.net/docs/3_0/objectdefinitions.html#hostgroup
104
105
Liste des items minimum :
106
* *hostgroup_name* : nom du groupe.
107
* *alias* : description du groupe.
108
* *members* : liste des hôtes dans ce groupe.
109
110
Exemple :
111
<pre><code class="nagios">
112
define hostgroup {
113
    hostgroup_name linux−servers
114
    alias          Linux servers
115
    members        linux1
116
}
117
</code></pre>
118
119 21 Patrice Nadeau
h3. Services
120 13 Patrice Nadeau
121
"Liste complète des paramètres pour les services":http://nagios.sourceforge.net/docs/3_0/objectdefinitions.html#service
122
123
Liste des items minimum :
124
* *use* : le nom du gabarit.
125
* *host_name* : noms des hôtes utilisant ce service.
126
* *service_description* : description du service.
127
* *check_command* : commande à effectuer. Définis dans *commands.cfg*.
128
129 14 Patrice Nadeau
Exemple :
130
<pre><code class="nagios">
131
define service{
132
    use                    local−service
133
    host_name              localhost
134
    service_description    PING
135
    check_command          check_ping!100.0,20%!500.0,60%
136
}
137
</code></pre>
138
139 21 Patrice Nadeau
h2. Agents
140 15 Patrice Nadeau
141 57 Patrice Nadeau
h3. GNU/Linux
142 15 Patrice Nadeau
143 38 Patrice Nadeau
Problème #31
144
145 58 Patrice Nadeau
h4. openSUSE
146
147
Installer *nagios-nrpe*
148 36 Patrice Nadeau
> Le « repository » n'existe plus sous openSUSE 13.2. Il faut installer *nagios-plugins* à partir de http://software.opensuse.org/
149 35 Patrice Nadeau
150 15 Patrice Nadeau
<pre><code class="bash">
151
zypper install nagios−nrpe
152
</code></pre>
153
154
Ouvrir dans le pare feu les ports suivants :
155
* NRPE service (TCP 5666)
156
157
Éditer le fichier */etc/nrpe.cfg* et modifier les lignes suivantes :
158
* *allowed_hosts* : indiquer l’adresse IP ou le FQDN(Fully Qualified Domain Name) du serveur Nagios
159
160
Configuration du service
161
<pre><code class="bash">
162 37 Patrice Nadeau
systemctl enable nrpe.service
163 15 Patrice Nadeau
systemctl start nrpe
164
</code></pre>
165
166
h3. Windows
167 39 Patrice Nadeau
168
h2. Modules supplémentaires
169
170
h3. UPS
171
172 59 Patrice Nadeau
USP de la compagnie APC avec _apcupsd_.
173 39 Patrice Nadeau
174
Pre-requis : [[guides_opensuse:ups|UPS sous openSUSE]]
175 40 Patrice Nadeau
176 44 Patrice Nadeau
h4. Installation
177 41 Patrice Nadeau
178 40 Patrice Nadeau
<pre><code class="bash">
179 42 Patrice Nadeau
wget -O check_apcupsd "http://exchange.nagios.org/directory/Plugins/Hardware/UPS/APC/check_apcupsd/visit"
180 40 Patrice Nadeau
chmod +x check_apcupsd
181 1 Patrice Nadeau
mv check_apcupsd /usr/local/nagios/libexec
182 42 Patrice Nadeau
</code></pre>
183
184
Faire un test avec 
185
<pre><code class="bash">
186
/usr/local/nagios/libexec/check_apcupsd -w 50 -c 25 bcharge
187
</code></pre>
188
189
Si le message d'erreur suivant apparait _Error: /sbin/apcaccess must exist and be executable!_, exécuter
190
<pre><code class="bash">
191 43 Patrice Nadeau
# Creer un lien symbolique vers l'executable apcaccess
192 1 Patrice Nadeau
ln -s /usr/sbin/apcaccess /sbin/apcaccess
193 44 Patrice Nadeau
</code></pre>
194
195
h4. Configuration
196
197
Ajouter dans le fichier *nagios/etc/objetcs/commands.cfg* :
198
<pre><code class="text">
199 45 Patrice Nadeau
# Définis la commande check_apcupsd
200 44 Patrice Nadeau
define command{
201
       command_name    check_apcupsd
202
       command_line    $USER1$/check_apcupsd -h $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ $ARG3$
203
       }
204
</code></pre>
205
206 46 Patrice Nadeau
Les arguments sont
207
* _$ARG1$_ : le seuil d'avertissement (warning)
208 1 Patrice Nadeau
* _$ARG2$_ : le seuil critique (critical)
209 51 Patrice Nadeau
* _$ARG3$_ : un des test suivants (liste complète avec _apcupsd_ sans arguments):
210 50 Patrice Nadeau
** *bcharge* : charge des batteries, en pourcent
211
** *itemp* : température interne, en Celsius
212
** *loadpct* : charge en pourcent
213
** *timeleft* : : temps restant selon la charge actuelle
214 46 Patrice Nadeau
215 50 Patrice Nadeau
Dans le fichier *nagios/etc/objects/localhost.cfg*, inscrire les test à effectuer.
216 46 Patrice Nadeau
217
>Ex. : Vérification de la charge restante, 50% étant un avertissement et 25% critique.
218 44 Patrice Nadeau
<pre><code class="text">
219 52 Patrice Nadeau
# Définis le service de charge restante du UPS
220 44 Patrice Nadeau
define service{
221
        use                     local-service   
222 1 Patrice Nadeau
        host_name               localhost
223 45 Patrice Nadeau
        service_description     UPS charge left    
224 49 Patrice Nadeau
        check_command           check_apcupsd!50!25!charge
225 44 Patrice Nadeau
        }
226 40 Patrice Nadeau
</code></pre>