Revue de tendances Monitoring innovantes chez de grands acteurs du Web et zoom sur Voyages-SNCF, pour le Meetup "Paris DevOps meets Paris Monitoring" du 7 octobre 2015.
TOCK (The Open Conversation Kit) @ Meetup Open Transport
DevOps et tendances Monitoring
1. 7 octobre 2015
« Paris DevOps meets Paris Monitoring »
DEVOPS &
AUTRES TENDANCES
MONITORING
DE GRANDS ACTEURS DU WEB
– par François Nollen –
2. AGENDA
Introduction : un renouveau du monitoring
Revue de tendances chez les grands acteurs du Web
Zoom sur le cas Voyages-SNCF
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
5. INTRODUCTION
La modernisation
des pratiques de monitoring
génère de plus en plus d’intérêt dans
le domaine (Web, conférences, etc.).
Les idées sont nouvelles et
la plupart des acteurs débutent
dans leur application…
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
6. INTRODUCTION
Les acteurs les plus avancés
dans la transformation DevOps ou
Continuous Delivery ont ressenti
les limites des outils de supervision traditionnels.
On a cherché à identifier les tendances qui
font le succès des entreprises
et des "gourous" du monitoring
sur le Web et ailleurs…
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
7. AGENDA
Introduction : un renouveau du monitoring
Revue de tendances chez les grands acteurs du Web
Zoom sur le cas Voyages-SNCF
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
8. 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’
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
Tendances recueillies dans une
15zaine de sources
(voir sources en fin de présentation)
…On propose cette grille d’analyse
pour étudier ce qui se fait dans le
domaine… (codes couleurs à suivre)
9. Les métriques clefs sont en dollars $$$
« Fault detection is for yesterday. Metrics are king.
Automation is key. At Etsy everything is metered and graphed.
Their top metrics are dollars, because that is their business. »
La configuration Nagios est dans Git
Analyser des tendances (Machine Learning)
Beaucoup de nouveaux outils pour gérer les alertes efficacement
de manière collaborative :
Naviguer dans les alarmes (distinguer les vraies des faux positifs) Skyline
Détecter les relations entre anomalies et les historiser Oculus
Inclure du contexte dans les alertes Nagios-Herald
Qualifier les alertes et déclarer les actions en cours OpsWeekly
Réduire le phénomène d’« Alert Fatigue » comme une dette technique
« monitoring hygiene hack week »
On parle d’Alert Fatigue quand tant de
systèmes remontent des informations et
des alertes qu’on n’y prête plus attention.
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
10. Focus par ordre d’importance :
Business Applications Services Infrastructure
Le monitoring est l’affaire de tous…
…et surtout des développeurs :
« You are not the customer of your monitoring.
Attach monitoring to product development.
It is another feature. Treated as any other development.
Change the accountability of who is responsible for monitoring.
Teach the application developers to fish for themselves. »
« Self-service is king »
JAMES TURNBULL
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
11. Un Pure Player Web très avancé
dans le « Continuous Delivery »
Pour livrer quotidiennement, il a fallu :
Automatiser le monitoring technique
Automatiser le monitoring fonctionnel
Alerter automatiquement les équipes Dev/DevOps
par email avec tout le contenu nécessaire (stacktraces, etc.)
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
12. LINDSAY HOLMWOOD
(@DEVOPSDAYS)
« L’Alert Fatigue » est devenue un problème reconnu
Il faut dépasser la simple détection des écarts basée sur des seuils
et détecter des anomalies en analysant des tendances
Le futur du monitoring c’est analyser et agir
sur la base des (données fournies par les) alertes
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
13. LINDSAY HOLMWOOD
(@DEVOPSDAYS)
Moderniser sa supervision c’est :
Plus de meta-données sur des métriques auto-descriptives
pour construire automatiquement des visualisations appropriées
Donner aux développeurs l’accès aux données de monitoring
Au-delà des aspects techniques, il y a des aspects culturels à diffuser :
« Ops as enablers, not gatekeepers »
Responsabiliser les équipes mais DevOps et les accompagner
• Guidelines/Coaching sur ce qui fait une bonne métrique
• Guidelines/Coaching sur ce qui fait une bonne alerte
• Ecouter les besoins des utilisateurs finaux
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
14. Priorité à l’exploitation de nos données,
plutôt que l’infrastructure pour les stocker et les traiter.
« Analytics should be about analyzing and interpreting data,
not the infrastructure to store and process it. »
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
15. ADRIAN COCKCROFT
(BATTERY VENTURES, EX NETFLIX/EBAY)
Priorité à l’analyse des métriques,
plutôt que leur collecte-stockage-affichage.
« Rule #1: Spend more time working on code
that analyzes the meaning of metrics, than code
that collects, moves, stores and displays metrics »
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
16. BOSTON MEDICAL CENTER
Lindsay Holmwood s’est aussi intéressé à la
gestion de l’Alert Fatigue dans d’autres domaines
comme la santé retour d’expérience gestion des alertes cardiaques à Boston en 2014
Il propose de transposer les mêmes stratégies au monitoring :
Monter un groupe multi-disciplinaire pour travailler sur les alertes
(dev, ops, management…)
Extraire et analyser les données du système de monitoring
Réduire le bruit : éliminer les alertes sans action possible
ou qui vont se résoudre d’elles-mêmes
Etablir des seuils d’alerte par défaut,
mais permettre à chacun de configurer ses propres seuils
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
17. Détection d’anomalies avancée :
Pur monitoring + Validation de releases
Combinaison d’approches et de modèles
Approche Monitoring as a Service (MAAS)
Pour permettre le self-service, il faut :
Cartographier les indicateurs et alertes disponibles
Guider les utilisateurs pour sélectionner/créer les leurs
Fournir des outils de validation (ex. replay on past)
Des seuils configurables par utilisateur
L’abonnement individuel aux alertes
Pour assurer le self-service, il faut :
Une infrastructure de supervision / d’analyse ‘dimensionnable’ (scalable)
Des moyens de contrôle de la charge (quotas utilisateurs ou autre)
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
18. TENDANCES MONITORING (BIS)
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’
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
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….
19. AGENDA
Introduction : un renouveau du monitoring
Revue de tendances chez les grands acteurs du Web
Zoom sur le cas Voyages-SNCF
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
20. VOYAGES-SNCF & VOYAGES-SNCF TECHNOLOGIES
#1
e-commerce
français
78 millions
billets vendus
40 sites
Web
25 applis
mobiles
10 M
téléchargements
mobiles
1000
collaborateurs
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
21. VOYAGES-SNCF & VOYAGES-SNCF TECHNOLOGIES
SI de VSC
mais aussi moteur
d’autres clients
et agences
3
sites physiques
2200
serveurs
2
Data Centers
60 téras
de données
par mois
260
collaborateurs
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
22. LE POINT DE DÉPART
Des systèmes de plus en plus complexes…
Etre plus réactifs et accélérer les cycles…
Conserver voire améliorer la QoS
Et demain…
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
23. LA DÉMARCHE : ENJEUX + VEILLE + BESOINS UTILIS.
Enjeux
entreprise
Tendances
& succès
hors entreprise
Besoins
utilisateurs
"Supervision++ de
demain pour tous
dans l’entreprise"
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
Ops, Support, Dév, Release Managers,
QA, Intégrateurs, Pilotage, Sécurité, etc….
24. BESOINS : UN PÉRIMÈTRE TRÈS LARGE…
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
Différents cas
d’utilisation /
types d’outils…
Différents
niveaux de
lecture…
Différents
types de
données…
25. DEUX CONVICTIONS POUR DÉMARRER
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
(Pour une entreprise de
la taille de VSCT…)
Impossible
et pas souhaitable
de traiter tous ces
besoins de manière
centralisée
(un seul outil ou
une seule équipe)
On doit pouvoir proposer
un ensemble cohérent
d’outils modernes
qui se complètent
pour implémenter
efficacement
les besoins
(…moins d’outils que
de cas d’utilisation)
26. APPRENDRE À PÊCHER
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
Les équipes DevOps
construisent leurs propres
outils de supervision
27. LES OUTILS POUR PÊCHER...
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
Liste non
exhaustive
et non
définitive…
28. PROPOSER DES « SERVICES DE SUPERVISION »
Abonnement en ligne à des notifications/alertes : accessible à tous,
à-la-demande, tous types de KPIs, seuils personnalisables…
Frameworks (normes, libs) pour produire des logs/métriques
Service d’analyse automatique de tendances : rapports auto,
encapsulation de techniques de Machine Learning, etc.
Génération et déploiement automatisé de dashboards
Cartographie automatisée des outils de supervision
Formation aux technos front-end : Kibana, Grafana, etc.
Etc. etc. etc.
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
Les équipes DevOps
utilisent des « services de supervision »
génériques pour construire leurs propres
outils de supervision
29. AVOIR UNE APPROCHE PRODUIT
Ateliers utilisateurs
Vision produit
Communication (beaucoup!)
Démos publiques régulières
Documentation (beaucoup!)
Visibilité : roadmap, utilisateurs, etc.
Réutilisation (ne pas refaire ce qui existe)
Formations
Support
« Le principal critère de succès,
c’est l’adhésion et l’utilisation
de nos services par les équipes DevOps. »
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
30. APPELER UNE COMMUNAUTÉ À LA RESCOUSSE!
Une coreteam ne PEUT PAS
implémenter et maintenir SEULE
tous les services de supervision
Les utilisateurs doivent s’approprier
et contribuer aux services de
supervision en construisant
leurs outils
Les ateliers/besoins montrent une
large communauté d’utilisateurs
potentiels autour de la supervision
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
Rappel : les Ops aussi
sont des utilisateurs!
31. PROMOUVOIR OPENSOURCE ET CONTRIBUTION
Rendre tous les composants génériques opensource (en interne)
Proposer des formations ouvertes à tous
Fournir pour contribuer :
Outils de validation
Infra de dév local (Big Data, etc.)
Documentation, tutos, etc.
Tests automatisés
Démos publiques
Mettre en valeur les
contributions et les contributeurs
…Et montrer l’exemple en contribuant à d’autres projets
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
32. POUR RÉSUMER L’APPROCHE (CONCLUSION)
Avancées techniques :
Machine Learning, Monitoring as code, etc.
Approche DevOps & self-service :
Les équipes DevOps fabriquent leurs outils de supervision
Les guider, les accompagner
Approche produit :
Proposer des services de supervision
Comme un produit
Opensource (interne ou pas) :
Projet et solutions communautaires
Vouloir que les équipes DevOps se les approprient
Inciter à la contribution
Créer une communauté
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
34. SOURCES PRINCIPALES
#monitoringsucks blog-posts
Leveraging Data Science to Improve Monitoring (João Miranda, 2015)
Nagios at Etsy: How a Handmade Marketplace Grew
its Monitoring with Nagios (Avleen Vig, 2013)
Introducing Kale (Abe Stanway, 2013)
Opsweekly: Measuring on-call experience
with alert classification (Laurie Denness, 2014)
Monitoring as a Service (James Turnbull, 2015)
A Monitoring Maturity Model (James Turnbull, 2015)
Livrer chaque jour ce qui est prêt
(Dimitri Baeli et Benjamin Degerbaix, 2015)
5 years of metrics and monitoring (Lindsay Holmwood, 2014)
Gluecon Monitoring Microservices and Containers:
A Challenge (Adrian Cockcroft, 2015)
Applying cardiac alarm management techniques
to your on-call (Lindsay Holmwood, 2014)
Bizarre… vous avez dit bizarre? (Renaud Bauvin, 2015)
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »
35. AUTRES SOURCES
Netflix Built Its Own Monitoring System
- and Why You Probably Shouldn't (Roy Rapoport, 2015)
Présent et avenir du monitoring de flux
(Cédrick Lunven & Julien Kirch, 2015)
Let’s talk about Alert Fatigue (Julie Arsenault, 2014)
DZone Guide to Performance & Monitoring
– 2015 Edition & Does Monitoring Still Suck? (Moe Long, 2015)
Introducing practical and robust anomaly detection
in a time series (Arun Kejariwal, 2015)
François Nollen :: 7 octobre 2015
Meetup « Paris DevOps meets Paris Monitoring »