| 1 | |
|---|
| 2 | Installation et Configuration de Nagios |
|---|
| 3 | |
|---|
| 4 | Notes : |
|---|
| 5 | ------ |
|---|
| 6 | * Les commandes précédées de "$" signifient que vous devez exécuter |
|---|
| 7 | la commande en tant qu'utilisateur général - et non en tant |
|---|
| 8 | qu'utilisateur root. |
|---|
| 9 | |
|---|
| 10 | * Les commandes précédées de "#" signifient que vous devez travailler |
|---|
| 11 | en tant qu'utilisateur root. |
|---|
| 12 | |
|---|
| 13 | * Les commandes comportant des lignes de commande plus spécifiques |
|---|
| 14 | (par exemple "RTR-GW>" ou "mysql>") signifient que vous exécutez |
|---|
| 15 | des commandes sur des équipements à distance, ou dans un autre |
|---|
| 16 | programme. |
|---|
| 17 | |
|---|
| 18 | Exercices |
|---|
| 19 | --------- |
|---|
| 20 | |
|---|
| 21 | Exercices Partie I |
|---|
| 22 | ---------------- |
|---|
| 23 | |
|---|
| 24 | 0. Ouvrez une session sur votre PC ou ouvrez une fenêtre de terminal |
|---|
| 25 | en tant qu'utilisateur sysadm. |
|---|
| 26 | |
|---|
| 27 | 1. Il se peut que vous ayez à installer la version 3 de Nagios. |
|---|
| 28 | Vous devez effectuer cette installation en tant qu'utilisateur root |
|---|
| 29 | ou sysadmin et utiliser le commande "sudo". Assurez-vous aussi que |
|---|
| 30 | vous disposez de l'éditeur Vim (VI aMélioré), car ce dernier facilite |
|---|
| 31 | le travail sur de gros fichiers. En tant que sysadm : |
|---|
| 32 | |
|---|
| 33 | $ sudo apt-get install nagios3 vim |
|---|
| 34 | |
|---|
| 35 | Sauf si vous avez déjà un agent MTA installé, nagios3 va installer |
|---|
| 36 | postfix en tant que dépendance. Sélectionnez l'option "Site |
|---|
| 37 | Internet". (Si vous aviez voulu utiliser un autre agent MTA, |
|---|
| 38 | vous l'auriez probablement installé avant nagios3) |
|---|
| 39 | |
|---|
| 40 | Vous serez invité à entrer le mot de passe nagiosadmin. Entrez |
|---|
| 41 | le mot de passe d'atelier normal. |
|---|
| 42 | |
|---|
| 43 | Pour accéder aux documents dans /usr/share/doc/nagios3-doc/html/ |
|---|
| 44 | (qui peuvent également être consultés via l'interface web Nagios), |
|---|
| 45 | entrez : |
|---|
| 46 | |
|---|
| 47 | $ sudo apt-get install nagios3-doc |
|---|
| 48 | |
|---|
| 49 | |
|---|
| 50 | 2. Regardez le fichier contenant le mot de passe. Il est haché (crypté) |
|---|
| 51 | |
|---|
| 52 | $ cat /etc/nagios3/htpasswd.users |
|---|
| 53 | |
|---|
| 54 | |
|---|
| 55 | 3. Nagios devrait déjà être opérationnel ! |
|---|
| 56 | |
|---|
| 57 | - Ouvrez un navigateur et accédez à votre machine de la façon suivante : |
|---|
| 58 | |
|---|
| 59 | http://pcN.ws.nsrc.org/nagios3/ |
|---|
| 60 | |
|---|
| 61 | - À l'invite de connexion, répondez comme indiqué ci-dessous : |
|---|
| 62 | |
|---|
| 63 | username: nagiosadmin |
|---|
| 64 | pass: <MOT DE PASSE DE LA CLASSE> |
|---|
| 65 | |
|---|
| 66 | Allez jusqu'à la page "Host Detail" (Détail des hôtes) pour |
|---|
| 67 | voir ce qui est déjà configuré. |
|---|
| 68 | |
|---|
| 69 | |
|---|
| 70 | 4. Examinons l'organisation de la configuration... Mais, devenons |
|---|
| 71 | tout d'abord l'utilisateur root de votre machine : |
|---|
| 72 | |
|---|
| 73 | |
|---|
| 74 | $ sudo bash |
|---|
| 75 | |
|---|
| 76 | # cd /etc/nagios3 |
|---|
| 77 | # ls -l |
|---|
| 78 | |
|---|
| 79 | -rw-r--r-- 1 root root 1882 2008-12-18 13:42 apache2.conf |
|---|
| 80 | -rw-r--r-- 1 root root 10524 2008-12-18 13:44 cgi.cfg |
|---|
| 81 | -rw-r--r-- 1 root root 2429 2008-12-18 13:44 commands.cfg |
|---|
| 82 | drwxr-xr-x 2 root root 4096 2009-02-14 12:33 conf.d |
|---|
| 83 | -rw-r--r-- 1 root root 26 2009-02-14 12:36 htpasswd.users |
|---|
| 84 | -rw-r--r-- 1 root root 42539 2008-12-18 13:44 nagios.cfg |
|---|
| 85 | -rw-r----- 1 root nagios 1293 2008-12-18 13:42 resource.cfg |
|---|
| 86 | drwxr-xr-x 2 root root 4096 2009-02-14 12:32 stylesheets |
|---|
| 87 | |
|---|
| 88 | # cd conf.d |
|---|
| 89 | # ls -l |
|---|
| 90 | |
|---|
| 91 | -rw-r--r-- 1 root root 1695 2008-12-18 13:42 contacts_nagios2.cfg |
|---|
| 92 | -rw-r--r-- 1 root root 418 2008-12-18 13:42 extinfo_nagios2.cfg |
|---|
| 93 | -rw-r--r-- 1 root root 1152 2008-12-18 13:42 generic-host_nagios2.cfg |
|---|
| 94 | -rw-r--r-- 1 root root 1803 2008-12-18 13:42 generic-service_nagios2.cfg |
|---|
| 95 | -rw-r--r-- 1 root root 210 2009-02-14 12:33 host-gateway_nagios3.cfg |
|---|
| 96 | -rw-r--r-- 1 root root 976 2008-12-18 13:42 hostgroups_nagios2.cfg |
|---|
| 97 | -rw-r--r-- 1 root root 2167 2008-12-18 13:42 localhost_nagios2.cfg |
|---|
| 98 | -rw-r--r-- 1 root root 1005 2008-12-18 13:42 services_nagios2.cfg |
|---|
| 99 | -rw-r--r-- 1 root root 1609 2008-12-18 13:42 timeperiods_nagios2.cfg |
|---|
| 100 | |
|---|
| 101 | Notez que le paquet installe des fichiers dont le nom comporte |
|---|
| 102 | "nagios2". Ceci est dû au fait qu'il s'agit des mêmes fichiers |
|---|
| 103 | que ceux utilisés pour le paquet Debian de Nagios version 2. |
|---|
| 104 | Toutefois, une modification a été apportée au fichier de |
|---|
| 105 | configuration hôte passerelle "gateway", cŽest pourquoi il a été |
|---|
| 106 | créé avec le nom correct "nagios3". |
|---|
| 107 | |
|---|
| 108 | |
|---|
| 109 | 5. Vous avez une configuration qui surveille déjà votre système |
|---|
| 110 | (localhost_nagios2.cfg) et votre passerelle amont par défaut |
|---|
| 111 | (host-gateway_nagios3.cfg). |
|---|
| 112 | |
|---|
| 113 | Jetez un coup d'oeil au fichier de configuration de la passerelle |
|---|
| 114 | par défaut : il est très simple. |
|---|
| 115 | |
|---|
| 116 | (Remarque : la fonctionnalité de complétion à l'aide de la touche |
|---|
| 117 | Tabulation est utile ici. Tapez "cat host-g" puis appuyez sur |
|---|
| 118 | Tabulation ; le nom du fichier est complété automatiquement) |
|---|
| 119 | |
|---|
| 120 | # cat host-gateway_nagios3.cfg |
|---|
| 121 | |
|---|
| 122 | # Une définition de l'hôte pour la passerelle de la route par défaut |
|---|
| 123 | define host { |
|---|
| 124 | host_name gateway |
|---|
| 125 | alias Default Gateway |
|---|
| 126 | address 10.10.0.254 |
|---|
| 127 | use generic-host |
|---|
| 128 | } |
|---|
| 129 | |
|---|
| 130 | |
|---|
| 131 | |
|---|
| 132 | PARTIE II |
|---|
| 133 | Configuration des équipements |
|---|
| 134 | ----------------------------------------------------------------------------- |
|---|
| 135 | |
|---|
| 136 | 0. Ordre de configuration |
|---|
| 137 | |
|---|
| 138 | Conceptuellement nous allons construire nos fichiers de configuration |
|---|
| 139 | en partant du périphérique "le plus proche" pour aller ensuite vers |
|---|
| 140 | les plus éloignés. |
|---|
| 141 | |
|---|
| 142 | En procédant dans cet ordre, vous définirez les dispositifs faisant |
|---|
| 143 | office de parents pour d'autres périphériques. |
|---|
| 144 | |
|---|
| 145 | En cas de doute, pensez à consulter le schéma du réseau de notre classe. |
|---|
| 146 | |
|---|
| 147 | Nous recommandons la création d'instances comme ceci: |
|---|
| 148 | |
|---|
| 149 | rtr (routeur de sortie : 10.10.0.254) |
|---|
| 150 | sw (commutateur de la classe : 10.10.0.253, parent : rtr) |
|---|
| 151 | rtr1 (routeur du groupe 1 : 10.10.0.201, parent : sw) |
|---|
| 152 | rtr2 (routeur du groupe 2 : 10.10.0.202, parent : sw) |
|---|
| 153 | rtr3 (routeur du groupe 3 : 10.10.0.203, parent : sw) |
|---|
| 154 | rtr4 (routeur du groupe 4 : 10.10.0.204, parent : sw) |
|---|
| 155 | rtr5 (routeur du groupe 5 : 10.10.0.205, parent : sw) |
|---|
| 156 | rtr6 (routeur du groupe 6 : 10.10.0.206, parent : sw) |
|---|
| 157 | rtr7 (routeur du groupe 7 : 10.10.0.207, parent : sw) |
|---|
| 158 | rtr8 (routeur du groupe 8 : 10.10.0.208, parent : sw) |
|---|
| 159 | rtr9 (routeur du groupe 9 : 10.10.0.209, parent : sw) |
|---|
| 160 | rtr10 (routeur du groupe 10 : 10.10.0.210, parent : sw) |
|---|
| 161 | |
|---|
| 162 | pc1 (10.10.0.1, parent : s1) |
|---|
| 163 | pc2 (10.10.0.2, parent : s2) |
|---|
| 164 | pc3 (10.10.0.2, parent : s1) |
|---|
| 165 | pc4 (10.10.0.2, parent : s2) |
|---|
| 166 | . |
|---|
| 167 | pc19 (10.10.0.19, parent : s1) |
|---|
| 168 | pc20 (10.10.0.20, parent : s2) |
|---|
| 169 | |
|---|
| 170 | (remarquez que les PC impaires ont comme parent s1, les paires, s2) |
|---|
| 171 | |
|---|
| 172 | s1 (sur le backbone : 10.10.0.241, parent : sw) |
|---|
| 173 | s2 (sur le backbone : 10.10.0.242, parent : sw) |
|---|
| 174 | noc (sur le backbone : 10.10.0.250, parent : sw) |
|---|
| 175 | ap1 (sur le backbone : 10.10.0.251, parent : sw) |
|---|
| 176 | |
|---|
| 177 | Nous recommandons d'intégrer ces éléments dans les fichiers suivants : |
|---|
| 178 | |
|---|
| 179 | routers.cfg (rtr, ap1, rtr1...rtr10) |
|---|
| 180 | switches.cfg (sw, s1, s2) |
|---|
| 181 | noc.cfg (noc) |
|---|
| 182 | group1pcs.cfg (pc1, pc2) |
|---|
| 183 | group2pcs.cfg (pc3, pc4) |
|---|
| 184 | group3pcs.cfg (pc5, pc6) |
|---|
| 185 | group4pcs.cfg (pc7, pc8) |
|---|
| 186 | group5pcs.cfg (pc9, pc10) |
|---|
| 187 | group6pcs.cfg (pc11, pc12) |
|---|
| 188 | group7pcs.cfg (pc13, pc14) |
|---|
| 189 | group8pcs.cfg (pc15, pc16) |
|---|
| 190 | group9pcs.cfg (pc17, pc18) |
|---|
| 191 | group10pcs.cfg (pc19, pc20) |
|---|
| 192 | |
|---|
| 193 | 1. Nous devons d'abord indiquer à Nagios de surveiller le routeur |
|---|
| 194 | de passerelle de notre classe, à savoir 10.10.0.254 : |
|---|
| 195 | |
|---|
| 196 | # cd /etc/nagios3/conf.d/ |
|---|
| 197 | |
|---|
| 198 | Créez le routeur de passerelle de la manière suivante : |
|---|
| 199 | |
|---|
| 200 | # editor routers.cfg |
|---|
| 201 | |
|---|
| 202 | define host { |
|---|
| 203 | use generic-host |
|---|
| 204 | host_name rtr |
|---|
| 205 | alias Gateway router |
|---|
| 206 | address 10.10.0.254 |
|---|
| 207 | } |
|---|
| 208 | |
|---|
| 209 | Dans le même fichier, créez les configs pour les routeurs du groupe : |
|---|
| 210 | |
|---|
| 211 | define host { |
|---|
| 212 | use generic-host |
|---|
| 213 | host_name rtr1 |
|---|
| 214 | alias Group 1 Router |
|---|
| 215 | address 10.10.0.201 |
|---|
| 216 | parents sw |
|---|
| 217 | } |
|---|
| 218 | |
|---|
| 219 | Procédez de même pour ap1, rtr2, rtr3, rtr4, rtr5, rtr6, rtr7, rtr8, rtr9, |
|---|
| 220 | rtr10 |
|---|
| 221 | |
|---|
| 222 | Notez que l'entrée "sw" pour notre commutateur de passerelle n'a |
|---|
| 223 | pas encore été créée. C'est la prochaine étape. |
|---|
| 224 | |
|---|
| 225 | Sauvegardez le fichier et quittez. |
|---|
| 226 | |
|---|
| 227 | |
|---|
| 228 | 2. Créez un fichier nommé switches.cfg et ajoutez une entrée pour cet élément : |
|---|
| 229 | |
|---|
| 230 | # editor switches.cfg |
|---|
| 231 | |
|---|
| 232 | define host { |
|---|
| 233 | use generic-host |
|---|
| 234 | host_name sw |
|---|
| 235 | alias Backbone switch |
|---|
| 236 | address 10.10.0.253 |
|---|
| 237 | parents rtr |
|---|
| 238 | } |
|---|
| 239 | |
|---|
| 240 | |
|---|
| 241 | Ajoutons également nos commutateurs virtuels - s1 et s2 (les |
|---|
| 242 | parents étant sw) : |
|---|
| 243 | |
|---|
| 244 | |
|---|
| 245 | Par exemple : |
|---|
| 246 | |
|---|
| 247 | define host { |
|---|
| 248 | use generic-host |
|---|
| 249 | host_name s1 |
|---|
| 250 | alias s1 |
|---|
| 251 | address 10.10.0.241 |
|---|
| 252 | parents sw |
|---|
| 253 | } |
|---|
| 254 | |
|---|
| 255 | define host { |
|---|
| 256 | use generic-host |
|---|
| 257 | host_name s2 |
|---|
| 258 | alias s2 |
|---|
| 259 | address 10.10.0.242 |
|---|
| 260 | parents sw |
|---|
| 261 | } |
|---|
| 262 | |
|---|
| 263 | Sauvegardez et quittez : |
|---|
| 264 | |
|---|
| 265 | À ce stade, Nagios est configuré pour surveiller si nos hôtes |
|---|
| 266 | principaux (les parents) sont actifs (UP)sur le réseau de notre |
|---|
| 267 | classe. La prochaine étape consiste à ajouter les différents hôtes, |
|---|
| 268 | à savoir les images des PC virtuels de la classe (pc1 à pc39) |
|---|
| 269 | |
|---|
| 270 | Veillez à ajouter lŽentrée "parents" correcte pour chaque hôte. |
|---|
| 271 | |
|---|
| 272 | Rappelez-vous que si vous ne comprenez pas les relations de parenté |
|---|
| 273 | existant au sein de notre réseau, vous pouvez consulter le schéma |
|---|
| 274 | logique de ce dernier ici : |
|---|
| 275 | |
|---|
| 276 | http://noc.ws.nsrc.org/dakar-gestion-supervision-reseau/wiki/TopologieReseau |
|---|
| 277 | |
|---|
| 278 | Faites référence aux transparents de la présentation qui parlent |
|---|
| 279 | de la gestion des parents, dans la présentation: |
|---|
| 280 | |
|---|
| 281 | "Notion de Parents" |
|---|
| 282 | |
|---|
| 283 | |
|---|
| 284 | LES ÉTAPES 2A - 2C DOIVENT ÊTRE RÉPÉTÉES À CHAQUE MISE À JOUR DE |
|---|
| 285 | LA CONFIGURATION ! |
|---|
| 286 | |
|---|
| 287 | |
|---|
| 288 | 2a. Vérifiez que vos fichiers de configuration sont corrects : |
|---|
| 289 | |
|---|
| 290 | # nagios3 -v /etc/nagios3/nagios.cfg |
|---|
| 291 | |
|---|
| 292 | ... Le système devrait renvoyer des avertissements du type : |
|---|
| 293 | Warning: Host 'rtr' has no services associated with it! |
|---|
| 294 | Warning: Host 'sw' has no services associated with it! |
|---|
| 295 | etc. |
|---|
| 296 | ... |
|---|
| 297 | Total Warnings: N |
|---|
| 298 | Total Errors: 0 |
|---|
| 299 | |
|---|
| 300 | Les choses semblent normales - Aucun problème grave n'a été décelé |
|---|
| 301 | pendant le contrôle. |
|---|
| 302 | |
|---|
| 303 | Nagios indique qu'il est inhabituel de surveiller un périphérique |
|---|
| 304 | aux seules fins de s'assurer de son existence sur le réseau, sans |
|---|
| 305 | surveiller également les services associés. |
|---|
| 306 | |
|---|
| 307 | |
|---|
| 308 | 2b. Rechargez/Redémarrez Nagios |
|---|
| 309 | |
|---|
| 310 | # /etc/init.d/nagios3 restart |
|---|
| 311 | |
|---|
| 312 | L'utilisation de l'option "restart" (redémarrage) n'est pas toujours |
|---|
| 313 | fiable à 100 % en raison d'un bogue dans le script d'initialisation |
|---|
| 314 | de Nagios. |
|---|
| 315 | |
|---|
| 316 | Par sécurité, vous pouvez prendre l'habitude de procéder comme ci-dessous : |
|---|
| 317 | |
|---|
| 318 | # /etc/init.d/nagios3 stop |
|---|
| 319 | # /etc/init.d/nagios3 start |
|---|
| 320 | |
|---|
| 321 | |
|---|
| 322 | 2c. Accédez à l'interface web (http://pcN.ws.nsrc.org/nagios3) et |
|---|
| 323 | vérifiez que les hôtes que vous venez d'ajouter sont visibles dans |
|---|
| 324 | l'interface. Cliquez sur "Host Detail" (Détail des hôtes) sur la |
|---|
| 325 | gauche de l'écran Nagios pour vérifier. L'état qui s'affiche peut |
|---|
| 326 | être "PENDING" (en attente) jusqu'à ce que le contrôle soit effectué. |
|---|
| 327 | |
|---|
| 328 | |
|---|
| 329 | ASTUCE : Vous allez devoir répéter cette opération à plusieurs |
|---|
| 330 | reprises. Si vous regroupez l'ensemble sur une seule ligne, comme |
|---|
| 331 | ci-dessous, alors vous pourrez utiliser la touche de déplacement |
|---|
| 332 | vers le haut et relancer le tout en une seule fois : |
|---|
| 333 | |
|---|
| 334 | nagios3 -v /etc/nagios3/nagios.cfg && /etc/init.d/nagios3 restart |
|---|
| 335 | |
|---|
| 336 | Le double '&&' assure que le redémarrage n'aura lieu que si la |
|---|
| 337 | configuration est valide. |
|---|
| 338 | |
|---|
| 339 | |
|---|
| 340 | 3. Créez les entrées pour les PC de la classe |
|---|
| 341 | |
|---|
| 342 | Maintenant que nos routeurs et commutateurs sont définis, nous |
|---|
| 343 | allons pouvoir créer des entrées pour tous nos PC très facilement. |
|---|
| 344 | Pensez aux relations de parenté : |
|---|
| 345 | |
|---|
| 346 | Ici encore, si vous ne comprenez pas la relation de parenté, pensez |
|---|
| 347 | à consulter le schéma du réseau de la classe à l'adresse suivante: |
|---|
| 348 | |
|---|
| 349 | http://noc.ws.nsrc.org/dakar-gestion-supervision-reseau/wiki/TopologieReseau |
|---|
| 350 | |
|---|
| 351 | Voici trois exemples d'entrées. Une pour le NOC, une pour le pc1 |
|---|
| 352 | et une autre pour le pc20. Vous devriez pouvoir utiliser cet exemple |
|---|
| 353 | pour créer des entrées pour tous les PC de la classe plus le NOC. |
|---|
| 354 | |
|---|
| 355 | Nous pourrions placer ces entrées dans des fichiers séparés mais, |
|---|
| 356 | étant donné la petite taille de notre réseau, nous allons utiliser |
|---|
| 357 | un seul fichier appelé pcs.cfg. |
|---|
| 358 | |
|---|
| 359 | REMARQUE : Ne créez pas d'entrée pour votre propre PC ou routeur. |
|---|
| 360 | Cela a déjà été fait dans le fichier /etc/nagios3/conf.d/localhost_nagios2.cfg. |
|---|
| 361 | Cette définition permet de définir le point de vue du réseau Nagios. Par |
|---|
| 362 | conséquent, lorsque vous arrivez à l'étape où vous pourriez créer une entrée |
|---|
| 363 | pour votre PC, ignorez-la et passez au PC suivant dans la liste. |
|---|
| 364 | |
|---|
| 365 | Décrivons d'abord les machines de notre NOC qui, pour le moment, comprend |
|---|
| 366 | une machine. |
|---|
| 367 | |
|---|
| 368 | # editor noc.cfg |
|---|
| 369 | |
|---|
| 370 | # le NOC de notre classe |
|---|
| 371 | |
|---|
| 372 | define host { |
|---|
| 373 | use generic-host |
|---|
| 374 | host_name noc |
|---|
| 375 | alias machine du NOC de l'atelier |
|---|
| 376 | address 10.10.0.250 |
|---|
| 377 | parents sw |
|---|
| 378 | } |
|---|
| 379 | |
|---|
| 380 | |
|---|
| 381 | Enregistrez et fermez le fichier. Créez ensuite un fichier pour |
|---|
| 382 | décrire les périphériques du groupe un, en procédant comme indiqué |
|---|
| 383 | ci-dessous : |
|---|
| 384 | |
|---|
| 385 | # editor group1pcs.cfg |
|---|
| 386 | |
|---|
| 387 | # PCs |
|---|
| 388 | |
|---|
| 389 | define host { |
|---|
| 390 | use generic-host |
|---|
| 391 | host_name pc1 |
|---|
| 392 | alias pc1 |
|---|
| 393 | address 10.10.0.1 |
|---|
| 394 | parents s1 |
|---|
| 395 | } |
|---|
| 396 | |
|---|
| 397 | define host { |
|---|
| 398 | use generic-host |
|---|
| 399 | host_name pc2 |
|---|
| 400 | alias pc2 |
|---|
| 401 | address 10.10.0.2 |
|---|
| 402 | parents s2 |
|---|
| 403 | } |
|---|
| 404 | |
|---|
| 405 | |
|---|
| 406 | |
|---|
| 407 | Procédez ainsi pour tous les PC du groupe 1 ; notez que le parent |
|---|
| 408 | est conservé. Lorsque vous avez terminé, sauvegardez et fermez le |
|---|
| 409 | fichier. |
|---|
| 410 | |
|---|
| 411 | Faites de même pour les PC du groupe 2 : |
|---|
| 412 | |
|---|
| 413 | # editor group2pcs.cfg |
|---|
| 414 | |
|---|
| 415 | define host { |
|---|
| 416 | use generic-host |
|---|
| 417 | host_name pc3 |
|---|
| 418 | alias pc3 |
|---|
| 419 | address 10.10.0.3 |
|---|
| 420 | parents s1 |
|---|
| 421 | } |
|---|
| 422 | |
|---|
| 423 | |
|---|
| 424 | define host { |
|---|
| 425 | use generic-host |
|---|
| 426 | host_name pc4 |
|---|
| 427 | alias pc4 |
|---|
| 428 | address 10.10.0.4 |
|---|
| 429 | parents s2 |
|---|
| 430 | } |
|---|
| 431 | |
|---|
| 432 | |
|---|
| 433 | Procédez ainsi pour tous les PC du groupe 2 ; notez bien le parent |
|---|
| 434 | s1/s2 (PC impaires = parent s1, paires = parent s2). Lorsque vous avez |
|---|
| 435 | terminé, sauvegardez et fermez le fichier. |
|---|
| 436 | |
|---|
| 437 | Faites attention aux entrées des parents et aux adresses IP. |
|---|
| 438 | |
|---|
| 439 | Prenez les trois entrées ci-dessus et développez-les pour créer les |
|---|
| 440 | entrées restantes organisées par groupe pour tous les PC actifs. |
|---|
| 441 | En d'autres termes, créez les entrées des PC 1 à 20 par groupe (en |
|---|
| 442 | pensant à ignorer votre PC). |
|---|
| 443 | |
|---|
| 444 | |
|---|
| 445 | Comme précédemment, répétez les étapes 2a à 2c pour vérifier votre |
|---|
| 446 | configuration, corrigez les erreurs éventuelles et activez-la. |
|---|
| 447 | |
|---|
| 448 | 5. Visualisez votre instance Nagios sur le web. Notez que "Status |
|---|
| 449 | Map" (Carte dŽétat) vous offre une représentation graphique des |
|---|
| 450 | relations parent-enfant que vous avez définies. |
|---|
| 451 | |
|---|
| 452 | |
|---|
| 453 | PARTIE III |
|---|
| 454 | |
|---|
| 455 | Configurer le contrôle des services du NOC de la classe |
|---|
| 456 | ------------------------------------------------------- |
|---|
| 457 | |
|---|
| 458 | 0. Configuration |
|---|
| 459 | |
|---|
| 460 | Maintenant que notre matériel est configuré, nous pouvons commencer |
|---|
| 461 | à indiquer à Nagios les services à surveiller sur le matériel |
|---|
| 462 | configuré, comment regrouper le matériel de façon intéressante, |
|---|
| 463 | comment regrouper les services, etc. |
|---|
| 464 | |
|---|
| 465 | 1. Affectez un contrôle de services au NOC de notre classe |
|---|
| 466 | |
|---|
| 467 | # editor hostgroups_nagios2.cfg |
|---|
| 468 | |
|---|
| 469 | - Trouver le groupe d'hôtes nommé "ssh-servers". Dans la section membres |
|---|
| 470 | de la définition, remplacez la ligne : |
|---|
| 471 | |
|---|
| 472 | members localhost |
|---|
| 473 | |
|---|
| 474 | par |
|---|
| 475 | |
|---|
| 476 | members localhost,noc |
|---|
| 477 | |
|---|
| 478 | Sauvegardez le fichier et quittez |
|---|
| 479 | |
|---|
| 480 | Vérifiez que vos modifications sont correctes : |
|---|
| 481 | |
|---|
| 482 | # nagios3 -v /etc/nagios3/nagios.cfg |
|---|
| 483 | |
|---|
| 484 | Redémarrez Nagios pour voir les nouveaux services associés à votre hôte : |
|---|
| 485 | |
|---|
| 486 | # /etc/init.d/nagios3 restart |
|---|
| 487 | |
|---|
| 488 | Cliquez sur "Service Detail" (Détails du service) dans l'interface web de |
|---|
| 489 | Nagios pour voir votre nouvelle entrée. |
|---|
| 490 | |
|---|
| 491 | |
|---|
| 492 | PARTIE IV |
|---|
| 493 | Définition des services pour tous les PC |
|---|
| 494 | ----------------------------------------------------------------------------- |
|---|
| 495 | |
|---|
| 496 | 0. Par défaut, l'intervalle de contrôle normal (normal_check_interval) |
|---|
| 497 | des services est de 5 (minutes) dans generic-service_nagios2.cfg. |
|---|
| 498 | Vous pouvez porter cette valeur à 1 pour accélérer la détection des |
|---|
| 499 | problèmes de service, tout du moins dans l'atelier. |
|---|
| 500 | |
|---|
| 501 | 1. Déterminez les services à définir et les périphériques associés |
|---|
| 502 | |
|---|
| 503 | - C'est le coeur même de l'utilisation de Nagios et des outils de |
|---|
| 504 | surveillance réseau en général. |
|---|
| 505 | |
|---|
| 506 | Jusqu'ici, nous avons simplement utilisé la commande ping pour |
|---|
| 507 | vérifier que les hôtes physiques sont actifs sur notre réseau et |
|---|
| 508 | nous avons commencé à surveiller un seul service sur un seul hôte |
|---|
| 509 | (votre PC). La prochaine étape consiste à décider quels services |
|---|
| 510 | vous souhaitez surveiller pour chacun des hôtes de la classe. |
|---|
| 511 | |
|---|
| 512 | - Caractéristiques de cette classe particulière : |
|---|
| 513 | |
|---|
| 514 | Routeurs : Service ssh et snmp |
|---|
| 515 | Commutateurs : Service telnet et éventuellement ssh ainsi que snmp |
|---|
| 516 | PC : Tous les PC offrent un service ssh et http et devraient |
|---|
| 517 | avoir un service SNMP maintenant |
|---|
| 518 | Le NOC offre aussi un service snmp |
|---|
| 519 | |
|---|
| 520 | Nous allons donc configurer Nagios afin qu'il vérifie ces |
|---|
| 521 | services sur ces périphériques. |
|---|
| 522 | |
|---|
| 523 | 2.) Vérifiez que SSH est exécuté sur les routeurs et les images des PC de |
|---|
| 524 | l'atelier |
|---|
| 525 | |
|---|
| 526 | - Dans le fichier services_nagios2.cfg, il existe déjà une entrée |
|---|
| 527 | pour le contrôle des services SSH, vous n'avez donc pas besoin |
|---|
| 528 | de créer cette étape. Au lieu de cela, il vous suffit de redéfinir |
|---|
| 529 | l'entrée "ssh-servers" dans le fichier |
|---|
| 530 | /etc/nagios3/conf.d/hostgroups_nagios2.cfg. |
|---|
| 531 | |
|---|
| 532 | L'entrée initiale dans le fichier ressemblait à ceci : |
|---|
| 533 | |
|---|
| 534 | # A list of your ssh-accessible servers |
|---|
| 535 | define hostgroup { |
|---|
| 536 | hostgroup_name ssh-servers |
|---|
| 537 | alias SSH servers |
|---|
| 538 | members localhost,noc |
|---|
| 539 | } |
|---|
| 540 | |
|---|
| 541 | Que faut-il modifier à votre avis ? |
|---|
| 542 | |
|---|
| 543 | Corriger la ligne "members". Vous devez créer des entrées pour tous les |
|---|
| 544 | PC de la classe, les routeurs et les commutateurs exécutant ssh. |
|---|
| 545 | |
|---|
| 546 | Avec ces informations et le schéma du réseau, vous devriez pouvoir |
|---|
| 547 | finaliser cette entrée. |
|---|
| 548 | |
|---|
| 549 | L'entrée devrait ressembler à ceci : |
|---|
| 550 | |
|---|
| 551 | define hostgroup { |
|---|
| 552 | hostgroup_name ssh-servers |
|---|
| 553 | alias SSH servers |
|---|
| 554 | members localhost,pc1,pc2,pc3,pc4,pc5,pc6,pc7,pc8,pc9,pc10,pc11,pc12,pc13,pc14,pc15,pc16,pc17,pc18,pc19,pc20 |
|---|
| 555 | } |
|---|
| 556 | |
|---|
| 557 | Remarque : conservez "localhost" - Cette entrée identifie |
|---|
| 558 | votre PC et représente le point de vue réseau de Nagios. |
|---|
| 559 | Ainsi, par exemple, si vous êtes sur le "pc3", vous ne |
|---|
| 560 | devrez pas inclure "pc3" dans la liste des PC de la classe, |
|---|
| 561 | car il est représenté par l'entrée "localhost". |
|---|
| 562 | |
|---|
| 563 | L'entrée "members" sera une longue ligne et bouclera |
|---|
| 564 | probablement à l'écran. |
|---|
| 565 | |
|---|
| 566 | Pensez à inclure l'ensemble des PC et routeurs que vous |
|---|
| 567 | avez définis. N'incluez pas d'entrées si elles ne sont pas |
|---|
| 568 | déjà définies dans pcs.cfg, switches.cfg ou routers.cfg. |
|---|
| 569 | |
|---|
| 570 | - Lorsque vous avez terminé, effectuez le contrôle avant démarrage : |
|---|
| 571 | |
|---|
| 572 | # nagios3 -v /etc/nagios3/nagios.cfg |
|---|
| 573 | |
|---|
| 574 | Si tout semble correct, redémarrez Nagios |
|---|
| 575 | |
|---|
| 576 | # /etc/init.d/nagios3 stop |
|---|
| 577 | # /etc/init.d/nagios3 start |
|---|
| 578 | |
|---|
| 579 | et visualisez vos modifications dans l'interface web de Nagios. |
|---|
| 580 | |
|---|
| 581 | Pour poursuivre avec les groupes d'hôtes, vous pouvez créer des |
|---|
| 582 | groupes supplémentaires pour une utilisation ultérieure, comme par |
|---|
| 583 | exemple tous nos serveurs virtuels. NŽhésitez pas à modifier de |
|---|
| 584 | nouveau le fichier hostgroups_nagios2.cfg : |
|---|
| 585 | |
|---|
| 586 | # editor hostgroups_nagios2.cfg |
|---|
| 587 | |
|---|
| 588 | et ajoutez les lignes suivantes à la fin du fichier : |
|---|
| 589 | |
|---|
| 590 | # Une liste de routeurs virtuels |
|---|
| 591 | define hostgroup { |
|---|
| 592 | hostgroup_name cisco7200 |
|---|
| 593 | alias Cisco 7200 Routers |
|---|
| 594 | members rtr1,rtr2,rtr3,rtr4,rtr5,rtr6,rtr7,rtr8,rtr9,rtr10 |
|---|
| 595 | } |
|---|
| 596 | |
|---|
| 597 | Enregistrez et fermez le fichier. Vérifiez que tout est correct : |
|---|
| 598 | |
|---|
| 599 | # nagios3 -v /etc/nagios3/nagios.cfg |
|---|
| 600 | |
|---|
| 601 | Si tout semble correct, alors redémarrez Nagios |
|---|
| 602 | |
|---|
| 603 | # /etc/init.d/nagios3 stop |
|---|
| 604 | # /etc/init.d/nagios3 start |
|---|
| 605 | |
|---|
| 606 | 3.) Vérifiez que http fonctionne sur tous les PC de la classe. |
|---|
| 607 | |
|---|
| 608 | - Cette étape est presque identique à l'exercice précédent. Il |
|---|
| 609 | vous suffit de modifier la création du service HTTP pour chaque |
|---|
| 610 | PC (pas de routeurs ou de commutateurs). Rappelez-vous que vous |
|---|
| 611 | n'avez pas besoin d'ajouter votre machine car celle-ci est déjà |
|---|
| 612 | définie en tant que "localhost". |
|---|
| 613 | |
|---|
| 614 | 4.) OPTIONS SUPPLÉMENTAIRES : Plutôt que de simplement vérifier |
|---|
| 615 | qu'un serveur Web est exécuté sur les PC de la classe, vous pourriez |
|---|
| 616 | également vérifier que le service nagios3 est disponible, en demandant |
|---|
| 617 | le chemin /nagios3/. Cela signifie passer des options supplémentaires |
|---|
| 618 | au plugin check_http. |
|---|
| 619 | |
|---|
| 620 | Pour une description des options disponibles, tapez les commandes |
|---|
| 621 | suivantes : |
|---|
| 622 | |
|---|
| 623 | # /usr/lib/nagios/plugins/check_http |
|---|
| 624 | # /usr/lib/nagios/plugins/check_http --help |
|---|
| 625 | |
|---|
| 626 | et bien sûr vous pouvez consulter la documentation nagios en |
|---|
| 627 | ligne ou rechercher sur Google des informations sur check_http. |
|---|
| 628 | Vous pouvez même lancer le plugin manuellement pour effectuer |
|---|
| 629 | un contrôle ponctuel de service : |
|---|
| 630 | |
|---|
| 631 | # /usr/lib/nagios/plugins/check_http -H localhost -u /nagios3/ |
|---|
| 632 | |
|---|
| 633 | L'objectif est donc de configurer Nagios pour invoquer check_http de cette |
|---|
| 634 | manière. Créez un fichier pour stocker les informations, qu'on appellera |
|---|
| 635 | service-nagios.cfg |
|---|
| 636 | |
|---|
| 637 | # editor service-nagios.cfg |
|---|
| 638 | |
|---|
| 639 | |
|---|
| 640 | define command{ |
|---|
| 641 | command_name check_http_arg |
|---|
| 642 | command_line /usr/lib/nagios/plugins/check_http -H '$HOSTADDRESS$' $ARG1$ |
|---|
| 643 | } |
|---|
| 644 | |
|---|
| 645 | define service { |
|---|
| 646 | hostgroup_name nagios-servers |
|---|
| 647 | service_description NAGIOS |
|---|
| 648 | check_command check_http_arg!-u /nagios3/ |
|---|
| 649 | use generic-service |
|---|
| 650 | } |
|---|
| 651 | |
|---|
| 652 | |
|---|
| 653 | Sauvegardez et fermez le fichier ; vous devrez bien sûr |
|---|
| 654 | créer un groupe d'hôtes appelé nagios-servers pour créer |
|---|
| 655 | un lien vers ce contrôle de services. |
|---|
| 656 | |
|---|
| 657 | # editor hostgroups_nagios2.cfg |
|---|
| 658 | |
|---|
| 659 | À la fin du fichier, ajoutez les lignes suivantes : |
|---|
| 660 | |
|---|
| 661 | define hostgroup { |
|---|
| 662 | hostgroup_name nagios-servers |
|---|
| 663 | alias Servers faisant tourner Nagios |
|---|
| 664 | members localhost,pc1,pc2,pc3,pc4,pc5,pc6,pc7,pc8,pc9,pc10,pc11,pc12,pc13,pc14,pc15,pc16,pc17,pc18,pc19,pc20 |
|---|
| 665 | } |
|---|
| 666 | |
|---|
| 667 | Ajoutez tous les serveurs de la salle (jusqu'à 20) |
|---|
| 668 | |
|---|
| 669 | Ceci étant fait, vérifiez que Nagios affiche une alerte d'échec |
|---|
| 670 | d'authentification (car il essaie de télécharger la page sans |
|---|
| 671 | fournir le nom d'utilisateur/mot de passe). Il existe un |
|---|
| 672 | paramètre supplémentaire que vous pouvez passer à check_http_arg |
|---|
| 673 | pour obtenir cette information ; voyons si vous arrivez à le |
|---|
| 674 | trouver. |
|---|
| 675 | |
|---|
| 676 | EXPLICATION ENNUYEUSE: |
|---|
| 677 | |
|---|
| 678 | ATTENTION : selon la tradition du "Debian aime tout changer", |
|---|
| 679 | la définition que donne Debian de la commande check_http dans |
|---|
| 680 | /etc/nagios-plugins/config/http.cfg n'est *pas* la même que |
|---|
| 681 | celle recommandée dans la documentation nagios3. |
|---|
| 682 | |
|---|
| 683 | Il manque $ARG1$, ce qui fait que les paramètres à passer à |
|---|
| 684 | check_http sont ignorés. Vous pourriez ainsi penser surveiller |
|---|
| 685 | /nagios3/ alors quŽen réalité vous surveillez la racine ! |
|---|
| 686 | |
|---|
| 687 | C'est pourquoi nous avons dû créer une nouvelle définition de |
|---|
| 688 | commande, "check_http_arg". |
|---|
| 689 | Vous pourriez en créer une plus spécifique telle que "check_nagios" |
|---|
| 690 | ou modifier la définition Ubuntu de check_http afin qu'elle |
|---|
| 691 | corresponde à l'usage courant. |
|---|
| 692 | |
|---|
| 693 | |
|---|
| 694 | |
|---|
| 695 | PARTIE V |
|---|
| 696 | Création d'autres groupes d'hôtes |
|---|
| 697 | ----------------------------------------------------------------------------- |
|---|
| 698 | |
|---|
| 699 | 0. Dans l'affichage Web, consultez les pages "Hostgroup Overview" |
|---|
| 700 | (Vue dŽensemble des groupes dŽhôtes), "Hostgroup Summary" (Résumé |
|---|
| 701 | des groupes dŽhôtes), "Hostgroup Grid" (Liste des groupes dŽhôtes). |
|---|
| 702 | Ceci permet de regrouper facilement des hôtes ayant des caractéristiques |
|---|
| 703 | communes (par exemple, hôtes sur le même site ou ayant le même |
|---|
| 704 | rôle). |
|---|
| 705 | |
|---|
| 706 | 1. Mettez à jour /etc/nagios3/conf.d/hostgroups_nagios2.cfg |
|---|
| 707 | |
|---|
| 708 | - Pour les exercices qui suivent, il sera très utile de créer |
|---|
| 709 | ou de modifier les groupes d'hôtes suivants : |
|---|
| 710 | |
|---|
| 711 | Serveurs Debian |
|---|
| 712 | Routeurs |
|---|
| 713 | Commutateurs |
|---|
| 714 | |
|---|
| 715 | Si vous modifiez le fichier |
|---|
| 716 | /etc/nagios3/conf.d/hostgroups_nagios2.cfg, vous verrez une |
|---|
| 717 | entrée pour les serveurs Debian contenant uniquement l'hôte |
|---|
| 718 | local (localhost). |
|---|
| 719 | |
|---|
| 720 | Modifiez cette entrée afin qu'elle inclue tous les PC de la |
|---|
| 721 | classe, y compris le NOC (cela suppose que vous avez créé une |
|---|
| 722 | entrée "noc" dans votre fichier pcs.cfg). Pensez à ignorer |
|---|
| 723 | l'entrée de votre PC car il est représenté par l'entrée |
|---|
| 724 | localhost. |
|---|
| 725 | |
|---|
| 726 | # editor /etc/nagios3/conf.d/hostgroups_nagios2.cfg |
|---|
| 727 | |
|---|
| 728 | Mettez à jour l'entrée suivante : |
|---|
| 729 | |
|---|
| 730 | |
|---|
| 731 | # A list of your Debian GNU/Linux servers |
|---|
| 732 | define hostgroup { |
|---|
| 733 | hostgroup_name debian-servers |
|---|
| 734 | alias Debian GNU/Linux Servers |
|---|
| 735 | members localhost |
|---|
| 736 | } |
|---|
| 737 | |
|---|
| 738 | De sorte que le paramètre "members" ressemble aux lignes |
|---|
| 739 | suivantes. Utilisez votre schéma du réseau de la classe afin |
|---|
| 740 | de confirmer le nombre exact de machines et de noms dans votre |
|---|
| 741 | atelier. |
|---|
| 742 | |
|---|
| 743 | members localhost,noc,pc1,pc2,pc3,pc4,pc5,pc6,pc7,pc8,pc9,pc10,pc11,pc12,pc13,pc14,pc15,pc16,pc17,pc18,pc19,pc20 |
|---|
| 744 | |
|---|
| 745 | Veillez à ce que la ligne boucle et qu'elle ne soit pas sur |
|---|
| 746 | deux lignes distinctes. Dans le cas contraire vous obtiendrez |
|---|
| 747 | une erreur lorsque vous redémarrerez Nagios. Rappelez-vous |
|---|
| 748 | que votre PC est "localhost". |
|---|
| 749 | |
|---|
| 750 | - Ceci étant fait, créez deux groupes d'hôtes supplémentaires, |
|---|
| 751 | un pour les routeurs et l'autre pour les commutateurs. Appelez |
|---|
| 752 | ces entrées "routers" et "switches". |
|---|
| 753 | |
|---|
| 754 | - Lorsque vous avez terminé, veillez à vérifier votre travail |
|---|
| 755 | et redémarrez Nagios. |
|---|
| 756 | |
|---|
| 757 | - NŽoubliez pas dŽignorer l'entrée de votre PC car il est |
|---|
| 758 | représenté par l'entrée localhost. |
|---|
| 759 | |
|---|
| 760 | 2. Revenez à l'interface web et regardez vos nouveaux groupes d'hôtes |
|---|
| 761 | |
|---|
| 762 | PARTIE VI |
|---|
| 763 | Création de groupes de service |
|---|
| 764 | ----------------------------------------------------------------------------- |
|---|
| 765 | |
|---|
| 766 | 1. Créez des groupes de services ssh et http pour chaque série de PC. |
|---|
| 767 | |
|---|
| 768 | - L'objectif, ici, est de créer trois groupes de services. Chaque |
|---|
| 769 | groupe de service sera pour chaque paire de PC (1-2, 3-4). Nous voulons |
|---|
| 770 | regrouper ces PC et inclure l'état de leurs services ssh et http. |
|---|
| 771 | Pour ce faire, créez le fichier suivant : |
|---|
| 772 | |
|---|
| 773 | # editor /etc/nagios3/conf.d/servicegroups.cfg |
|---|
| 774 | |
|---|
| 775 | Voici un échantillon du groupe de service pour le groupe 1 : |
|---|
| 776 | |
|---|
| 777 | define servicegroup { |
|---|
| 778 | servicegroup_name group1-servers |
|---|
| 779 | alias group 1 servers |
|---|
| 780 | members pc1,SSH,pc1,HTTP,pc2,SSH,pc2,HTTP |
|---|
| 781 | } |
|---|
| 782 | |
|---|
| 783 | define servicegroup { |
|---|
| 784 | servicegroup_name group2-servers |
|---|
| 785 | alias group 2 servers |
|---|
| 786 | members pc3,SSH,pc3,HTTP,pc4,SSH,pc4,HTTP |
|---|
| 787 | } |
|---|
| 788 | |
|---|
| 789 | - Notez que la ligne "members" doit boucler (ne doit pas |
|---|
| 790 | être sur deux lignes) |
|---|
| 791 | |
|---|
| 792 | - Notez que "SSH" et "HTTP" doivent être en majuscules car |
|---|
| 793 | c'est ainsi qu'apparaît la service_description dans le |
|---|
| 794 | fichier /etc/nagios3/conf.d/services_nagios2.cfg |
|---|
| 795 | |
|---|
| 796 | - Vous devez également créer une entrée pour les autres |
|---|
| 797 | groupes de serveurs |
|---|
| 798 | |
|---|
| 799 | - Enregistrez vos modifications, vérifiez votre travail et |
|---|
| 800 | redémarrez Nagios. Maintenant, si vous cliquez sur les |
|---|
| 801 | rubriques du menu Servicegroup dans l'interface web de |
|---|
| 802 | Nagios, vous devriez voir ces informations regroupées. |
|---|
| 803 | |
|---|
| 804 | |
|---|
| 805 | |
|---|
| 806 | PARTIE VII |
|---|
| 807 | Configuration de l'accès public à l'interface web de Nagios |
|---|
| 808 | ----------------------------------------------------------------------------- |
|---|
| 809 | |
|---|
| 810 | 1. Modifiez le fichier /etc/nagios3/cgi.cfg de façon à donner un |
|---|
| 811 | accès public (guest) en lecture seule à l'interface web de Nagios. |
|---|
| 812 | |
|---|
| 813 | - Par défaut, Nagios est configuré pour donner à l'utilisateur |
|---|
| 814 | nagiosadmin un accès complet en lecture/écriture via l'interface |
|---|
| 815 | web de Nagios. Vous pouvez changer le nom de cet utilisateur, |
|---|
| 816 | ajouter d'autres utilisateurs, modifier le mode d'authentification |
|---|
| 817 | des utilisateurs, définir les utilisateurs ayant accès aux |
|---|
| 818 | différentes ressources et bien d'autres choses encore via le |
|---|
| 819 | fichier cgi.cfg. |
|---|
| 820 | |
|---|
| 821 | - Créons tout d'abord un utilisateur et mot de passe "guest" |
|---|
| 822 | (invité) dans le fichier htpasswd.users. |
|---|
| 823 | |
|---|
| 824 | # htpasswd /etc/nagios3/htpasswd.users guest |
|---|
| 825 | |
|---|
| 826 | Vous pouvez utiliser n'importe quel mot de passe (ou aucun). |
|---|
| 827 | Choisir pour mot de passe "guest" n'est pas un mauvais choix. |
|---|
| 828 | |
|---|
| 829 | - Modifiez ensuite le fichier /etc/nagios3/cgi.cfg et regardez |
|---|
| 830 | quel type d'accès a été donné à l'utilisateur nagiosadmin. Par |
|---|
| 831 | défaut, vous verrez les directives suivantes (à noter la présence |
|---|
| 832 | de commentaires entre chaque directive) : |
|---|
| 833 | |
|---|
| 834 | authorized_for_system_information=nagiosadmin |
|---|
| 835 | authorized_for_configuration_information=nagiosadmin |
|---|
| 836 | authorized_for_system_commands=nagiosadmin |
|---|
| 837 | authorized_for_all_services=nagiosadmin |
|---|
| 838 | authorized_for_all_hosts=nagiosadmin |
|---|
| 839 | authorized_for_all_service_commands=nagiosadmin |
|---|
| 840 | authorized_for_all_host_commands=nagiosadmin |
|---|
| 841 | |
|---|
| 842 | Nous allons maintenant indiquer à Nagios d'accorder à l'utilisateur |
|---|
| 843 | "guest" un certain niveau dŽaccès aux informations via l'interface web. |
|---|
| 844 | Vous pouvez choisir ce que vous souhaitez, mais les autorisations |
|---|
| 845 | d'accès se présentent généralement de la manière suivante : |
|---|
| 846 | |
|---|
| 847 | authorized_for_system_information=nagiosadmin,guest |
|---|
| 848 | authorized_for_configuration_information=nagiosadmin,guest |
|---|
| 849 | authorized_for_system_commands=nagiosadmin |
|---|
| 850 | authorized_for_all_services=nagiosadmin,guest |
|---|
| 851 | authorized_for_all_hosts=nagiosadmin,guest |
|---|
| 852 | authorized_for_all_service_commands=nagiosadmin |
|---|
| 853 | authorized_for_all_host_commands=nagiosadmin |
|---|
| 854 | |
|---|
| 855 | - Une fois les modifications effectuées, enregistrez le fichier cgi.cfg, vérifiez votre travail et redémarrez Nagios. |
|---|
| 856 | |
|---|
| 857 | - Pour voir si vous pouvez vous connecter en tant qu'utilisateur |
|---|
| 858 | "guest", il peut être nécessaire d'effacer les cookies de votre |
|---|
| 859 | navigateur internet. Vous ne remarquerez aucune différence au |
|---|
| 860 | niveau de l'interface web. La différence réside dans le fait |
|---|
| 861 | qu'un certain nombre d'éléments accessibles via l'interface web |
|---|
| 862 | (forcer un contrôle de services/hôtes, planifier les contrôles, |
|---|
| 863 | faire des commentaires, etc) ne fonctionnent pas pour l'utilisateur |
|---|
| 864 | invité. |
|---|
| 865 | |
|---|
| 866 | |
|---|
| 867 | PARTIE VIII |
|---|
| 868 | Informations étendues dŽhôte ("améliorer l'aspect de vos graphiques") |
|---|
| 869 | ----------------------------------------------------------------------------- |
|---|
| 870 | |
|---|
| 871 | 1. Mettez à jour extinfo_nagios2.cfg |
|---|
| 872 | |
|---|
| 873 | - Si vous souhaitez utiliser des icônes appropriées pour les |
|---|
| 874 | hôtes que vous avez définis dans Nagios, c'est ici qu'il faut |
|---|
| 875 | le faire. Nous avons les trois types de périphériques : |
|---|
| 876 | |
|---|
| 877 | Routeurs Cisco |
|---|
| 878 | Commutateurs Cisco |
|---|
| 879 | Serveurs Ubuntu |
|---|
| 880 | |
|---|
| 881 | Il y a une collection assez importante d'icônes à votre disposition ici : |
|---|
| 882 | |
|---|
| 883 | /usr/share/nagios3/htdocs/images/logos/ |
|---|
| 884 | |
|---|
| 885 | Elles ont été installées par défaut sous forme de paquets |
|---|
| 886 | dépendants du paquet nagios3 sous Ubuntu. Dans certains cas, |
|---|
| 887 | vous pouvez trouver des icônes spécifiques au modèle de votre |
|---|
| 888 | matériel, mais afin de simplifier les choses, nous allons |
|---|
| 889 | utiliser les icônes suivantes pour notre matériel : |
|---|
| 890 | |
|---|
| 891 | /usr/share/nagios3/htdocs/images/logos/base/debian.* |
|---|
| 892 | /usr/share/nagios3/htdocs/images/logos/cook/router.* |
|---|
| 893 | /usr/share/nagios3/htdocs/images/logos/cook/switch.* |
|---|
| 894 | |
|---|
| 895 | - La prochaine étape consiste à modifier le fichier |
|---|
| 896 | |
|---|
| 897 | /etc/nagios3/conf.d/extinfo_nagios2.cfg |
|---|
| 898 | |
|---|
| 899 | et à indiquer à nagios l'image que vous souhaitez utiliser pour |
|---|
| 900 | représenter vos périphériques. |
|---|
| 901 | |
|---|
| 902 | # editor /etc/nagios3/conf.d/extinfo_nagios2.cfg |
|---|
| 903 | |
|---|
| 904 | Voici à quoi ressemble une entrée pour vos routeurs (il existe |
|---|
| 905 | déjà une entrée pour les serveurs Debian qui fonctionnera |
|---|
| 906 | sans modification). Notez que le modèle de routeur (3600) |
|---|
| 907 | n'est pas d'une importance capitale. L'image utilisée représente |
|---|
| 908 | un routeur type. |
|---|
| 909 | |
|---|
| 910 | define hostextinfo { |
|---|
| 911 | hostgroup_name routers |
|---|
| 912 | icon_image cook/router.png |
|---|
| 913 | icon_image_alt Cisco Routers (3600) |
|---|
| 914 | vrml_image router.png |
|---|
| 915 | statusmap_image cook/router.gd2 |
|---|
| 916 | } |
|---|
| 917 | |
|---|
| 918 | Créez maintenant une entrée pour vos commutateurs. Ceci étant |
|---|
| 919 | fait, vérifiez votre travail et redémarrez Nagios. Jetez un |
|---|
| 920 | oeil au "Status Map" (graphique dŽétat des hôtes) dans l'interface |
|---|
| 921 | web. |
|---|
| 922 | |
|---|
| 923 | Le graphique devrait avoir meilleur aspect, avec de véritables |
|---|
| 924 | icônes à la place des points d'interrogation. |
|---|
| 925 | |
|---|
| 926 | |
|---|
| 927 | |
|---|
| 928 | EN OPTION |
|---|
| 929 | -------- |
|---|
| 930 | |
|---|
| 931 | * Vérifiez que SNMP est exécuté sur le NOC de la classe |
|---|
| 932 | |
|---|
| 933 | - Vous devrez d'abord créer le contrôle de service SNMP approprié |
|---|
| 934 | dans le fichier /etc/nagios3/conf.d/services_nagios2.cfg. C'est |
|---|
| 935 | en cela que Nagios est vraiment impressionnant. Il existe des |
|---|
| 936 | centaines, si ce n'est des milliers, de contrôles de service |
|---|
| 937 | accessibles via les différents sites Nagios sur internet. Pour |
|---|
| 938 | savoir quels plugins sont installés par Ubuntu dans le paquet |
|---|
| 939 | Nagios3 que nous avons installé, consultez le répertoire suivant: |
|---|
| 940 | |
|---|
| 941 | # ls /usr/lib/nagios/plugins |
|---|
| 942 | |
|---|
| 943 | Comme vous pouvez le constater, nous disposons déjà d'un |
|---|
| 944 | plugin check_snmp. Si vous êtes intéressé par les options que |
|---|
| 945 | prend le plugin, vous pouvez l'exécuter depuis la ligne de |
|---|
| 946 | commande en tapant : |
|---|
| 947 | |
|---|
| 948 | # /usr/lib/nagios/plugins/check_snmp |
|---|
| 949 | # /usr/lib/nagios/plugins/check_snmp --help |
|---|
| 950 | |
|---|
| 951 | Afin de connaître, entre autres, les options disponibles, le |
|---|
| 952 | plugin check_snmp et Nagios permettent de créer des contrôles |
|---|
| 953 | système très complexes ou spécifiques. |
|---|
| 954 | |
|---|
| 955 | - Pour voir les différents contrôles de services/hôtes qui ont |
|---|
| 956 | été créés avec le plugin check_snmp, consultez le fichier |
|---|
| 957 | /etc/nagios-plugins/config/snmp.cfg. Vous verrez qu'il existe |
|---|
| 958 | un grand nombre de contrôles préconfigurés utilisant snmp, parmi |
|---|
| 959 | lesquels : |
|---|
| 960 | |
|---|
| 961 | snmp_load |
|---|
| 962 | snmp_cpustats |
|---|
| 963 | snmp_procname |
|---|
| 964 | snmp_disk |
|---|
| 965 | snmp_mem |
|---|
| 966 | snmp_swap |
|---|
| 967 | snmp_procs |
|---|
| 968 | snmp_users |
|---|
| 969 | snmp_mem2 |
|---|
| 970 | snmp_swap2 |
|---|
| 971 | snmp_mem3 |
|---|
| 972 | snmp_swap3 |
|---|
| 973 | snmp_disk2 |
|---|
| 974 | snmp_tcpopen |
|---|
| 975 | snmp_tcpstats |
|---|
| 976 | snmp_bgpstate |
|---|
| 977 | check_netapp_uptime |
|---|
| 978 | check_netapp_cupuload |
|---|
| 979 | check_netapp_numdisks |
|---|
| 980 | check_compaq_thermalCondition |
|---|
| 981 | |
|---|
| 982 | Mieux encore, vous pouvez créer très facilement d'autres |
|---|
| 983 | contrôles de services. |
|---|
| 984 | |
|---|
| 985 | Afin de vérifier que snmpd (le service SNMP sous Linux) |
|---|
| 986 | fonctionne, nous devons interroger SNMP. En l'absence de |
|---|
| 987 | réponse, Nagios considèrera que le service SNMP ne fonctionne |
|---|
| 988 | pas sur cet hôte. Les plugins de contrôle de service que vous |
|---|
| 989 | utilisez, tels que check_http, check_ssh et check_telnet, |
|---|
| 990 | procèdent de la même manière. |
|---|
| 991 | |
|---|
| 992 | - Dans le cas présent, nous allons créer un nouveau contrôle |
|---|
| 993 | de service que nous appellerons "check_system". Ce contrôle de |
|---|
| 994 | service se connectera à l'hôte spécifié, utilisera la chaîne |
|---|
| 995 | de communauté privée que nous avons définie en classe et |
|---|
| 996 | interrogera snmp - dans le cas présent, nous demanderons la |
|---|
| 997 | description du système, ou l'OID "sysDescr.0" - |
|---|
| 998 | |
|---|
| 999 | - Pour ce faire, commencez par éditer le fichier |
|---|
| 1000 | /etc/nagios-plugins/config/snmp.cfg : |
|---|
| 1001 | |
|---|
| 1002 | # editor /etc/nagios-plugins/config/snmp.cfg |
|---|
| 1003 | |
|---|
| 1004 | Au début du fichier (ou à la fin, au choix), ajoutez l'entrée suivante : |
|---|
| 1005 | (Vous pouvez la copier-coller au lieu d'essayer de la ressaisir.) |
|---|
| 1006 | |
|---|
| 1007 | # definition de la commande 'check_system' |
|---|
| 1008 | define command{ |
|---|
| 1009 | command_name check_system |
|---|
| 1010 | command_line /usr/lib/nagios/plugins/check_snmp -H '$HOSTADDRESS$' -C |
|---|
| 1011 | '$ARG1$' -o sysDescr.0 |
|---|
| 1012 | } |
|---|
| 1013 | |
|---|
| 1014 | |
|---|
| 1015 | Vous noterez que "command_line" ne constitue qu'une seule |
|---|
| 1016 | ligne. Si vous effectuez un copier-coller de la ligne dans |
|---|
| 1017 | votre éditeur, il se peut qu'elle ne boucle pas correctement |
|---|
| 1018 | et que vous deviez ajouter manuellement la dernière partie de la |
|---|
| 1019 | ligne: |
|---|
| 1020 | |
|---|
| 1021 | '$ARG1$' -o sysDescr.0 |
|---|
| 1022 | |
|---|
| 1023 | (... en fin de ligne.) |
|---|
| 1024 | |
|---|
| 1025 | - Vous devez maintenant modifier le fichier |
|---|
| 1026 | /etc/nagios3/conf.d/services_nagios2.cfg en ajoutant ce contrôle |
|---|
| 1027 | de service. Nous allons exécuter ce contrôle sur l'ensemble des |
|---|
| 1028 | serveurs de la classe ou sur le groupe d'hôtes "debian-servers". |
|---|
| 1029 | |
|---|
| 1030 | - Modifiez le fichier /etc/nagios3/conf.d/services_nagios2.cfg |
|---|
| 1031 | |
|---|
| 1032 | # editor /etc/nagios3/conf.d/services_nagios2.cfg |
|---|
| 1033 | |
|---|
| 1034 | À la fin du fichier, ajoutez la définition suivante : |
|---|
| 1035 | |
|---|
| 1036 | # verifier que snmp tourne sur tous nos serveurs |
|---|
| 1037 | define service { |
|---|
| 1038 | hostgroup_name snmp-servers |
|---|
| 1039 | service_description SNMP |
|---|
| 1040 | check_command check_system!xxxxxx |
|---|
| 1041 | use generic-service |
|---|
| 1042 | notification_interval 0 |
|---|
| 1043 | # spécifiez une valeur > 0 si vous voulez être renotifié |
|---|
| 1044 | } |
|---|
| 1045 | |
|---|
| 1046 | "xxxxxx" est la chaîne de communauté privée qui a été (ou qui |
|---|
| 1047 | sera) définie pour la classe. |
|---|
| 1048 | |
|---|
| 1049 | Vous noterez que nous avons inclus ici notre chaîne de |
|---|
| 1050 | communauté privée au lieu de la coder en dur dans le fichier |
|---|
| 1051 | snmp.cfg à une étape précédente. Vous devez remplacer les |
|---|
| 1052 | "xxxxx" par la chaîne de communauté snmp donnée en classe, |
|---|
| 1053 | faute de quoi ce contrôle ne fonctionnera pas. |
|---|
| 1054 | |
|---|
| 1055 | - Nous devons maintenant créer le groupe "snmp-serveurs" dans |
|---|
| 1056 | notre fichier hostgroups_nagios2.cfg. |
|---|
| 1057 | |
|---|
| 1058 | Modifiez le fichier /etc/nagios3/conf.d/hostgroups_nagios2.cfg |
|---|
| 1059 | et allez à la fin du fichier. Créez la définition de groupe |
|---|
| 1060 | d'hôtes suivante : |
|---|
| 1061 | |
|---|
| 1062 | # Une liste de machines qui offrent un service SNMP, sur lesquelles nous allons |
|---|
| 1063 | # verifier ce service |
|---|
| 1064 | define hostgroup { |
|---|
| 1065 | hostgroup_name snmp-servers |
|---|
| 1066 | alias snmp servers |
|---|
| 1067 | members noc |
|---|
| 1068 | } |
|---|
| 1069 | |
|---|
| 1070 | - Notez que pour "members", vous pourriez également créer |
|---|
| 1071 | les commutateurs et routeurs des groupes 1 et 2. Mais |
|---|
| 1072 | l'élément particulier (MIB) que nous recherchons, "sysDescr.0", |
|---|
| 1073 | peut ne pas être présent sur les commutateurs et/ou routeurs, |
|---|
| 1074 | entraînant l'échec du contrôle. |
|---|
| 1075 | |
|---|
| 1076 | - Vérifiez maintenant que vos modifications sont correctes et |
|---|
| 1077 | redémarrez Nagios. |
|---|
| 1078 | |
|---|
| 1079 | - Si vous cliquez sur la rubrique Service Detail de l'interface |
|---|
| 1080 | web, vous devriez voir apparaître le contrôle SNMP pour l'hôte |
|---|
| 1081 | du NOC. |
|---|
| 1082 | |
|---|
| 1083 | - Après la présentation et les exercices SNMP en classe, vous pourrez |
|---|
| 1084 | revenir à cet exercice et ajouter tous les ordinateurs |
|---|
| 1085 | de la classe à la liste des membres dans le fichier |
|---|
| 1086 | hostgroups_nagios2.cfg, définition des groupes d'hôtes |
|---|
| 1087 | snmp-serveurs. N'oubliez pas de définir votre PC en tant |
|---|
| 1088 | que "localhost". |
|---|
| 1089 | |
|---|