fr_exercises-smokeping.txt Line 1 Programme Opérations de registre 2 Smokeping 3 4 Remarques : 5 ----------- 6 * Les commandes précédées de "$" doivent être exécutées en tant qu'utilisateur général – et non en tant que root. 7 * Les commandes précédées de "#" exigent que l'on travaille en tant que root. 8 * Les commandes incluant des lignes plus spécifiques (telles que "RTR-GW>" ou "mysql>" par exemple) doivent être exécutées sur un équipement distant ou au sein d'un autre programme. 9 10 Exercices 11 --------- 12 13 1. Installez Smokeping : 14 15 $ sudo apt-get install smokeping 16 17 18 2. Configuration initiale : 19 20 $ cd /etc/smokeping 21 22 Cette page ne nécessite aucun changement. Vous pouvez modifier l'aspect de Smokeping dans le fichier /etc/smokeping/basepage.html : 23 24 $ cd /etc/smokeping/config.d 25 $ ls -l 26 27 -rwxr-xr-x 1 root root 578 2010-02-26 01:55 Alerts 28 -rwxr-xr-x 1 root root 237 2010-02-26 01:55 Database 29 -rwxr-xr-x 1 root root 413 2010-02-26 05:40 General 30 -rwxr-xr-x 1 root root 271 2010-02-26 01:55 pathnames 31 -rwxr-xr-x 1 root root 859 2010-02-26 01:55 Presentation 32 -rwxr-xr-x 1 root root 116 2010-02-26 01:55 Probes 33 -rwxr-xr-x 1 root root 155 2010-02-26 01:55 Slaves 34 -rwxr-xr-x 1 root root 8990 2010-02-26 06:30 Targets 35 36 Les fichiers à modifier à minima sont les suivants : 37 38 * Alerts 39 * General 40 * Probes 41 * Targets 42 43 Editez le fichier Alerts 44 45 $ sudo vi Alerts 46 47 Mettez à jour les premières lignes du fichier : 48 49 *** Alerts *** 50 to = alertee@address.somewhere 51 from = smokealert@company.xy 52 53 afin d'inclure de vrais champs "to" et "from" pour votre serveur. 54 Exemple : 55 56 *** Alerts *** 57 to = tldadmin@localhost 58 from = smokeping-alert@localhost 59 60 Si vous comptez créer des tickets à partir des alertes Smokeping, l'adresse "to" sera un alias pour le système de tickets. 61 Nous nous occuperons de cela un peu plus tard. 62 63 Ajoutez une nouvelle alerte pour un usage ultérieur : 64 65 +rttbadstart 66 type = rtt 67 # in milliseconds 68 pattern = ==S,==U 69 priority = 1 70 comment = offline at startup 71 72 * "==S, ==U" signifient "au démarrage (Startup)" et "not Up (pas en service)" 73 * "priority = 1" signifie que si plusieurs alertes sont définies pour un hôte et si plusieurs alertes correspondent à l'une d'elles, c'est celle présentant la plus forte priorité qui est exécutée. 74 75 Enregistrez maintenant le fichier et quittez avant de modifier le fichier General : 76 77 $ sudo vi General 78 79 Editez les lignes suivantes : 80 81 owner 82 contact 83 cgiurl 84 mailhost 85 86 Ces paramètres devraient fonctionner : 87 88 owner = AROC Class User 89 contact = tldadmin@localhost 90 cgiurl = http://localhost/cgi-bin/smokeping.cgi 91 mailhost = localhost 92 93 Enregistrez maintenant le fichier et quittez, puis éditez le fichier Probes : 94 95 $ sudo vi Probes 96 97 L'entrée courante dans Probes est correcte, mais si vous souhaitez utiliser d'autres contrôles Smokeping, vérifiez que vous pouvez les ajouter ici et que vous pouvez spécifier leur comportement par défaut. Vous pouvez en faire autant dans le fichier Targets si vous le souhaitez. 98 99 Voici un exemple de fichier Probes qui préciserait comment vérifier la latence HTTP et DNS ainsi que le sondage FPing utilisé pour la latence ping : 100 101 *** Probes *** 102 103 + FPing 104 105 binary = /usr/bin/fping 106 107 + EchoPingHttp 108 109 + DNS 110 binary = /usr/bin/dig 111 pings = 5 112 step = 180 113 114 Poursuivez en mettant à jour votre fichier Probes avec ces informations. Enregistrez ensuite le fichier et quittez. Redémarrons maintenant le service Smokeping afin de vérifier qu'il n'y a pas d'erreurs avant de poursuivre : 115 116 $ sudo /etc/init.d/smokeping stop 117 $ sudo /etc/init.d/smokeping start 118 119 Vous pourriez également procéder ainsi : 120 121 $ sudo /etc/init.d/smokeping restart 122 123 ou 124 125 $ sudo /etc/init.d/smokeping reload 126 127 afin de recharger les changements de configuration. Ceci fonctionnerait dans la plupart des cas. 128 129 130 3. Configurez la supervision des périphériques 131 132 Vous consacrerez la majeure partie de votre temps et de votre travail à configurer Smokeping dans le fichier /etc/smokeping/config.d/Targets. 133 134 Dans le cadre de cet atelier, nous allons procéder comme suit : 135 136 Utilisez le sondage FPing pour vérifier : 137 - les PC de tous les participants 138 - le NOC de l'atelier 139 - les commutateurs 140 - les routeurs. 141 142 Introduisez une certaine hiérarchie dans le menu Smokeping afin de faciliter ces contrôles. Exemple : 143 144 PC 145 Routeurs 146 Commutateurs 147 148 Ajoutez un contrôle de latence HTTP pour tous les PC de l'atelier. 149 Ceci suppose d'ajouter une catégorie telle que : 150 151 PCs HTTP 152 153 Si vous en avez le temps, vous pouvez vérifier certaines machines extérieures à notre atelier. 154 155 Recherchez des sondages Smokeping supplémentaires et mettez-en éventuellement en œuvre quelques uns : 156 157 http://oss.oetiker.ch/smokeping/probe/index.en.html 158 159 Tenter d'expliquer tous les aspects syntaxiques du fonctionnement du fichier /etc/smokeping/config.d/Targets nécessiterait plusieurs pages, aussi prendrons-nous quelques exemples en cours et vous pourrez vous reporter aux fichiers de configuration Smokeping utilisés sur la machine NOC de l'atelier en vous rendant aux pages suivantes : 160 161 http://noc/config/etc/smokeping 162 http://noc/config/etc/smokeping/config.d 163 164 4. Ajoutez des contrôles de latence DNS : 165 166 Vous pouvez procéder à ces recherches sur des noms internes ou externes à partir du sondage de latence DNS. 167 168 Ajoutez une hiérarchie pour les latences DNS. Vérifiez une adresse externe (nsrc.org) et interne (noc). Celles-ci revêtent cette forme (dans le fichier Targets) : 169 170 $ sudo vi /etc/smokeping/config.d/Targets 171 172 ++ DNS 173 probe = DNS 174 menu = External DNS Check 175 title = DNS Latency 176 177 +++ nsrc 178 host = nsrc.org 179 180 +++ noc 181 host = noc 182 183 Quittez en enregistrant vos modifications dans le fichier Targets. 184 185 Relancez Smokeping pour afficher les changements : 186 187 $ sudo /etc/init.d/smokeping restart 188 189 190 5. Envoyez des alertes Smokeping à notre file d'attente Request Tracker Net : 191 192 Nous avons déjà établi ceci dans RT et /etc/aliases. Vous devez désigner les alertes Smokeping à notre instance RT. Ouvrez le fichier Alerts : 193 194 $ sudo vi /etc/smokeping/config.d/Alerts 195 196 et remplacez : 197 198 to = tldadmin@localhost 199 200 par 201 202 to = net@localhost 203 204 A partir de maintenant, chaque fois que Smokeping enverra un courrier électronique avec cette alerte, le texte arrivera dans la file d'attente Net du Request Tracker. 205 206 Vérifiez ensuite que des alertes sont définies pour certains de vos fichiers Targets. Vous pouvez activer les alertes en les définissant pour un sondage dans le fichier /etc/smokeping/config.d/Probes, ou sous la forme d'entrées Targets individuelles. 207 208 Dans le cas présent, nous allons modifier le fichier Targets et activer les alertes pour nos contrôles de latence DNS. Si vous ajoutez en outre un contrôle de latence DNS pour un hôte qui n'existe pas, un ticket sera créé dans RT. 209 210 $ sudo vi /etc/smokeping/config.d/Targets 211 212 Recherchez la partie suivante dans le fichier : 213 214 ++ DNS 215 probe = DNS 216 menu = External DNS Check 217 title = DNS Latency 218 219 +++ nsrc 220 host = nsrc.org 221 222 +++ noc 223 host = noc 224 225 et ajoutez l'hôte suivant après "+++ noc" 226 227 +++ noexist 228 host = does.not.exist 229 alerts = rttbadstart 230 231 Enregistrez et quittez le fichier avant de relancer Smokeping : 232 233 $ sudo /etc/init.d/smokeping restart 234 235 Un message d'erreur s'affiche : 236 237 WARNING: Hostname 'does.not.exist' does currently not resolve to 238 an IPv6 or IPv4 address 239 240 Ceci était prévisible puisque l'hôte "does.not.exist" n'est pas valide. Smokeping démarre néanmoins et l'alerte rttbadstart envoie maintenant un message à la file d'attente Net à l'attention du Request Tracker. Si vous ouvrez un navigateur web pour votre instance RT : 241 242 http://localhost/rt/ 243 244 en vous connectant en tant que "tldadmin", vous verrez dans l'écran d'accueil un nouveau ticket avec l'intitulé : 245 246 "[SmokeAlert] rttbadstart is active on 247 AROC.DNSProbe.RT-test" 248 249 250 6. Graphiques multihôte 251 252 Après avoir défini un groupe d'hôtes sous un même type de sondage dans votre fichier /etc/smokeping/config.d/Targets, vous pouvez créer un graphique unique qui vous montrera les résultats de tous les tests Smokeping pour l'ensemble des hôtes que vous aurez définis. Ceci présente l'avantage de vous permettre de comparer rapidement, par exemple, un groupe d'hôtes que vous êtes en train de superviser avec le sondage FPing. 253 254 Pour créer un graphisme multihôte, éditez tout d'abord le fichier Targets : 255 256 $ sudo vi Targets 257 258 Si vous aviez pour le sondage FPing une section déjà définie ressemblant à ce qui suit (ceci n'est qu'un exemple – votre propre fichier Targets peut se présenter différemment): 259 260 + Local 261 menu = Local 262 title = Local Network 263 264 ++ LocalMachine 265 menu = Local Machine 266 title = This host 267 host = localhost 268 269 ++ pc1 270 menu = pc1 271 title = pc1.tld1 272 host = pc1.tld1 273 274 ++ pc2 275 menu = pc2 276 title = pc2.tld2 277 host = pc2.tld2 278 279 ++ pc3 280 menu = pc3 281 title = pc3.tld3 282 host = pc3.tld3 283 284 Smokeping affiche actuellement les résultats du sondage FPing pour chaque hôte dans des graphiques distincts. Pour afficher ces résultats sous la forme d'un graphique unique sur plusieurs lignes, vous pourrez le faire après définition du dernier hôte pour le sondage FPing : 285 286 + MultiHostPCs 287 menu = MultiHost Ping 288 title = Consolidated Ping Response Time 289 host = /Local/LocalMachine /Local/pc1 /Local/pc2 \ 290 /Local/pc3 291 292 Remarque : vous pouvez avoir plusieurs lignes pour l'entrée "host" en recourant au caractère "\" pour indiquer une autre ligne. 293 294 Enregistrez et quittez maintenant le fichier Targets et relancez Smokeping : 295 296 $ sudo /etc/init.d/smokeping restart 297 298 Vous devriez voir un nouveau graphique sous le menu "MultiHost Ping" de votre interface web Smokeping. Ce graphique comporte une ligne de couleur différente pour chaque hôte défini. 299 300 301 7. Instances esclaves 302 303 Cette description n'est fournie qu'à titre indicatif pour le cas où vous souhaiteriez essayer ce type de configuration à l'issue de l'atelier. 304 305 L'idée est de pouvoir exécuter plusieurs instances Smokeping sur des sites divers supervisant les mêmes hôtes et/ou services que votre instance maîtresse. Les installations esclaves envoient leurs résultats au serveur maître et vous obtenez les résultats aux côtés de vos résultats locaux. Ceci permet de voir comment des utilisateurs extérieurs à votre réseau voient vos services et vos hôtes. 306 307 Ceci peut constituer un outil puissant pour résoudre des problèmes de services et d'hôtes potentiellement difficiles à résoudre lorsque l'on ne dispose que de données locales. 308 309 D'un point de vue graphique, les données se présentent ainsi : 310 311 [esclave 1] [esclave 2] [esclave 3] 312 | | | 313 +-------+ | +--------+ 314 | | | 315 v v v 316 +---------------+ 317 | maître | 318 +---------------+ 319 320 Vous trouverez un exemple de ces données à l'adresse suivante : 321 322 http://oss.oetiker.ch/smokeping-demo/ 323 324 Si vous observez les différents groupes de graphiques, vous noterez que nombre de ces graphiques comportent plusieurs lignes avec un code couleur correspondant à des éléments tels que "median RTT from mipsrv01" – Il ne s'agit pas de graphiques multihôte à proprement parler, mais de graphiques présentant des données issues de différents serveurs Smokeping. 325 326 Pour configurer un serveur Smokeping maître/esclave, reportez-vous à la documentation suivante : 327 328 http://oss.oetiker.ch/smokeping/doc/smokeping_master_slave.en.html 329 330 Vous trouverez en outre un exemple d'étapes de configuration dans le fichier sample-smokeping-master-slave.txt. 331 332