Observabilité
L'observabilité des systèmes est un enjeu majeur de l'informatique des temps modernes. Cette discipline permet de comprendre le comportement d'un système en production et de pouvoir réagir rapidement en cas de problème. L'observabilité couvre plusieurs pratiques : Logging, métriques et tracing. Cette formation vous permettra de comprendre les enjeux de l'observabilité et de mettre en place les outils nécessaires pour avoir une bonne visibilité sur vos systèmes. Nous illustrerons les concepts du cours dans des infrastructures Cloud (VMs) mais aussi dans une infrastructure Kubernetes.
- +ans d'expérience pour tous nos formateurs
- création de ce nouveau cours
- jours
À qui s’adresse cette formation Observabilité ?
Description de la formation Observabilité
Méthodes pédagogiques
- La formation est composée de 70% de travaux pratiques (Mises en situation, débats, exercices).
- Une évaluation quotidienne de l’acquisition des connaissances de la veille est effectuée.
- Une synthèse est proposée en fin de formation.
- Un support de cours sera remis à chaque participant comprenant les slides de la théorie, les exercices et travaux pratiques ainsi que leurs corrigés
- Une évaluation à chaud sera proposée au stagiaire à la fin du cours.
- Une feuille d’émargement par demi-journée de présence est fournie en fin de formation ainsi qu’une attestation de fin de formation si le stagiaire a bien assisté à la totalité de la session.
Présentation
L'observabilité des systèmes est un enjeu majeur de l'informatique des temps modernes. Cette discipline permet de comprendre le comportement d'un système en production et de pouvoir réagir rapidement en cas de problème. L'observabilité couvre plusieurs pratiques : Logging, métriques et tracing. Cette formation vous permettra de comprendre les enjeux de l'observabilité et de mettre en place les outils nécessaires pour avoir une bonne visibilité sur vos systèmes. Nous illustrerons les concepts du cours dans des infrastructures Cloud (VMs) mais aussi dans une infrastructure Kubernetes.
Objectifs
- Les trois piliers de l'observabilité : Logs, métriques et traces
- Observer des applications (conteneurisées ou pas)
- Observer les infrastructures
- Appréhender les architectures et les outils de collecte
- Comprendre l'écosystème logiciel de l'observabilité
- L'offre Elasticsearch : Filebeat, Metricbeat, Logstash, Elasticsearch, Kibana
- L'opensource n'est pas en reste : Fluentd, Prometheus, Exporters, Grafana, Opentelemetry, Jaeger, etc.
- Utilisation de dashboards
- Déployer une solution d'observabilité dans Kubernetes
Audience
- Développeurs
- Architectes
- Administrateurs système (ops)
- Chef de projet technique
Formateur
Le formateur est un expert du domaine qui intervient sur le sujet depuis plusieurs années en formation mais aussi en conseil sur des projets d’envergures où DevOps, Docker et Agilité sont le quotidien. Doté d’une grande qualité d’écoute, sa pédagogie et sa compétence technique vous permettront d’acquérir la fibre Docker.
Prérequis
- Bonne connaissance de Linux
- Avoir une expérience avec le déploiement d'application dans Kubernetes
Programme
Présentation de l'observabilité
- Les trois piliers de l'observabilité : Logs, métriques et traces
- Générer efficacement des logs applicatifs
- Les métriques techniques vs les métriques applicatives (KPI)
- Les traces : le petit nouveau de l'observabilité Exercices
- analyse des architectures de logs et des différents fichiers de configuration : syslog, log4j, kafka, ...
- Démonstration du tracing
- Analyse des métriques interessantes en fonction des systèmes
Gestion des logs
- {Gérer des logs applicatifs en fonction des langages de programmation=Log4j, Logback, etc.}
- Exploitation des logs de logiciels tiers (Kafka, Postgresql, etc.)
- Transformer et structurer les logs pour une meilleure exploitabilité
- Les différents outils de collecte : Filebeat, Fluentd, Logstash, etc.
- Les différents outils de stockage : Elasticsearch, Splunk, etc.
- Les différents outils d'exploitation : Kibana, Grafana, etc. Exercices
- Collecte, transformation, stockage et exploitation des logs d'une application Java
- Collecte, stockage et exploitation des logs de Nginx (ou Apache)
- Collecte, stockage et exploitation des logs de Kafka
- Collecte, stockage et exploitation des logs de Postgresql
Gestion des métriques
- Qu'est-ce qu'une métrique ?
- Génération des métriques ?: Pas de standard
- JMX et Jolokia pour les applications basée sur la JVM (Springboot, Kafka, etc.)
- Les métriques d'un système d'exploitation (CPU, mémoire, IO, etc.)
- Les métriques de Kafka / Postgresql / Nginx / Apache / etc.
- Stocker les métriques: Prometheus ou Elasticsearch ?
- Exploiter les métriques avec Grafana ou Kibana Exercices
- Collecte de métriques d'une application Java, Nginx, Kafka et postgresql, stockage dans Prometheus, visualisation dans Grafana
- Utilisation de la suite Metricbeat / Elasticsearch / Kibana pour exploiter les métriques de plusieurs systèmes (OS / Application / Kafka / Postgresql / etc.)
Gestion des Traces
- Qu'est-ce qu'une trace ? Différence avec les logs
- Une mécanisme de débuggage distribué
- Les standards de traces : OpenTracing, OpenTelemetry, Jaeger, Zipkin, etc.
- Les outils de collecte et de stockage : Jaeger, Zipkin
- Exploiter et les traces : Jaeger, Grafana
- Couplage des traces et les logs Exercices
- Mise en place d'un système de traces avec Opentelemetry, jaeger et Grafana pour une application microservice Angular et Springboot
- Couplage des traces et des logs
Observabilité dans Kubernetes
- Architecture des logs et métriques Kubernetes
- Collecter les logs des nodes et des pods
- Collecter les métriques des nodes et des pods
- Traçabilité de vos applications dans Kubernetes Exercices
- Collecte des logs d'un Pod, stockage dans Elasticsearch, exploitation dans Kibana
- Automatisation du scrapping des pods par Prometheus
- Monitoring des events de Kubernetes
- Traçabilité d'une application dans Kubernetes
Tarif
2400 € HT