Projet

Général

Profil

Wiki » Historique » Version 58

Patrice Nadeau, 2015-02-08 12:34

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