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