Projet

Général

Profil

Wiki » Historique » Version 62

Patrice Nadeau, 2015-02-15 11:55

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