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

  • 1,613 views
Uploaded on

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

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

More in: Technology
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
No Downloads

Views

Total Views
1,613
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
29
Comments
0
Likes
2

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. SophiaConf 2012 Jean Gabès
  • 2. Qui suis-je ?Jean GabèsAdministrateur système sur Bordeaux,auteur du livre Nagios3 aux éditions Eyrolleset de Shinken
  • 3. Pourquoi superviser ?
  • 4. Quand lIT va mal, le business va mal...
  • 5. Ou voire pire....
  • 6. Pour sauver le monde business : Les outils de supervision !
  • 7. Bon il y en a pleins...
  • 8. Concernant la supervision pure IT, Nagios™® est la référence de ces 10 dernières années ...
  • 9. Concernant la supervision pure IT, Nagios™® est la référence de ces 10 dernières années ...
  • 10. … grâce à beaucoup de modules
  • 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. Et des plugins de supervisions$ check_disks -w 90% -c 95%Disks OK | /=50% /var=80% /data=35%$ echo $?0
  • 13. Plugins & modularité sont bien !
  • 14. Mais si ce nétait plus suffisant ?
  • 15. LIT grossit de jours en jours
  • 16. Avec plein de couches (physique, réseaux, virtuel, …)
  • 17. Rempli de clusters
  • 18. Et de sites distants
  • 19. Difficultés classiques dans la supervision IT● Trop de charge● Gestion de la configuration● Perte de site distant ?● Haute disponibilité
  • 20. Architecture idéale
  • 21. Oui vous pouvez bricoler autour dun Nagios™® pour cela ...
  • 22. … ou vous pouvez juste utiliser Shinken :)
  • 23. Shinken est une réécriture complète de Nagios™® (C) en Python
  • 24. Attendez ! Python cest lent !Ok, on bench. Xeon 4cores@2.9ghz, 12Go ram, dummy check
  • 25. (en nombre max de checks en 5min)● Nagios 3 (C) <=> icinga 1.6 (C) = 30K● Centreon-engine (C) = 25K● Shinken = 120K
  • 26. De grandes possibilités darchitecture
  • 27. De grandes possibilités darchitecture
  • 28. Les soucis de supervision IT sont réglés, maisquid des problèmes des admins de 2012 ?
  • 29. La virtualisation est partout
  • 30. (OK peut être moins dans le futur avec la nouvelle politique de licence dESX5...)
  • 31. Si un ESX crash, vous navez pas envie derecevoir 20+ alertes pour les VM dessus !
  • 32. Que lalerte de lESX. Simple : dépendance dhôte :)
  • 33. Mais les admins Vmware sont des personnes étranges
  • 34. Ils « VMotion » des VMs aussi souvent quun codeur Perl tapes $_
  • 35. Donc oubliez la configuration en fichiers plats manuels :)
  • 36. Ils suffit dutiliser le module Vmware™® pour Shinken
  • 37. OK, et si on sattaquait a lun des pires soucis des admins ?
  • 38. Pas la pénurie de café/bière...
  • 39. Les fausses alertes !
  • 40. Exemple : une erreur critique sur de laqualification, est-ce vraiment si critique ?
  • 41. Cas réel : un switch de production casse une application de qualification
  • 42. Est-ce que lon doit réveiller le pauvre admin à 3h du mat pour ça ?? Non !
  • 43. Se concentrer sur lanalyse des problèmessources, et limpact au niveau « business » des applications
  • 44. La différence entre problèmes sources et impacts est centrale dans Shinken
  • 45. Et entre les niveaux dimportances business, plus que juste warning/critical
  • 46. Ok pour les alertes. Mais quid des interfaces graphiques ?
  • 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. ● Très “visuelle”● HTML5 (désolé pour IE6...)● Limitation (volontaire...) des informationsaffichées● Modulaire (PNP, graphite)● Même votre boss va la comprendre...
  • 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. ● Vues Problèmes sources VS impacts● Personne ne veux voir les deux● Le tout trié suivant limportance métier
  • 51. Vue du responsable
  • 52. Vue dun administrateur
  • 53. Et si ladmin veut voir pourquoi cest siimportant...
  • 54. Les deux vont comprendre un graphe
  • 55. Et chacun peut avoir SON dashboard
  • 56. Et sa version « mobile »
  • 57. Demo : http://demo-shinken.web4all.fr/
  • 58. OK, on voit seulement ce que lon souhaite voir.Bien.
  • 59. Mais une lourde tâche reste : rajouter nosserveurs dans loutil!
  • 60. Les templates de configuration de Nagios™®sont indispensables!
  • 61. Mais pas suffisant. Il reste encore tropdéléments à définir
  • 62. Shinken permet daccrocher des vérifications pardes expressions complexes du genre« Linux&Prod »
  • 63. Ceci permet de navoir quà « tagger » sesmachines au lieu de multiplier les groupes et sousgroupes de serveurs
  • 64. Dans Nagios™®, on considère que 80% de laconfiguration consiste en lécriture des services.
  • 65. Shinken propose des solutions pour limiterfortement ces 80%.
  • 66. Exemple : clé duplicate_foreachGénère un service par “propriété” dun hôte.
  • 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. Fait prouvé : un bon informaticien est fainéant
  • 69. Fait sûrement vrai : les admins sont de bonsinformaticiens!
  • 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. ● Plugins : Merci Monitoring-exchange.org!● Tagging : merci skonf discovery● Nouvelle configuration : merci les packs Shinken
  • 72. Pourquoi tagger manuellement ses serveursquand on peut juste écrire des règles pour lefaire?
  • 73. Module de découverte de Shinken!
  • 74. ● Runners : scripts qui “scanne” et qui sort desdonnées● Rules : lit les données et génère de laconfiguration
  • 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. 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. localhost : use ssh,mysql,http,linux
  • 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. Ex : découverte des shares Windowsdefine discoveryrun { discoveryrun_name WindowsShares discoveryrun_command discovery_windows_share # And scan only windows detected hosts! os windows}
  • 80. Résultatdefine host { host_name win-srv use windows _shares Work,Public,Private}
  • 81. Lancement en CLI :shinken-discovery -c etc/discovery.cfg --db Mongodb -mNMAPTARGET=localhost
  • 82. Ou mieux : lUI sKonf!
  • 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. Packs ?
  • 85. Packs = fichier zip avec tout ce dont vous avezbesoin sur un sujet particulier (comme Linux,Windows ou EMC)
  • 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. Heu... pourquoi créer un .zip avec tout ça?
  • 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. Partager via community.shinken-monitoring.org (démon hostd, disponible dans les sourcesShinken)
  • 90. Créer un tel fichier zip est aussi facile que delancer :$ shinken-packs -c -p /path/to/linux.pack
  • 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. Et pour les récupérer?
  • 93. Sur le site :
  • 94. Ou directement depuis lUI sKonf :
  • 95. Depuis sKonf :
  • 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. MerciDes questions?