Projet

Général

Profil

Wiki » Historique » Version 57

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 57 Patrice Nadeau
Sous openSUSE, installer *nagios-nrpe*
134 36 Patrice Nadeau
> Le « repository » n'existe plus sous openSUSE 13.2. Il faut installer *nagios-plugins* à partir de http://software.opensuse.org/
135 35 Patrice Nadeau
136 15 Patrice Nadeau
<pre><code class="bash">
137
zypper install nagios−nrpe
138
</code></pre>
139
140
Ouvrir dans le pare feu les ports suivants :
141
* NRPE service (TCP 5666)
142
143
Éditer le fichier */etc/nrpe.cfg* et modifier les lignes suivantes :
144
* *allowed_hosts* : indiquer l’adresse IP ou le FQDN(Fully Qualified Domain Name) du serveur Nagios
145
146
Configuration du service
147
<pre><code class="bash">
148 37 Patrice Nadeau
systemctl enable nrpe.service
149 15 Patrice Nadeau
systemctl start nrpe
150
</code></pre>
151
152
h3. Windows
153 39 Patrice Nadeau
154
h2. Modules supplémentaires
155
156
h3. UPS
157
158 51 Patrice Nadeau
> La version 
159
160 39 Patrice Nadeau
USP de la compagnie APC
161
162
Pre-requis : [[guides_opensuse:ups|UPS sous openSUSE]]
163 40 Patrice Nadeau
164 44 Patrice Nadeau
h4. Installation
165 41 Patrice Nadeau
166 40 Patrice Nadeau
<pre><code class="bash">
167 42 Patrice Nadeau
wget -O check_apcupsd "http://exchange.nagios.org/directory/Plugins/Hardware/UPS/APC/check_apcupsd/visit"
168 40 Patrice Nadeau
chmod +x check_apcupsd
169 1 Patrice Nadeau
mv check_apcupsd /usr/local/nagios/libexec
170 42 Patrice Nadeau
</code></pre>
171
172
Faire un test avec 
173
<pre><code class="bash">
174
/usr/local/nagios/libexec/check_apcupsd -w 50 -c 25 bcharge
175
</code></pre>
176
177
Si le message d'erreur suivant apparait _Error: /sbin/apcaccess must exist and be executable!_, exécuter
178
<pre><code class="bash">
179 43 Patrice Nadeau
# Creer un lien symbolique vers l'executable apcaccess
180 1 Patrice Nadeau
ln -s /usr/sbin/apcaccess /sbin/apcaccess
181 44 Patrice Nadeau
</code></pre>
182
183
h4. Configuration
184
185
Ajouter dans le fichier *nagios/etc/objetcs/commands.cfg* :
186
<pre><code class="text">
187 45 Patrice Nadeau
# Définis la commande check_apcupsd
188 44 Patrice Nadeau
define command{
189
       command_name    check_apcupsd
190
       command_line    $USER1$/check_apcupsd -h $HOSTADDRESS$ -w $ARG1$ -c $ARG2$ $ARG3$
191
       }
192
</code></pre>
193
194 46 Patrice Nadeau
Les arguments sont
195
* _$ARG1$_ : le seuil d'avertissement (warning)
196 1 Patrice Nadeau
* _$ARG2$_ : le seuil critique (critical)
197 51 Patrice Nadeau
* _$ARG3$_ : un des test suivants (liste complète avec _apcupsd_ sans arguments):
198 50 Patrice Nadeau
** *bcharge* : charge des batteries, en pourcent
199
** *itemp* : température interne, en Celsius
200
** *loadpct* : charge en pourcent
201
** *timeleft* : : temps restant selon la charge actuelle
202 46 Patrice Nadeau
203 50 Patrice Nadeau
Dans le fichier *nagios/etc/objects/localhost.cfg*, inscrire les test à effectuer.
204 46 Patrice Nadeau
205
>Ex. : Vérification de la charge restante, 50% étant un avertissement et 25% critique.
206 44 Patrice Nadeau
<pre><code class="text">
207 52 Patrice Nadeau
# Définis le service de charge restante du UPS
208 44 Patrice Nadeau
define service{
209
        use                     local-service   
210 1 Patrice Nadeau
        host_name               localhost
211 45 Patrice Nadeau
        service_description     UPS charge left    
212 49 Patrice Nadeau
        check_command           check_apcupsd!50!25!charge
213 44 Patrice Nadeau
        }
214 40 Patrice Nadeau
</code></pre>