SlideShare une entreprise Scribd logo
1  sur  40
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 1
#LaDuckConf by OCTO Technology © 2019 - All rights reserved#LaDuckConf by OCTO Technology © 2019 - All rights reserved
OBSERVABILITE
Qu’est ce qui en fait un attribut
de nos architectures ?
#LaDuckConf by OCTO Technology © 2019 - All rights reserved
Le nombre de services que
nous assemblons pour
construire une application
augmente.
3
NOTRE CONSTAT
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 4
Qu’est ce qu’un service ?
service
client
fournisseur
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 5
Qu’est ce qu’un service ?
service
un contrat de service
client
fournisseur
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 6
Qu’est ce qu’un service ?
service
un contrat de service
des modalités d’exposition
client
fournisseur
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 7
Qu’est ce qu’un service ?
service
un contrat de service
des modalités d’exposition
des prérequis client
client
fournisseur
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 8
L’observabilité comme attribut de nos architectures
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 9
L’observabilité comme attribut de nos architectures
La croissance du
nombre de
services est un
mouvement de
fond
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 10
L’observabilité comme attribut de nos architectures
La croissance du
nombre de
services est un
mouvement de
fond
4 critères pour
spécifier
l’observabilité
d’une
architecture
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 11
L’observabilité comme attribut de nos architectures
La croissance du
nombre de
services est un
mouvement de
fond
4 critères pour
spécifier
l’observabilité
d’une
architecture
4 approches
technos pour
remplir ces
critères
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 12
Fabien Arcellier / Octo Technology
ARCHITECTE TECHNIQUE
Github : FabienArcellier
#LaDuckConf by OCTO Technology © 2019 - All rights reserved
Le nombre de services augmente
3 facteurs expliquent ça :
๏ le packaging moderne,
๏ les processus multi-canaux,
๏ le cloud
13
#LaDuckConf by OCTO Technology © 2019 - All rights reserved
Gestionnaires de dépendances
Containerisation
14
Facteur 1 : le packaging moderne
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 15
Facteur 1 : le packaging moderne
C’est facile de créer un
nouveau service
autonome. La complexité
du code reste sous
contrôle.
dev
"
#LaDuckConf by OCTO Technology © 2019 - All rights reserved
Parcours consistant
Parcours fluide
16
Facteur 2 : le processus multi-canaux
#LaDuckConf by OCTO Technology © 2019 - All rights reserved
C'est facile de créer un
service pour mutualiser des
comportements. Ca devient
un produit autonome.
17
Facteur 2 : le processus multi-canaux
métier
"
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 18
Facteur 3. Le cloud
Un coût d’activation de
ressources proche de zéro
Des ressources
virtuellement illimitées
#LaDuckConf by OCTO Technology © 2019 - All rights reserved
C'est facile de créer un
service sur le cloud pour
isoler un workload et le
rendre plus résilient
19
Facteur 2 : le processus multi-canaux
ops
"
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 20
dev métier ops
Packaging
moderne
multi-canal Cloud
Croissance des services assemblés pour construire une application
métier
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 21
Un sentiment de flou pour les acteurs du système d’information
user
user
user
user
S
S
S
S S
SS
S
S
metier
metier
support
ops
L’explosion du nombre de
service complique la perception
du système d’information
Communiquer autour du
système, modifier le système et
corriger le système demande
plus d’efforts et de
concertations
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 22
#LaDuckConf by OCTO Technology © 2019 - All rights reserved
L’observabilité est un attribut d’une architecture
comme le sont la performance, l’usabilité, ou la
sécurité.
23
L’observabilité est un attribut d’une architecture distribuée
@copyconstruct
#LaDuckConf by OCTO Technology © 2019 - All rights reserved
L’observabilité est un attribut d’une architecture
comme le sont la performance, l’usabilité, ou la
sécurité
24
L’observabilité est un attribut d’une architecture distribuée
@copyconstruct
Observabilité
auditabilité
télémétrie (métrique)
notification
accessibilité
#LaDuckConf by OCTO Technology © 2019 - All rights reserved
4 approches technologiques pour adresser vos objectifs d’observabilité
Log management Exception management
Endpoints de télémétrie Tracing distribué
D’autres approches que je ne pourrai aborder sont utiles telles que la mesure du uptime, la
communication d’incidents dynamique (status page), le profiling applicatif, les health-checks, …
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 26
Log management – Events analytic
Y aller pour …
Ne pas y aller pour … Nos recommandations
Investiguer des logs en temps réel
construire un outil expert d'intelligence opérationnelle
alerter sur des événements
stocker de logs pour du légal (sur plus de 3 semaines)
construire un ETL for streaming
stocker de l’ensemble des logs pour toute l’entreprise
Limiter la rétention sur la plateforme d’analytique à quelques
semaines maximum
encoder vos logs applicatifs dans des documents semi-
structurés (json-lines, …)
Attention au backpressure dans l'infrastructure de shipping. En
cas d'incident, le retard d'ingestion peut etre conséquent et
compliquer l'investigation d'incident
Faire de l'analyse forensic
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 27
Log management
diffusion-app
syslog-ng
aiguillage
vod-exnihilo
api.logmatic.io
syslog-ng
…
logmatic.io
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 28
Log management
diffusion-app
syslog-ng
aiguillage
vod-exnihilo
api.logmatic.io
syslog-ng
…
logmatic.io
L’agent de shipping propose du backpressure sur fichiers
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 29
Log management
diffusion-app
syslog-ng
aiguillage
vod-exnihilo
api.logmatic.io
syslog-ng
…
logmatic.io
L’agent de shipping propose du back pressure sur fichiers
capacités de parsing offertes par le broker, attention c’est fragile.
Nous vous recommandons de préférer un encodage en amont (json, …)
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 30
L’exception management
Y aller pour …
Ne pas y aller pour … Nos recommandations
Monitorer du code applicatif
fluidifier la collaboration dev/ops
alerter intelligemment sur des exceptions
construire un puits de logs
Intégrer cette approche sur tous les environnements
Tracker ses déploiements
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 31
Exception management
bff.ffea.com
spa.ffea.com
Iso.ffea.com
sentry.io
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 32
Exception management
bff.ffea.com
spa.ffea.com
Iso.ffea.com
sentry.io
En cas d’exception, elle est transformée dans un format pivot par le sdk.
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 33
Exception management
bff.ffea.com
spa.ffea.com
Iso.ffea.com
sentry.io
En cas d’exception, elle est transformée dans un format pivot par le sdk.
Les exceptions sont automatiquement agrégées par famille. Une issue est ouverte pour
Cette exception
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 34
Exception management
bff.ffea.com
spa.ffea.com
Iso.ffea.com
sentry.io
En cas d’exception, elle est transformée dans un format pivot par le sdk.
Les exceptions sont automatiquement agrégées par famille. Une issue est ouverte pour
cette exception
Si c’est une nouvelle famille d’exception, l’équipe de développement est notifiée
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 35
Endpoints de télémétrie
35
Y aller pour …
Ne pas y aller pour … Nos recommandations
monitorer des ressources d’infrastructure
monitorer des métriques d’activités
exposer des métriques avec des cardinalités
illimitées (url, email, …)
collecter des infos non numériques
calculer des métriques lors de la requête
Implémenter des métriques d’activité pour faciliter la discussion
entre métiers, développeurs et ops
Différencier les environnements dans vos labels (par exemple
avec la branche git)
Proposer plusieurs consoles selon l’usage, une seule console
pour tous est utopique
monitorer des middlewares
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 36
account-entries
host
jobs
compensation
techno : cassandra
techno : java + springboot
rhel
techno : activemq
tsdb
techno : prometheus
console
techno : grafana
scraper
techno : prometheus
exporter
exporter
agent
techno : telegraf
alerting
exporter
techno : alertmanager
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 37
Tracing distribué
3737
Y aller pour …
Ne pas y aller pour …
Émergence d’un standard d’API avec Open Tracing à suivre
Nos recommandations
instrumenter des middlewares
diagnostiquer des problèmes de performance sur une requête
investiguer des modes de défaillance cross-service
instrumenter des microservices au niveau runtime
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 38
Quels outils puis je rencontrer ?
Log management Endpoints de telemetryException management Tracing distribué
Les outils peuvent varier. Voici des outils émergents que vous pouvez rencontrer.
#LaDuckConf by OCTO Technology © 2019 - All rights reserved 39
Take-away
L’observabilité est un attribut d’architecture nécessaire sur des architectures
distribuées
La construction d'un service observable s'inscrit dans une démarche
d'amélioration continue
Chercher le meilleur outil pour de l'observabilité, c'est comme chercher la
meilleure voiture pour labourer un champ et faire du circuit
#LaDuckConf by OCTO Technology © 2019 - All rights reserved
40
Images
https://pixabay.com/en/virus-microbiology-cell-infection-163471/
https://pixabay.com/en/container-container-port-port-cargo-3859711/
https://pixabay.com/fr/r%C3%A9seau-serveur-syst%C3%A8me-2402637/
https://medium.com/@copyconstruct/monitoring-in-the-time-of-cloud-
native-c87c7a5bfa3e
https://pixabay.com/fr/g%C3%A9n%C3%A9rateur-moteur-moteur-
%C3%A9lectrique-1340210/

Contenu connexe

Tendances

Tendances (20)

Cloud-Native CI/CD on Kubernetes with Tekton Pipelines
Cloud-Native CI/CD on Kubernetes with Tekton PipelinesCloud-Native CI/CD on Kubernetes with Tekton Pipelines
Cloud-Native CI/CD on Kubernetes with Tekton Pipelines
 
DevOps introduction
DevOps introductionDevOps introduction
DevOps introduction
 
CI/CD Best Practices for Your DevOps Journey
CI/CD Best  Practices for Your DevOps JourneyCI/CD Best  Practices for Your DevOps Journey
CI/CD Best Practices for Your DevOps Journey
 
"DevOps > CI+CD "
"DevOps > CI+CD ""DevOps > CI+CD "
"DevOps > CI+CD "
 
Modern CI/CD Pipeline Using Azure DevOps
Modern CI/CD Pipeline Using Azure DevOpsModern CI/CD Pipeline Using Azure DevOps
Modern CI/CD Pipeline Using Azure DevOps
 
Platform engineering
Platform engineeringPlatform engineering
Platform engineering
 
OpenTelemetry For Architects
OpenTelemetry For ArchitectsOpenTelemetry For Architects
OpenTelemetry For Architects
 
Scaling DevSecOps Culture for Enterprise
Scaling DevSecOps Culture for EnterpriseScaling DevSecOps Culture for Enterprise
Scaling DevSecOps Culture for Enterprise
 
Let's build Developer Portal with Backstage
Let's build Developer Portal with BackstageLet's build Developer Portal with Backstage
Let's build Developer Portal with Backstage
 
DevOps Monitoring and Alerting
DevOps Monitoring and AlertingDevOps Monitoring and Alerting
DevOps Monitoring and Alerting
 
Kubernetes GitOps featuring GitHub, Kustomize and ArgoCD
Kubernetes GitOps featuring GitHub, Kustomize and ArgoCDKubernetes GitOps featuring GitHub, Kustomize and ArgoCD
Kubernetes GitOps featuring GitHub, Kustomize and ArgoCD
 
Open API and API Management - Introduction and Comparison of Products: TIBCO ...
Open API and API Management - Introduction and Comparison of Products: TIBCO ...Open API and API Management - Introduction and Comparison of Products: TIBCO ...
Open API and API Management - Introduction and Comparison of Products: TIBCO ...
 
Simplify DevOps with Microservices and Mobile Backends.pptx
Simplify DevOps with Microservices and Mobile Backends.pptxSimplify DevOps with Microservices and Mobile Backends.pptx
Simplify DevOps with Microservices and Mobile Backends.pptx
 
Open shift 4 infra deep dive
Open shift 4    infra deep diveOpen shift 4    infra deep dive
Open shift 4 infra deep dive
 
OSMC 2022 | OpenTelemetry 101 by Dotan Horovit s.pdf
OSMC 2022 | OpenTelemetry 101 by Dotan Horovit s.pdfOSMC 2022 | OpenTelemetry 101 by Dotan Horovit s.pdf
OSMC 2022 | OpenTelemetry 101 by Dotan Horovit s.pdf
 
Gitops: the kubernetes way
Gitops: the kubernetes wayGitops: the kubernetes way
Gitops: the kubernetes way
 
The Blueprint for Change: How the Best Are Succeeding in Transformation
The Blueprint for Change: How the Best Are Succeeding in TransformationThe Blueprint for Change: How the Best Are Succeeding in Transformation
The Blueprint for Change: How the Best Are Succeeding in Transformation
 
THE STATE OF OPENTELEMETRY, DOTAN HOROVITS, Logz.io
THE STATE OF OPENTELEMETRY, DOTAN HOROVITS, Logz.ioTHE STATE OF OPENTELEMETRY, DOTAN HOROVITS, Logz.io
THE STATE OF OPENTELEMETRY, DOTAN HOROVITS, Logz.io
 
Improve monitoring and observability for kubernetes with oss tools
Improve monitoring and observability for kubernetes with oss toolsImprove monitoring and observability for kubernetes with oss tools
Improve monitoring and observability for kubernetes with oss tools
 
Opentelemetry - From frontend to backend
Opentelemetry - From frontend to backendOpentelemetry - From frontend to backend
Opentelemetry - From frontend to backend
 

Similaire à La Duck Conf : "Observabilité"

Du business process modeling pour orchestrer des microservices julien cognet
Du business process modeling pour orchestrer des microservices   julien cognetDu business process modeling pour orchestrer des microservices   julien cognet
Du business process modeling pour orchestrer des microservices julien cognet
Julien Cognet
 
Afterwork Devops : vision et pratiques
Afterwork Devops : vision et pratiquesAfterwork Devops : vision et pratiques
Afterwork Devops : vision et pratiques
OCTO Technology Suisse
 

Similaire à La Duck Conf : "Observabilité" (20)

La Duck Conf - "Edge computing : le déploiement continu se fait une virée en ...
La Duck Conf - "Edge computing : le déploiement continu se fait une virée en ...La Duck Conf - "Edge computing : le déploiement continu se fait une virée en ...
La Duck Conf - "Edge computing : le déploiement continu se fait une virée en ...
 
L'histoire d'une infrastructure itérative
L'histoire d'une infrastructure itérativeL'histoire d'une infrastructure itérative
L'histoire d'une infrastructure itérative
 
La Duck Conf - "Mon DSI veut une MEP par jour, comment faire de l'architectur...
La Duck Conf - "Mon DSI veut une MEP par jour, comment faire de l'architectur...La Duck Conf - "Mon DSI veut une MEP par jour, comment faire de l'architectur...
La Duck Conf - "Mon DSI veut une MEP par jour, comment faire de l'architectur...
 
Matinale OCTO - "Blockchain : comment s'orienter dans la désorientation"
Matinale OCTO - "Blockchain : comment s'orienter dans la désorientation"Matinale OCTO - "Blockchain : comment s'orienter dans la désorientation"
Matinale OCTO - "Blockchain : comment s'orienter dans la désorientation"
 
La Duck Conf - "Quelle place pour le no code/low code dans les entreprises ?"
La Duck Conf - "Quelle place pour le no code/low code dans les entreprises ?"La Duck Conf - "Quelle place pour le no code/low code dans les entreprises ?"
La Duck Conf - "Quelle place pour le no code/low code dans les entreprises ?"
 
La Duck Conf - "Elle est ou ton appli ? Dans mon kube"
La Duck Conf - "Elle est ou ton appli ? Dans mon kube"La Duck Conf - "Elle est ou ton appli ? Dans mon kube"
La Duck Conf - "Elle est ou ton appli ? Dans mon kube"
 
La Duck Conf - Continuous Security : Secure a DevOps World!
La Duck Conf - Continuous Security : Secure a DevOps World!La Duck Conf - Continuous Security : Secure a DevOps World!
La Duck Conf - Continuous Security : Secure a DevOps World!
 
La Duck Conf - "Kube is the new mainframe"
La Duck Conf - "Kube is the new mainframe" La Duck Conf - "Kube is the new mainframe"
La Duck Conf - "Kube is the new mainframe"
 
Comptoir - Utiliser une solution d'edge Open Source pour améliorer l'inspecti...
Comptoir - Utiliser une solution d'edge Open Source pour améliorer l'inspecti...Comptoir - Utiliser une solution d'edge Open Source pour améliorer l'inspecti...
Comptoir - Utiliser une solution d'edge Open Source pour améliorer l'inspecti...
 
Présentation travail du stage
Présentation travail du stagePrésentation travail du stage
Présentation travail du stage
 
La Duck Conf - "Microservices & Servicemesh : le retour des frameworks d'entr...
La Duck Conf - "Microservices & Servicemesh : le retour des frameworks d'entr...La Duck Conf - "Microservices & Servicemesh : le retour des frameworks d'entr...
La Duck Conf - "Microservices & Servicemesh : le retour des frameworks d'entr...
 
Accelerate : la vitesse conditionne l'excellence
Accelerate : la vitesse conditionne l'excellence Accelerate : la vitesse conditionne l'excellence
Accelerate : la vitesse conditionne l'excellence
 
Du business process modeling pour orchestrer des microservices julien cognet
Du business process modeling pour orchestrer des microservices   julien cognetDu business process modeling pour orchestrer des microservices   julien cognet
Du business process modeling pour orchestrer des microservices julien cognet
 
Devops - vision et pratiques
Devops - vision et pratiquesDevops - vision et pratiques
Devops - vision et pratiques
 
Afterwork Devops : vision et pratiques
Afterwork Devops : vision et pratiquesAfterwork Devops : vision et pratiques
Afterwork Devops : vision et pratiques
 
LA DUCK CONF 2023 - La vie d'Ops au coeur d'un SI en évolution
LA DUCK CONF 2023 - La vie d'Ops au coeur d'un SI en évolutionLA DUCK CONF 2023 - La vie d'Ops au coeur d'un SI en évolution
LA DUCK CONF 2023 - La vie d'Ops au coeur d'un SI en évolution
 
OCTO Talks - State of the art Architecture dans les frontend web
OCTO Talks - State of the art Architecture dans les frontend webOCTO Talks - State of the art Architecture dans les frontend web
OCTO Talks - State of the art Architecture dans les frontend web
 
Restructurer un legacy comment et pourquoi
Restructurer un legacy comment et pourquoiRestructurer un legacy comment et pourquoi
Restructurer un legacy comment et pourquoi
 
La Duck Conf - Une équipe plateforme qui délivre
La Duck Conf - Une équipe plateforme qui délivreLa Duck Conf - Une équipe plateforme qui délivre
La Duck Conf - Une équipe plateforme qui délivre
 
#1 cloud-infra-talk- l ops-du-devops
#1 cloud-infra-talk- l ops-du-devops#1 cloud-infra-talk- l ops-du-devops
#1 cloud-infra-talk- l ops-du-devops
 

Plus de OCTO Technology

Plus de OCTO Technology (20)

Le Comptoir OCTO - Se conformer à la CSRD : un levier d'action insoupçonné
Le Comptoir OCTO - Se conformer à la CSRD : un levier d'action insoupçonnéLe Comptoir OCTO - Se conformer à la CSRD : un levier d'action insoupçonné
Le Comptoir OCTO - Se conformer à la CSRD : un levier d'action insoupçonné
 
Le Comptoir OCTO - MLOps : Les patterns MLOps dans le cloud
Le Comptoir OCTO - MLOps : Les patterns MLOps dans le cloudLe Comptoir OCTO - MLOps : Les patterns MLOps dans le cloud
Le Comptoir OCTO - MLOps : Les patterns MLOps dans le cloud
 
La Grosse Conf 2024 - Philippe Stepniewski -Atelier - Live coding d'une base ...
La Grosse Conf 2024 - Philippe Stepniewski -Atelier - Live coding d'une base ...La Grosse Conf 2024 - Philippe Stepniewski -Atelier - Live coding d'une base ...
La Grosse Conf 2024 - Philippe Stepniewski -Atelier - Live coding d'une base ...
 
La Grosse Conf 2024 - Philippe Prados - Atelier - RAG : au-delà de la démonst...
La Grosse Conf 2024 - Philippe Prados - Atelier - RAG : au-delà de la démonst...La Grosse Conf 2024 - Philippe Prados - Atelier - RAG : au-delà de la démonst...
La Grosse Conf 2024 - Philippe Prados - Atelier - RAG : au-delà de la démonst...
 
Le Comptoir OCTO - Maîtriser le RAG : connecter les modèles d’IA génératives ...
Le Comptoir OCTO - Maîtriser le RAG : connecter les modèles d’IA génératives ...Le Comptoir OCTO - Maîtriser le RAG : connecter les modèles d’IA génératives ...
Le Comptoir OCTO - Maîtriser le RAG : connecter les modèles d’IA génératives ...
 
OCTO Talks - Les IA s'invitent au chevet des développeurs
OCTO Talks - Les IA s'invitent au chevet des développeursOCTO Talks - Les IA s'invitent au chevet des développeurs
OCTO Talks - Les IA s'invitent au chevet des développeurs
 
OCTO Talks - Lancement du livre Culture Test
OCTO Talks - Lancement du livre Culture TestOCTO Talks - Lancement du livre Culture Test
OCTO Talks - Lancement du livre Culture Test
 
Le Comptoir OCTO - Green AI, comment éviter que votre votre potion magique d’...
Le Comptoir OCTO - Green AI, comment éviter que votre votre potion magique d’...Le Comptoir OCTO - Green AI, comment éviter que votre votre potion magique d’...
Le Comptoir OCTO - Green AI, comment éviter que votre votre potion magique d’...
 
Refcard GraphQL
Refcard GraphQLRefcard GraphQL
Refcard GraphQL
 
Comptoir OCTO ALD Automotive/Leaseplan
Comptoir OCTO ALD Automotive/LeaseplanComptoir OCTO ALD Automotive/Leaseplan
Comptoir OCTO ALD Automotive/Leaseplan
 
Le Comptoir OCTO - Comment optimiser les stocks en linéaire par la Data ?
Le Comptoir OCTO - Comment optimiser les stocks en linéaire par la Data ? Le Comptoir OCTO - Comment optimiser les stocks en linéaire par la Data ?
Le Comptoir OCTO - Comment optimiser les stocks en linéaire par la Data ?
 
Le Comptoir OCTO - Retour sur 5 ans de mise en oeuvre : Comment le RGPD a réi...
Le Comptoir OCTO - Retour sur 5 ans de mise en oeuvre : Comment le RGPD a réi...Le Comptoir OCTO - Retour sur 5 ans de mise en oeuvre : Comment le RGPD a réi...
Le Comptoir OCTO - Retour sur 5 ans de mise en oeuvre : Comment le RGPD a réi...
 
Le Comptoir OCTO - Affinez vos forecasts avec la planification distribuée et...
Le Comptoir OCTO -  Affinez vos forecasts avec la planification distribuée et...Le Comptoir OCTO -  Affinez vos forecasts avec la planification distribuée et...
Le Comptoir OCTO - Affinez vos forecasts avec la planification distribuée et...
 
Le Comptoir OCTO - La formation au cœur de la stratégie d’éco-conception
Le Comptoir OCTO - La formation au cœur de la stratégie d’éco-conceptionLe Comptoir OCTO - La formation au cœur de la stratégie d’éco-conception
Le Comptoir OCTO - La formation au cœur de la stratégie d’éco-conception
 
Le Comptoir OCTO - Une vision de plateforme sans leadership tech n’est qu’hal...
Le Comptoir OCTO - Une vision de plateforme sans leadership tech n’est qu’hal...Le Comptoir OCTO - Une vision de plateforme sans leadership tech n’est qu’hal...
Le Comptoir OCTO - Une vision de plateforme sans leadership tech n’est qu’hal...
 
Le Comptoir OCTO - L'avenir de la gestion du bilan carbone : les solutions E...
Le Comptoir OCTO - L'avenir de la gestion du bilan carbone :  les solutions E...Le Comptoir OCTO - L'avenir de la gestion du bilan carbone :  les solutions E...
Le Comptoir OCTO - L'avenir de la gestion du bilan carbone : les solutions E...
 
Le Comptoir OCTO - Continuous discovery et continuous delivery pour construir...
Le Comptoir OCTO - Continuous discovery et continuous delivery pour construir...Le Comptoir OCTO - Continuous discovery et continuous delivery pour construir...
Le Comptoir OCTO - Continuous discovery et continuous delivery pour construir...
 
RefCard Tests sur tous les fronts
RefCard Tests sur tous les frontsRefCard Tests sur tous les fronts
RefCard Tests sur tous les fronts
 
RefCard RESTful API Design
RefCard RESTful API DesignRefCard RESTful API Design
RefCard RESTful API Design
 
RefCard API Architecture Strategy
RefCard API Architecture StrategyRefCard API Architecture Strategy
RefCard API Architecture Strategy
 

La Duck Conf : "Observabilité"

  • 1. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 1
  • 2. #LaDuckConf by OCTO Technology © 2019 - All rights reserved#LaDuckConf by OCTO Technology © 2019 - All rights reserved OBSERVABILITE Qu’est ce qui en fait un attribut de nos architectures ?
  • 3. #LaDuckConf by OCTO Technology © 2019 - All rights reserved Le nombre de services que nous assemblons pour construire une application augmente. 3 NOTRE CONSTAT
  • 4. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 4 Qu’est ce qu’un service ? service client fournisseur
  • 5. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 5 Qu’est ce qu’un service ? service un contrat de service client fournisseur
  • 6. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 6 Qu’est ce qu’un service ? service un contrat de service des modalités d’exposition client fournisseur
  • 7. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 7 Qu’est ce qu’un service ? service un contrat de service des modalités d’exposition des prérequis client client fournisseur
  • 8. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 8 L’observabilité comme attribut de nos architectures
  • 9. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 9 L’observabilité comme attribut de nos architectures La croissance du nombre de services est un mouvement de fond
  • 10. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 10 L’observabilité comme attribut de nos architectures La croissance du nombre de services est un mouvement de fond 4 critères pour spécifier l’observabilité d’une architecture
  • 11. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 11 L’observabilité comme attribut de nos architectures La croissance du nombre de services est un mouvement de fond 4 critères pour spécifier l’observabilité d’une architecture 4 approches technos pour remplir ces critères
  • 12. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 12 Fabien Arcellier / Octo Technology ARCHITECTE TECHNIQUE Github : FabienArcellier
  • 13. #LaDuckConf by OCTO Technology © 2019 - All rights reserved Le nombre de services augmente 3 facteurs expliquent ça : ๏ le packaging moderne, ๏ les processus multi-canaux, ๏ le cloud 13
  • 14. #LaDuckConf by OCTO Technology © 2019 - All rights reserved Gestionnaires de dépendances Containerisation 14 Facteur 1 : le packaging moderne
  • 15. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 15 Facteur 1 : le packaging moderne C’est facile de créer un nouveau service autonome. La complexité du code reste sous contrôle. dev "
  • 16. #LaDuckConf by OCTO Technology © 2019 - All rights reserved Parcours consistant Parcours fluide 16 Facteur 2 : le processus multi-canaux
  • 17. #LaDuckConf by OCTO Technology © 2019 - All rights reserved C'est facile de créer un service pour mutualiser des comportements. Ca devient un produit autonome. 17 Facteur 2 : le processus multi-canaux métier "
  • 18. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 18 Facteur 3. Le cloud Un coût d’activation de ressources proche de zéro Des ressources virtuellement illimitées
  • 19. #LaDuckConf by OCTO Technology © 2019 - All rights reserved C'est facile de créer un service sur le cloud pour isoler un workload et le rendre plus résilient 19 Facteur 2 : le processus multi-canaux ops "
  • 20. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 20 dev métier ops Packaging moderne multi-canal Cloud Croissance des services assemblés pour construire une application métier
  • 21. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 21 Un sentiment de flou pour les acteurs du système d’information user user user user S S S S S SS S S metier metier support ops L’explosion du nombre de service complique la perception du système d’information Communiquer autour du système, modifier le système et corriger le système demande plus d’efforts et de concertations
  • 22. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 22
  • 23. #LaDuckConf by OCTO Technology © 2019 - All rights reserved L’observabilité est un attribut d’une architecture comme le sont la performance, l’usabilité, ou la sécurité. 23 L’observabilité est un attribut d’une architecture distribuée @copyconstruct
  • 24. #LaDuckConf by OCTO Technology © 2019 - All rights reserved L’observabilité est un attribut d’une architecture comme le sont la performance, l’usabilité, ou la sécurité 24 L’observabilité est un attribut d’une architecture distribuée @copyconstruct Observabilité auditabilité télémétrie (métrique) notification accessibilité
  • 25. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 4 approches technologiques pour adresser vos objectifs d’observabilité Log management Exception management Endpoints de télémétrie Tracing distribué D’autres approches que je ne pourrai aborder sont utiles telles que la mesure du uptime, la communication d’incidents dynamique (status page), le profiling applicatif, les health-checks, …
  • 26. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 26 Log management – Events analytic Y aller pour … Ne pas y aller pour … Nos recommandations Investiguer des logs en temps réel construire un outil expert d'intelligence opérationnelle alerter sur des événements stocker de logs pour du légal (sur plus de 3 semaines) construire un ETL for streaming stocker de l’ensemble des logs pour toute l’entreprise Limiter la rétention sur la plateforme d’analytique à quelques semaines maximum encoder vos logs applicatifs dans des documents semi- structurés (json-lines, …) Attention au backpressure dans l'infrastructure de shipping. En cas d'incident, le retard d'ingestion peut etre conséquent et compliquer l'investigation d'incident Faire de l'analyse forensic
  • 27. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 27 Log management diffusion-app syslog-ng aiguillage vod-exnihilo api.logmatic.io syslog-ng … logmatic.io
  • 28. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 28 Log management diffusion-app syslog-ng aiguillage vod-exnihilo api.logmatic.io syslog-ng … logmatic.io L’agent de shipping propose du backpressure sur fichiers
  • 29. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 29 Log management diffusion-app syslog-ng aiguillage vod-exnihilo api.logmatic.io syslog-ng … logmatic.io L’agent de shipping propose du back pressure sur fichiers capacités de parsing offertes par le broker, attention c’est fragile. Nous vous recommandons de préférer un encodage en amont (json, …)
  • 30. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 30 L’exception management Y aller pour … Ne pas y aller pour … Nos recommandations Monitorer du code applicatif fluidifier la collaboration dev/ops alerter intelligemment sur des exceptions construire un puits de logs Intégrer cette approche sur tous les environnements Tracker ses déploiements
  • 31. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 31 Exception management bff.ffea.com spa.ffea.com Iso.ffea.com sentry.io
  • 32. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 32 Exception management bff.ffea.com spa.ffea.com Iso.ffea.com sentry.io En cas d’exception, elle est transformée dans un format pivot par le sdk.
  • 33. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 33 Exception management bff.ffea.com spa.ffea.com Iso.ffea.com sentry.io En cas d’exception, elle est transformée dans un format pivot par le sdk. Les exceptions sont automatiquement agrégées par famille. Une issue est ouverte pour Cette exception
  • 34. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 34 Exception management bff.ffea.com spa.ffea.com Iso.ffea.com sentry.io En cas d’exception, elle est transformée dans un format pivot par le sdk. Les exceptions sont automatiquement agrégées par famille. Une issue est ouverte pour cette exception Si c’est une nouvelle famille d’exception, l’équipe de développement est notifiée
  • 35. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 35 Endpoints de télémétrie 35 Y aller pour … Ne pas y aller pour … Nos recommandations monitorer des ressources d’infrastructure monitorer des métriques d’activités exposer des métriques avec des cardinalités illimitées (url, email, …) collecter des infos non numériques calculer des métriques lors de la requête Implémenter des métriques d’activité pour faciliter la discussion entre métiers, développeurs et ops Différencier les environnements dans vos labels (par exemple avec la branche git) Proposer plusieurs consoles selon l’usage, une seule console pour tous est utopique monitorer des middlewares
  • 36. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 36 account-entries host jobs compensation techno : cassandra techno : java + springboot rhel techno : activemq tsdb techno : prometheus console techno : grafana scraper techno : prometheus exporter exporter agent techno : telegraf alerting exporter techno : alertmanager
  • 37. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 37 Tracing distribué 3737 Y aller pour … Ne pas y aller pour … Émergence d’un standard d’API avec Open Tracing à suivre Nos recommandations instrumenter des middlewares diagnostiquer des problèmes de performance sur une requête investiguer des modes de défaillance cross-service instrumenter des microservices au niveau runtime
  • 38. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 38 Quels outils puis je rencontrer ? Log management Endpoints de telemetryException management Tracing distribué Les outils peuvent varier. Voici des outils émergents que vous pouvez rencontrer.
  • 39. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 39 Take-away L’observabilité est un attribut d’architecture nécessaire sur des architectures distribuées La construction d'un service observable s'inscrit dans une démarche d'amélioration continue Chercher le meilleur outil pour de l'observabilité, c'est comme chercher la meilleure voiture pour labourer un champ et faire du circuit
  • 40. #LaDuckConf by OCTO Technology © 2019 - All rights reserved 40 Images https://pixabay.com/en/virus-microbiology-cell-infection-163471/ https://pixabay.com/en/container-container-port-port-cargo-3859711/ https://pixabay.com/fr/r%C3%A9seau-serveur-syst%C3%A8me-2402637/ https://medium.com/@copyconstruct/monitoring-in-the-time-of-cloud- native-c87c7a5bfa3e https://pixabay.com/fr/g%C3%A9n%C3%A9rateur-moteur-moteur- %C3%A9lectrique-1340210/

Notes de l'éditeur

  1. Bonjour, Je suis devant vous aujourd’hui pour vous parler d’observabilité. Ce sujet fait couler beaucoup d’encre depuis 2 ans. Emergence d’initiatives, développement d’outils. Pourquoi cette question est intéressante ? Illustrer avec les projets
  2. A l’origine de cette réflexion, il y’a un constat. Au cours des dernières années, le nombre de services que nous assemblons pour construire une application augmente. Une application regroupe des moyens d’interactions exposés à un utilisateur, humain par l’intermédiaire d’IHM ou machine par l’intermédiaire d’API. Nous pensons que notre industrie suit une voie similaire à ce qu’a suivi l’industrie. Retour dans le passé. Dans les années 1890, le moteur électrique remplace progressivement le moteur à vapeur dans l’industrie. Cette révolution silencieuse conduit d’un modèle où il y’avait 10 personnes pour gérer un moteur au modèle aujourd’hui où l’on compte plusieurs centaines de moteurs pour un technicien de maintenance.
  3. Qu’est ce qu’un service ? Le concept de service en architecture permet de nommer de manière unique une relation client fournisseur, donc de la décrire.
  4. un service regroupe plusieurs unités d’exécution qui expose des capacités par l’intermédiaire d’un contrat de service
  5. Des modalités d’exposition : Le contrat de service définit au mieux les modalités d’exposition tel que les protocoles d’échanges, les ressources et opérations exposés, ainsi que leurs attributs non fonctionnels comme la performance, résilience, … que respecte le service
  6. Des prérequis client : Le contrat de service définit un ensemble de prérequis que le client doit fournir pour respecter la qualité défini dans le contrat de service
  7. Je m’appelle Fabien Arcellier. Je fais partie de la tribu ARCHI chez octo. Notre rôle en tant que tribu est de travailler avec des équipes pour que leurs applications tirent partie et enrichissent votre système d’information. Pour cela, nous accompagnons métiers, développeurs et ops pour penser des architectures collaboratives et évolutives qui s’intègrent dans des cycles itératifs de plus en plus court. C’est pourquoi je me tiens devant vous pour parler d’observabilité.
  8. Nous vous proposons une grille de lecture pour expliquer pourquoi l’augmentation du nombre de service est un mouvement de fond
  9. Clarifier le fait qu’un développeur puisse initier et amener des services plus rapidement en production. standardisation des unités de déploiement scaffolding natif avec une intégration CI image autoportante et transférable cross-runtime building-block sur étagère pour le développement 100% des projets de delivery chez octo sont faits sur un runtime qui offre un gestionnaire de dépendances Docker est présent dans plus de 60% de nos projets image autoportante et transférable cross-runtime
  10. Parcours consistant Any-to-Any Login unique Référentiels Parcours fluide Processus interruptible Switch cross-canal
  11. Un cout d’activation de zéro libre-service à la demande activation instantanée qui autorise des runtimes transients Des ressources virtuellement illimitée Management avancé d’accès et d’identité Try-and-learn
  12. Avec ces 3 facteurs, nous constatons que 3 populations convergent vers une volonté de construire des services autonomes
  13. Titre à revoir Peut être expliquer ce que j’entend par flexible et fragile Le périmètre de chaque service est identifiable. La collaboration d’unité d’exécution autonome complique l’investigation lors des défaillances et dilue les responsabilités aux interfaces. La relation entre usage, fonction et ressources s’étiole à cause des mécanismes de scalabilité Quelques modes de défaillance propres aux architectures distribuées interfaces permissives défaillance invisible défaillances réseaux régime transitoire …. Un système collaboratif est capable d’évoluer et d’offrir des mécanismes de résilience grâce à l’autonomie des services qu’il offre. L’impact de la modification d’un service mutualisé est difficile à mesurer. La collaboration d’unité d’exécution autonome complique l’investigation en cas d’incidents
  14. auditabilité : capacités à lire l’histoire d’un service, exemple les logs d’accès permettent d’auditer l’usage d’un endpoint web télémétrie : capacités à mesurer l’usage d’un service, exemple les IO Read permettent de mesurer le volume chargé du disque vers la mémoire trace : capacités à retracer les interactions entre composants dans le temps sur une opération dans un système fermé l’absence de cartographie d’exécution bout en bout complique la navigation entre les dépendances L’absence de time-machine élaborée pour explorer les métriques avec leur contexte complique l’investigation dans le passé l’absence de logs centralisés complique le drill down au niveau d’un service
  15. Le log management est une démarche pour capturer des événements du SI, souvent en provenance des logs pour pouvoir visualiser une activité, analyser des tendances, voir prédire des comportements anormaux. Exemple
  16. Ajouter une phrase pour l’exception management
  17. Les endpoints de télémétrie offre un instantannée de l’état d’un système sous la forme de compteur ou de gauge. Ce modèle d’exposition offre l’avantage de découpler la production de métrique et leurs historisations. Un instantannée se présente sous la forme d’une page avec une liste de métriques.
  18. L’observabilité n’est pas de quantifiable