SophiaConf 2012     Jean Gabès
Qui suis-je ?Jean GabèsAdministrateur système sur Bordeaux,auteur du livre Nagios3 aux éditions Eyrolleset de Shinken
Pourquoi superviser ?
Quand lIT va mal, le business va mal...
Ou voire pire....
Pour sauver le monde business :   Les outils de supervision !
Bon il y en a pleins...
Concernant la supervision pure IT, Nagios™® est  la référence de ces 10 dernières années ...
Concernant la supervision pure IT, Nagios™® est  la référence de ces 10 dernières années ...
… grâce à beaucoup de modules
● Mod_gearman : Distribution de la charge sur leLAN● LiveStatus : accès aux données● Thruk/Multisite/NagVis : vue temps-ré...
Et des plugins de supervisions$ check_disks -w 90% -c 95%Disks OK | /=50% /var=80% /data=35%$ echo $?0
Plugins & modularité sont bien !
Mais si ce nétait plus suffisant ?
LIT grossit de jours en jours
Avec plein de couches (physique, réseaux,               virtuel, …)
Rempli de clusters
Et de sites distants
Difficultés classiques dans la supervision IT● Trop de charge● Gestion de la configuration● Perte de site distant ?● Haute...
Architecture idéale
Oui vous pouvez bricoler autour dun Nagios™®                pour cela ...
… ou vous pouvez juste utiliser Shinken :)
Shinken est une réécriture complète de      Nagios™® (C) en Python
Attendez ! Python cest lent !Ok, on bench. Xeon 4cores@2.9ghz, 12Go ram,                dummy check
(en nombre max de checks en 5min)● Nagios 3 (C) <=> icinga 1.6 (C) = 30K● Centreon-engine (C) = 25K● Shinken = 120K
De grandes possibilités darchitecture
De grandes possibilités darchitecture
Les soucis de supervision IT sont réglés, maisquid des problèmes des admins de 2012 ?
La virtualisation est partout
(OK peut être moins dans le futur avec la nouvelle politique de licence dESX5...)
Si un ESX crash, vous navez pas envie derecevoir 20+ alertes pour les VM dessus !
Que lalerte de lESX. Simple : dépendance                   dhôte :)
Mais les admins Vmware sont des personnes                 étranges
Ils « VMotion » des VMs aussi souvent quun            codeur Perl tapes $_
Donc oubliez la configuration en fichiers plats                 manuels :)
Ils suffit dutiliser le module Vmware™® pour                       Shinken
OK, et si on sattaquait a lun des pires soucis                 des admins ?
Pas la pénurie de café/bière...
Les fausses alertes !
Exemple : une erreur critique sur de laqualification, est-ce vraiment si critique ?
Cas réel : un switch de production casse une         application de qualification
Est-ce que lon doit réveiller le pauvre admin à 3h             du mat pour ça ?? Non !
Se concentrer sur lanalyse des problèmessources, et limpact au niveau « business » des                  applications
La différence entre problèmes sources et impacts            est centrale dans Shinken
Et entre les niveaux dimportances business, plus             que juste warning/critical
Ok pour les alertes. Mais quid des interfaces               graphiques ?
Shinken WebUI :● Problèmes sources & impacts sur des vuesdifférentes● TOUT est trié suivant limportance business● Visualis...
●  Très “visuelle”● HTML5 (désolé pour IE6...)● Limitation (volontaire...) des informationsaffichées● Modulaire (PNP, grap...
Deux types dutilisateurs (incompatibles)● Responsables : visualisation des impacts sur lesapplications end-users (et pourq...
●  Vues Problèmes sources VS impacts● Personne ne veux voir les deux● Le tout trié suivant limportance métier
Vue du responsable
Vue dun administrateur
Et si ladmin veut voir pourquoi cest siimportant...
Les deux vont comprendre un graphe
Et chacun peut avoir SON dashboard
Et sa version « mobile »
Demo : http://demo-shinken.web4all.fr/
OK, on voit seulement ce que lon souhaite voir.Bien.
Mais une lourde tâche reste : rajouter nosserveurs dans loutil!
Les templates de configuration de Nagios™®sont indispensables!
Mais pas suffisant. Il reste encore tropdéléments à définir
Shinken permet daccrocher des vérifications pardes expressions complexes du genre« Linux&Prod »
Ceci permet de navoir quà « tagger » sesmachines au lieu de multiplier les groupes et sousgroupes de serveurs
Dans Nagios™®, on considère que 80% de laconfiguration consiste en lécriture des services.
Shinken propose des solutions pour limiterfortement ces 80%.
Exemple : clé duplicate_foreachGénère un service par “propriété” dun hôte.
Define host{                Define service {host_name srv-lin-1             host_name       linuxUse        linux         ...
Fait prouvé : un bon informaticien est fainéant
Fait sûrement vrai : les admins sont de bonsinformaticiens!
Un admin préfère éviter de :● Écrire un plugin de 0● Tagger manuellement ses machines● Écrire la configuration de nouveaux...
●  Plugins : Merci Monitoring-exchange.org!● Tagging : merci skonf discovery● Nouvelle configuration : merci les packs Shi...
Pourquoi tagger manuellement ses serveursquand on peut juste écrire des règles pour lefaire?
Module de découverte de Shinken!
●  Runners : scripts qui “scanne” et qui sort desdonnées●  Rules : lit les données et génère de laconfiguration
Ex : nmap runner scanne un serveur et exportedes données $ nmap_discovery_runner.py -t localhostlocalhost::isup=1localhost...
Exemple de règle qui détecte et tag “linux”define discoveryrule {     discoveryrule_name   Linux     creation_type        ...
localhost : use ssh,mysql,http,linux
Découverte multi-niveaux :● 1 Si on match une donnée● 2 On lance un nouveau runner● 3 On ré-applique les règles● 4 GOTO 1
Ex : découverte des shares Windowsdefine discoveryrun {     discoveryrun_name         WindowsShares     discoveryrun_comma...
Résultatdefine host {     host_name   win-srv     use         windows      _shares    Work,Public,Private}
Lancement en CLI :shinken-discovery -c etc/discovery.cfg --db Mongodb -mNMAPTARGET=localhost
Ou mieux : lUI sKonf!
sKonf :● UI pour la gestion facile de sa configuration● Découverte ou configuration classique● Gère les paramètres spécifi...
Packs ?
Packs = fichier zip avec tout ce dont vous avezbesoin sur un sujet particulier (comme Linux,Windows ou EMC)
● Fichiers cfg (templates, commands, services,discovery, …)● Templates de graphiques (PNP ou Graphite)● Images (pour que v...
Heu... pourquoi créer un .zip avec tout ça?
●  A. Le déplacer dans /dev/null● B. Le partager!● C. Me lenvoyer pour que je lance un outil “opencore” comme NagiosXI● D....
Partager via community.shinken-monitoring.org (démon hostd, disponible dans les sourcesShinken)
Créer un tel fichier zip est aussi facile que delancer :$ shinken-packs -c -p /path/to/linux.pack
Et pour lenvoyer :$ shinken-packs -u -k APIKEY -z /tmp/linux.zip(une clé api est générée dès que vous êtes enregistrés sur...
Et pour les récupérer?
Sur le site :
Ou directement depuis lUI sKonf :
Depuis sKonf :
Au final ?● Larchitecture est adaptable aux grandsenvironnements● Beaucoup daméliorations par rapport àNagios™®● La WebUI ...
MerciDes questions?
Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)
Conférence Shinken à SophiaConf2012 (Jean Gabès)
Upcoming SlideShare
Loading in...5
×

Conférence Shinken à SophiaConf2012 (Jean Gabès)

1,833

Published on

Conférence de Jean Gabès à SophiaConf2012 sur Shinken, outil de supervision orienté pour les grands parcs informatiques.

Published in: Technology
0 Comments
2 Likes
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
1,833
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
40
Comments
0
Likes
2
Embeds 0
No embeds

No notes for slide

Conférence Shinken à SophiaConf2012 (Jean Gabès)

  1. 1. SophiaConf 2012 Jean Gabès
  2. 2. Qui suis-je ?Jean GabèsAdministrateur système sur Bordeaux,auteur du livre Nagios3 aux éditions Eyrolleset de Shinken
  3. 3. Pourquoi superviser ?
  4. 4. Quand lIT va mal, le business va mal...
  5. 5. Ou voire pire....
  6. 6. Pour sauver le monde business : Les outils de supervision !
  7. 7. Bon il y en a pleins...
  8. 8. Concernant la supervision pure IT, Nagios™® est la référence de ces 10 dernières années ...
  9. 9. Concernant la supervision pure IT, Nagios™® est la référence de ces 10 dernières années ...
  10. 10. … grâce à beaucoup de modules
  11. 11. ● Mod_gearman : Distribution de la charge sur leLAN● LiveStatus : accès aux données● Thruk/Multisite/NagVis : vue temps-réel● PNP, Graphite : graphiques
  12. 12. Et des plugins de supervisions$ check_disks -w 90% -c 95%Disks OK | /=50% /var=80% /data=35%$ echo $?0
  13. 13. Plugins & modularité sont bien !
  14. 14. Mais si ce nétait plus suffisant ?
  15. 15. LIT grossit de jours en jours
  16. 16. Avec plein de couches (physique, réseaux, virtuel, …)
  17. 17. Rempli de clusters
  18. 18. Et de sites distants
  19. 19. Difficultés classiques dans la supervision IT● Trop de charge● Gestion de la configuration● Perte de site distant ?● Haute disponibilité
  20. 20. Architecture idéale
  21. 21. Oui vous pouvez bricoler autour dun Nagios™® pour cela ...
  22. 22. … ou vous pouvez juste utiliser Shinken :)
  23. 23. Shinken est une réécriture complète de Nagios™® (C) en Python
  24. 24. Attendez ! Python cest lent !Ok, on bench. Xeon 4cores@2.9ghz, 12Go ram, dummy check
  25. 25. (en nombre max de checks en 5min)● Nagios 3 (C) <=> icinga 1.6 (C) = 30K● Centreon-engine (C) = 25K● Shinken = 120K
  26. 26. De grandes possibilités darchitecture
  27. 27. De grandes possibilités darchitecture
  28. 28. Les soucis de supervision IT sont réglés, maisquid des problèmes des admins de 2012 ?
  29. 29. La virtualisation est partout
  30. 30. (OK peut être moins dans le futur avec la nouvelle politique de licence dESX5...)
  31. 31. Si un ESX crash, vous navez pas envie derecevoir 20+ alertes pour les VM dessus !
  32. 32. Que lalerte de lESX. Simple : dépendance dhôte :)
  33. 33. Mais les admins Vmware sont des personnes étranges
  34. 34. Ils « VMotion » des VMs aussi souvent quun codeur Perl tapes $_
  35. 35. Donc oubliez la configuration en fichiers plats manuels :)
  36. 36. Ils suffit dutiliser le module Vmware™® pour Shinken
  37. 37. OK, et si on sattaquait a lun des pires soucis des admins ?
  38. 38. Pas la pénurie de café/bière...
  39. 39. Les fausses alertes !
  40. 40. Exemple : une erreur critique sur de laqualification, est-ce vraiment si critique ?
  41. 41. Cas réel : un switch de production casse une application de qualification
  42. 42. Est-ce que lon doit réveiller le pauvre admin à 3h du mat pour ça ?? Non !
  43. 43. Se concentrer sur lanalyse des problèmessources, et limpact au niveau « business » des applications
  44. 44. La différence entre problèmes sources et impacts est centrale dans Shinken
  45. 45. Et entre les niveaux dimportances business, plus que juste warning/critical
  46. 46. Ok pour les alertes. Mais quid des interfaces graphiques ?
  47. 47. Shinken WebUI :● Problèmes sources & impacts sur des vuesdifférentes● TOUT est trié suivant limportance business● Visualisation des dépendances sous formedarbres et de graphes● HA et agrégation de données● Pas de base de données !
  48. 48. ● Très “visuelle”● HTML5 (désolé pour IE6...)● Limitation (volontaire...) des informationsaffichées● Modulaire (PNP, graphite)● Même votre boss va la comprendre...
  49. 49. Deux types dutilisateurs (incompatibles)● Responsables : visualisation des impacts sur lesapplications end-users (et pourquoi elles sonttombées)● Admins : visualisation des éléments IT qui sontles problèmes sources
  50. 50. ● Vues Problèmes sources VS impacts● Personne ne veux voir les deux● Le tout trié suivant limportance métier
  51. 51. Vue du responsable
  52. 52. Vue dun administrateur
  53. 53. Et si ladmin veut voir pourquoi cest siimportant...
  54. 54. Les deux vont comprendre un graphe
  55. 55. Et chacun peut avoir SON dashboard
  56. 56. Et sa version « mobile »
  57. 57. Demo : http://demo-shinken.web4all.fr/
  58. 58. OK, on voit seulement ce que lon souhaite voir.Bien.
  59. 59. Mais une lourde tâche reste : rajouter nosserveurs dans loutil!
  60. 60. Les templates de configuration de Nagios™®sont indispensables!
  61. 61. Mais pas suffisant. Il reste encore tropdéléments à définir
  62. 62. Shinken permet daccrocher des vérifications pardes expressions complexes du genre« Linux&Prod »
  63. 63. Ceci permet de navoir quà « tagger » sesmachines au lieu de multiplier les groupes et sousgroupes de serveurs
  64. 64. Dans Nagios™®, on considère que 80% de laconfiguration consiste en lécriture des services.
  65. 65. Shinken propose des solutions pour limiterfortement ces 80%.
  66. 66. Exemple : clé duplicate_foreachGénère un service par “propriété” dun hôte.
  67. 67. Define host{ Define service {host_name srv-lin-1 host_name linuxUse linux Register 0_disks /, /var, /data Description Disk $KEY$} check_command check_disk!$KEY$ }
  68. 68. Fait prouvé : un bon informaticien est fainéant
  69. 69. Fait sûrement vrai : les admins sont de bonsinformaticiens!
  70. 70. Un admin préfère éviter de :● Écrire un plugin de 0● Tagger manuellement ses machines● Écrire la configuration de nouveaux types deserveurs/applications
  71. 71. ● Plugins : Merci Monitoring-exchange.org!● Tagging : merci skonf discovery● Nouvelle configuration : merci les packs Shinken
  72. 72. Pourquoi tagger manuellement ses serveursquand on peut juste écrire des règles pour lefaire?
  73. 73. Module de découverte de Shinken!
  74. 74. ● Runners : scripts qui “scanne” et qui sort desdonnées● Rules : lit les données et génère de laconfiguration
  75. 75. Ex : nmap runner scanne un serveur et exportedes données $ nmap_discovery_runner.py -t localhostlocalhost::isup=1localhost::os=linuxlocalhost::osversion=2.6.xlocalhost::osvendor=linuxlocalhost::macvendor=hplocalhost::openports=22,80,3306localhost::fqdn=localhostlocalhost::ip=127.0.0.1
  76. 76. Exemple de règle qui détecte et tag “linux”define discoveryrule { discoveryrule_name Linux creation_type host os linux ; what we match +use linux ; what we wrote in the object, here ; append the linux template}
  77. 77. localhost : use ssh,mysql,http,linux
  78. 78. Découverte multi-niveaux :● 1 Si on match une donnée● 2 On lance un nouveau runner● 3 On ré-applique les règles● 4 GOTO 1
  79. 79. Ex : découverte des shares Windowsdefine discoveryrun { discoveryrun_name WindowsShares discoveryrun_command discovery_windows_share # And scan only windows detected hosts! os windows}
  80. 80. Résultatdefine host { host_name win-srv use windows _shares Work,Public,Private}
  81. 81. Lancement en CLI :shinken-discovery -c etc/discovery.cfg --db Mongodb -mNMAPTARGET=localhost
  82. 82. Ou mieux : lUI sKonf!
  83. 83. sKonf :● UI pour la gestion facile de sa configuration● Découverte ou configuration classique● Gère les paramètres spécifiques de Shinken● Stade Beta avancé
  84. 84. Packs ?
  85. 85. Packs = fichier zip avec tout ce dont vous avezbesoin sur un sujet particulier (comme Linux,Windows ou EMC)
  86. 86. ● Fichiers cfg (templates, commands, services,discovery, …)● Templates de graphiques (PNP ou Graphite)● Images (pour que votre UI soit jolie :) )● Fichier .pack file (json, descriptif)● Pas (encore) dinstallation de plugin
  87. 87. Heu... pourquoi créer un .zip avec tout ça?
  88. 88. ● A. Le déplacer dans /dev/null● B. Le partager!● C. Me lenvoyer pour que je lance un outil “opencore” comme NagiosXI● D. Obiwan Kenobi
  89. 89. Partager via community.shinken-monitoring.org (démon hostd, disponible dans les sourcesShinken)
  90. 90. Créer un tel fichier zip est aussi facile que delancer :$ shinken-packs -c -p /path/to/linux.pack
  91. 91. Et pour lenvoyer :$ shinken-packs -u -k APIKEY -z /tmp/linux.zip(une clé api est générée dès que vous êtes enregistrés sur le site)
  92. 92. Et pour les récupérer?
  93. 93. Sur le site :
  94. 94. Ou directement depuis lUI sKonf :
  95. 95. Depuis sKonf :
  96. 96. Au final ?● Larchitecture est adaptable aux grandsenvironnements● Beaucoup daméliorations par rapport àNagios™®● La WebUI est géniale, sKonf le seraprochainement● Des triggers à la Zabbix arrivent!(corrélation&KPI)● Lancement de services professionnels autour duprojet :)
  97. 97. MerciDes questions?
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×