Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Monitoring une recette DevOps

860 views

Published on

Une recette de Monitoring-as-a-Service façon DevOps, partagée par Voyages-SNCF lors du Meetup "Paris Monitoring - le Monitoring revisité" du 17 mars 2016.

Published in: Technology

Monitoring une recette DevOps

  1. 1. 17 mars 2016 Paris Monitoring Meetup « Le Monitoring revisité » [MONITORING-AS-A-SERVICE] UNE RECETTE DEVOPS PARTAGÉE PAR VOYAGES-SNCF François Nollen Maxence G. de Montauzan
  2. 2. RECETTE DE MONITORING DEVOPS Introduction Ingrédients Préparation François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  3. 3. RETOUR SUR PARIS MONITORING #3 http://fr.slideshare.net/FrancoisN0/devops-autres-tendances-monitoring François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  4. 4. TENDANCES MONITORING Superviser des KPIs fonctionnels et métier (en plus du technique) Se concentrer sur les alertes et l’analyse automatique des données Ouvrir la supervision aux développeurs & ‘monitoring as a service’ Automatiser la supervision & ‘monitoring as code’     Approches top-down, Monitoring de Flux, Hypervision, etc…. Détection avancée d’anomalies, Machine Learning, algorithmes, etc…. DevOps, self- service, etc…. Continuous Delivery, monitoring hors-prod iso-prod, etc…. François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  5. 5. FOCUS SUR UN MONITORING DEVOPS François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  6. 6. FOCUS SUR UN MONITORING SELF-SERVICE Quels plats proposer ? Comment les présenter ? Dans quel ordre ? … François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  7. 7. RECETTE DE MONITORING DEVOPS Introduction Ingrédients Préparation François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  8. 8. DES NORMES François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité On a commencé par le plus hétérogène : les logs générés par les applications… …on a même découvert quelques monstres au passage 
  9. 9. DES BIBLIOTHÈQUES POUR <YOUR_LANGUAGE_HERE> On a ensuite développé et donné des libs aux équipes pour implémenter des logs et métriques normalisés dans leurs applications (Attention à ne pas sous-estimer la charge en support et maintenance de ces composants…) François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  10. 10. François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité DE L’INFRA (« BIG DATA AS A SERVICE ») Parce qu’une infra de centralisation Big Data n’est pas triviale pour un néophyte
  11. 11. DE L’INFRA (« BIG DATA AS A SERVICE ») Objectif : une infra de centralisation à-la-demande pour pouvoir développer et tester de bout en bout n’importe où… …sur les postes de dév, dans des builds d’intégration continue, de non-régression, etc… …même sans accès réseau sur notre laptop de démo peu performant et sous Windows ! François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  12. 12. DES FORMATIONS OUVERTES À TOUS Outils et accès ne suffisent pas à amener les dévs au monitoring… …Il faut aussi sensibiliser, former, accompagner DevOps  culture + outils François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  13. 13. DES SERVICES DE VALIDATION Pour vérifier le comportement des applications Pour validation ponctuellement ou automatiquement : Script, CRON, Jenkins, Rundeck, etc. Pour auditer/surveiller des plateformes Etc. Pour tester en non-régression les libs générant des logs normalisés François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  14. 14. D’AUTRES SERVICES, COMME L’ANONYMISATION Bien écouter les besoins des équipes, même ce qui peut paraître à la marge des problèmes de monitoring… …in fine ce qui contribue à l’adoption des services de supervision fait avancer le monitoring DevOps en général François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  15. 15. DES SOLUTIONS DE DÉPLOIEMENT Déployer automatiquement les outils de supervision (dashboards Kibana / Grafana, alertes Seyren, etc.) Pouvoir les livrer/déployer avec les applications Monitoring as code ! Réduire ainsi les différences d’outillage entre les plateformes François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  16. 16. DES TABLEAUX DE BORD (POUR TOUS LES BUDGETS) Les formations rendent les développeurs autonomes pour créer leurs dashboards… …pour les autres ou ceux qui n’ont pas le temps, il faut des modèles déployables et utilisables tout de suite François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  17. 17. C’EST L’HEURE DE LA DÉMO ! 1°) Activation de logs et métriques (JMX, Graphite) normalisés en mettant des annotations sur des services REST en Java 2°) Démarrage d’une infra de centralisation locale (sous Docker) 3°) Run de l’appli et visualisation des logs/métriques générées dans Hadoop, Kibana et Grafana 4°) Génération d’un dashboard Grafana à partir d’une config JSON dans les sources de l’appli 5°) Déploiement automatisé du dashboard sur Grafana François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  18. 18. RECETTE DE MONITORING DEVOPS Introduction Ingrédients …la suite ! Préparation François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  19. 19. TOUJOURS PLUS DE TABLEAUX DE BORD! Par plateforme, par application, par client, par service, etc. Pour différents cas d’utilisation : monitoring, investigation, rapports hebdo/mensuels, affichage TV… Pour différents outils (Kibana, Grafana) ou des rendus personnalisés (Angular, Bootstrap, D3.js, etc.) François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  20. 20. DES SERVICES D’ALERTES & DE NOTIFICATIONS Les équipes demandent surtout des dashboards… Mais il ne faut pas s’arrêter là - on sait qu’il est crucial de développer l’analyse automatique et l’alerting François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  21. 21. DES SERVICES D’ALERTES & DE NOTIFICATIONS Par exemple, un service d’abonnement à des notifications email ou IRC, ouvert à tous, où chacun choisit ses indicateurs et ses propres seuils (sans interférer avec la supervision des Ops) Par exemple, de nouveaux types d’alertes pour les Ops, intégrant des indicateurs fonctionnels ou métier François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  22. 22. DES ALTERNATIVES… Puisqu’on ne propose pas une solution monolithique… et que les équipes ont le choix… Pour ceux qui n’utilisent pas toutes les briques, de quoi se raccrocher au reste de la solution : ponts, connecteurs, alternatives, etc. François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  23. 23. DE LA CARTOGRAPHIE (AUTOMATIQUE!) (La cartographie : tout le monde en veut… …mais personne ne veut la faire) Le déploiement automatisé a probablement un rôle à jouer (hooks  carto dynamique) Gagnant-gagnant : « décris-moi ton appli et ses outils de supervision (dashboards, alertes, etc.), je les déploierai et la carto sera à jour » François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  24. 24. François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité TOUJOURS PLUS D’INDICATEURS, DE LANGAGES… Plus ils en ont, plus ils en veulent ! (à considérer comme un indicateur de succès !) Libs : « Et pour mon appli PHP, Python, Nodejs… ? » Métriques : « A quand mes KPIs Omniture dans le rapport hebdo Grafana ? Le nombre de JIRAs ouverts par la Relation-Client dans mon dashboard de monitoring ? etc. »
  25. 25. DE L’ANALYSE AVANCÉE (MACHINE LEARNING) Meilleure détection d’anomalies Moins de faux positifs Signaux faibles Etc. Peu de solutions ouvertes et exploitables "at scale" ?  créer une plateforme ML opensource et générique  créer un consortium avec des partenaires industriels et académiques François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  26. 26. RECETTE DE MONITORING DEVOPS Introduction Ingrédients Préparation …pour que la sauce prenne ! François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  27. 27. OBJECTIFS / CRITÈRES DE SUCCÈS François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité Les équipes ont le choix. Nos critères de succès sont : ADOPTION et CONTRIBUTION
  28. 28. APPROCHE PRODUIT Manifeste Itérations Idée originale : nommer un Product Owner (pour un projet à vocation plutôt technique) François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  29. 29. EQUIPE DÉDIÉE TRANSVERSE Une petite équipe multi-localisée et multi-profils (dév, archi, intég, ops)… …du coup des défis supplémentaires (montée en compétence permanente / truck factor), mais définitivement une raison du succès du projet François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  30. 30. OPENSOURCER NOS COMPOSANTS Pour le moment en interne (avec des contributeurs internes)… …en espérant bientôt pouvoir opensourcer notre stack plus largement François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  31. 31. DOCUMENTATION • Code (commenté) • Documentation technique (Git) • Documentation plus fonctionnelle « PO-friendly » (wiki) • Applications de démonstration (une par langage) avec leurs sources • etc. François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  32. 32. TESTS Revue des fonctionnalités (utilisées ou pas) par le PO avec les utilisateurs Tests automatisés pour la qualité, mais aussi pour les contributeurs : • Tests unitaires • Code (Sonar etc.) • Tests d’intégration (Selenium, tests sur infra Dockerisée) • Non-régression en perf (Microbenchmark, Gatling) François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  33. 33. TECHNOLOGIES ATTRACTIVES (Même celles qui n’ont pas de lien particulier avec le monitoring, à bien choisir pour attirer les contributeurs) François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  34. 34. François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité DÉMOS RÉGULIÈRES & COMMUNICATION Mention spéciale pour le chat qui aide vraiment à créer une communauté technique et distribuer le support au-delà d’une équipe dédiée : les utilisateurs se répondent, les contributeurs échangent, etc.
  35. 35. MISE EN VALEUR DES CONTRIBUTIONS François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité • Communiquer sur les contributions en cours, • Mettre en relation les contributeurs éventuels, • Les conseiller, les accompagner, • Leur proposer de présenter leur travail lors des démos, • Etc.
  36. 36. …MAIS QUE VAUT UNE RECETTE SANS PHOTO ??! François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  37. 37. PHOTO APRÈS 6 MOIS : LES COMPOSANTS UTILISÉS De plus en plus d’utilisateurs et de bouche-à- oreille (on découvre de nouveaux utilisateurs en prod ! …et c’est très bien) 1 point = 1 équipe Des contributions qui vont de la pull request de 2 LoC … au portage d’une lib pour un autre langage Sans surprise les libs sont plus utilisées que les dashboards, alertes et autres outils. Probablement parce que c’est la responsabilité historique des dévs (produire des logs). Les autres services mettront plus de temps à être adoptés. François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  38. 38. PHOTO APRÈS 6 MOIS : LES FORMATIONS Résultat : engouement pour une formation pourtant longue (chacun se débrouille pour timer) sur un sujet assez spécifique/technique… …Preuve que le sujet intéresse au-delà des équipes de supervision classiques Tous profils d’inscrits : développeurs, Ops, chefs de projet, curieux… Ce que l’on propose, une journée complète pour : • Comprendre l’architecture Big Data de centralisation des logs • Etre autonome sur les outils Kibana et Grafana (théorie + TPs) …DevOps wins! François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  39. 39. A SUIVRE… François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  40. 40. INSPIRATIONS ET AUTRES LIENS Monitoring as a Service (James Turnbull, 2015) A Monitoring Maturity Model (James Turnbull, 2015) 5 years of metrics and monitoring (Lindsay Holmwood, 2014) Agilité & DevOps @ Voyages-sncf.com (2014) DevOps & autres Tendances Monitoring de grands acteurs du Web (François Nollen, 2015) François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  41. 41. RETROUVEZ CE MEETUP SUR LE WEB François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  42. 42. SOURCES ILLUSTRATIONS http://voyages.ideoz.fr/categorie/guide-culinaire/recettes-de-cuisine/ http://www.initiatives-recettes.fr/ http://memegenerator.net/instance/41522505 https://www.mindtouch.com/blog/2014/09/29/serve-foster-self-service-question-whats-right-mix-optimize-customer-success http://returnonfocus.com/wp-content/uploads/Ingredients.jpg http://s2.lemde.fr/image2x/2016/01/09/534x0/4844344_6_e28a_en-2015-10-000-tonnes-de-fruits-et-legumes_fab1a41f8ebdc5f3183314acdec490a8.jpg https://fr.pinterest.com/pin/441141725970768916/ http://www.a2com.fr/infrastructure-informatique/consolidation-et-virtualisation-de-serveurs http://consocollaborative.com/interview/demain-le-campus-collaboratif-pour-reinventer-les-services-etudiants/ https://www.pinterest.com/pin/185210603397001934/ https://fanart.tv/movie/9268/eraser/ http://www.st-cyr.terre.defense.gouv.fr/index.php/Formation-militaire/Missions-operationnelles/Parachutisme boitierrouge.com/2014/04/10/k2000-qui-est-kitt-qui-est-karr/ http://okogami.fr/test-firewatch-pc/ http://axiomcafe.fr/pourquoi-dit-on-que-les-poissons-rouges-ont-une-m-moire-de-3-secondes http://www.eponine-pauchard.com/2010/09/le-diagramme-spaghetti/ http://photo.speedresa.com/photos_to/865/196983157.jpg http://soleildelumiere.canalblog.com/archives/2012/12/29/26015918.html http://club.doctissimo.fr/desenfers/robotique-imaginaire-reelle-525810/photo/cuisinier-japonais-okonomiyaki-21740362.html http://bookboon.com/blog/2013/12/5-myths-realities-good-teamwork/ http://www.superheroteamtraining.com/superhero-services/what-is-superhero-team-training/ https://www.futurehosting.com/blog/septembers-roundup-of-the-best-open-source-linux-and-web-hosting-content/ http://kimberlykunkel.com/tag/book-reviews/ http://www.femmeactuelle.fr/cuisine/news-cuisine/top-chef-2015-saison-6.-nouveau-jury-top-chef.-19909 http://www.casinoaix.com/ http://www.latribune.fr/entreprises-finance/banques-finance/industrie-financiere/20130606trib000768870/les-toques-blanches-premiere-societe-de-gastronomie-a- entrer-en-bourse.html http://iguessitsokay.blogspot.fr/2011/04/rachels-21st-birthday.html http://tousphotographes.net/quel-appareil-photo-choisir/ (Merci de nous contacter si vous souhaitez qu’une illustration soit retirée de cette présentation) François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  43. 43. Rejoignez-nous ! Voyages-SNCF recrute. http://jobs.voyages-sncf.com/ François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité
  44. 44. François Nollen :: Maxence G. de Montauzan Paris Monitoring Meetup :: 17 mars 2016 :: Le Monitoring revisité

×