Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Merci Keptn Obvious! SLOs observables avec Prom...

Merci Keptn Obvious! SLOs observables avec Prometheus et Keptn

Les objectifs de niveau de service (a.k.a Service Level Objectives - SLO) sont un élément clé des pratiques modernes d'ingénierie logicielle. Ils permettent de quantifier la qualité du service fourni aux utilisateurs finaux, et leur maintien devient donc important pour les approches DevOps modernes avec une livraison progressive. Dans cette démo, nous montrerons comment utiliser Keptn pour tirer parti de votre surveillance existante avec Prometheus afin que vous puissiez visualiser les SLO pour les principales parties prenantes et automatiser leur action.

Qu'est-ce que Keptn? En un mot, il s'agit d'un plan de contrôle piloté par les événements pour l'orchestration des applications natives du cloud. Il permet de nombreux cas d'utilisation, y compris, mais sans s'y limiter, les opérations basées sur les SLO, l'observabilité, les alertes et la correction. C'est un projet sandbox au CNCF, et il a demandé le statut d'incubateur.

Oleg Nenashev

April 20, 2020
Tweet

Video

More Decks by Oleg Nenashev

Other Decks in Technology

Transcript

  1. Si vous restez avec nous, … • Le principe de

    base des SRE: SLI/SLO • L’importance de l’observabilité • Introduction à Keptn • Demo
  2. Pourquoi avons nous besoin de SRE? • Developers were focused

    on innovation and agility • Operations on stability • SRE has been created to make sure that we are building reliable services and avoiding conflict between Developers and Operations • Les développeurs sont généralement focalisé sur l’innovation et l’agilité • Vos Ops se focalisent sur la disponibilité et la stabilité • SRE a pour objectifs d'accroître la fiabilité de nos système et d’éviter les conflits entre Devs et les Ops
  3. SLI Good Events Valid Events 100 % SLI Service Level

    Indicator Un indicateur permettant de comprendre l’état de votre système ou de vos utilisateurs Example: HTTP Request Latency # of HTTP Request with <= 5 sec response time Total # of Requests 100 %
  4. SLO SLO Service Level Objective 100 % 0 % 95

    Example: Request latency will be <= 5 secs for 95% of Requests un objectif associé à votre indicateur 100 % 0 % SLO # of HTTP Request with <= 5 sec response time
  5. SLI/SLO vous aide à définir des objectifs • Product owners

    defined at a very early stages the objectives for each services • SLI/SLO helps to : • Availability • performance • more • SLI/SLO helps to detect issues before our end-users • Your objectives needs to be achievable because your error budget will be based on it. • Product owners déterminent les objectives pour chaque étape de la phase de construction • SLI/SLO facilite la validation de : ◦ Disponibilité ◦ Performance ◦ …etc • SLI/SLO vous aide à détecter des anomalies avant vos utilisateurs • Vos objectifs doivent être atteignables car vos “errors budget” sont basés dessus. Production performance disponibilité
  6. Prometheus est un standard •CouchDb •Mysql •Oracle •PostgreSQL •MongoDB •…

    Base de données •Netgear •Windows •IBM Z •Nvidia •….etc Hardware •MQ •Kafka •MQTT •RabbitMQ •…etc Message •Tivoli •Hadoop •NetApp •ScaleIO Stockage •Jira •Jenkins •Github •Fluentd •Nagios •…etc Autre
  7. Opérations à grande échelle • Configurations complexes • la répétition

    • Déviations de Configurations La maintenance est couteuse Spaghetti à l'automatisation
  8. Keptn Livraison et opérations basées sur les données pour vos

    applications cloud natives https://keptn.sh
  9. Keptn • Un project de la CNCF • Control plane,

    admin frontend/CLI • Observability, dashboards & alerting • SLO-driven multistage delivery • Operations & remediation
  10. Keptn: Automatisation SLO-Driven pour DevOps & SREs Vous (Dev/Ops/SRE) Ajouter

    votre configuration Choisir un Cas d’utilisation SLO-Quality Gates Progressive Delivery Auto- Remediation Declaration GitOps SLOs Standards shipyard SLI/SLO runbook SRE Automation workload Monitoring Delivery Reliability Remediation Automatise la configuration et offre des solutions self-service pour Basé sur un processus event-driven permettant Connecter vos Outils
  11. Déclenche une séquence d’automatisation Orchestration, monitoring , deployment, test ,

    evaluation des SLO & remediation Utiliser vos outils sans effort de configuration ou d’intégration
  12. Is it observable • Si vous cherchez du contenu educative

    sur l’Observabilité, regarder : Is It Observable
  13. Fin

  14. Beaucoup de travail manuel ~90% of test reruns 9:1 ratio

    script maintenance vs creation only 10% projects performance tested Test Result Analysis Monitoring Configuration ~ 80% time spent in manual ... Scripts Creation SLO Report Generation 15-20 tests / year < 5 Apps „We are limited in scaling SRE due to manual expert tasks!‘“ Roman Ferstl Managing Director
  15. DevOps & SREs – la fiabilté et l’efficacité DevOps: Automate

    Speed of Delivery SRE: Automate Resiliancy of Operations Deployment Frequency How often an organization successfully releases to production Lead Time for Changes The amount of time it takes a commit to get into production Change Failure Rate The percentage of deployments causing a failure in production Time to Restore Service How long it takes an organization to recover from a failure in production
  16. Learning from Google‘s SRE Practices • Service Level Indicators (SLIs)

    ◦ Definition: Measurable Metrics as the base for evaluation ◦ Example: Error Rate of Login Requests • Service Level Objectives (SLOs) ◦ Definition: Binding targets for Service Level Indicators ◦ Example: Login Error Rate must be less than 2% over a 30 day period • Service Level Agreements (SLAs) ◦ Definition: Business Agreement between consumer and provider typically based on SLO ◦ Example: Logins must be reliable & fast (Error Rate, Response Time, Throughput) 99% within a 30 day window • Google Cloud YouTube Video ◦ SLIs, SLOs, SLAs, oh my! (class SRE implements DevOps): https://www.youtube.com/watch?v=tEylFyxbDLE SLIs drive SLOs which inform SLAs
  17. A emporter • Keptn - Livraison et opérations basées sur

    les données pour vos apps cloud natives • Keptn n'est pas un outil CI/CD. Il fait passer l'observabilité à l'étape suivante • Keptn ❤ Prometheus • Keptn fait l’automatisation pour vos apps
  18. Références • Website: keptn.sh • Guide de démarrage: keptn.sh/docs/quickstart •

    Tutoriels: tutorials.keptn.sh • Keptn en Francais: https://www.youtube.com/playlist?list=PL6i801Rj t9DbMZMaRxkbXS7AC5nQy5ipz
  19. Plus de tutoriels! • Prometheus • Dynatrace • ArgoCD •

    Jenkins • Bientôt: Datadog tutorials.keptn.sh
  20. Notre exemple • Dynatrace est une entreprise de Software Intelligence

    • Nous avons des services à grande échelle. SaaS aussi • Nous avons adopté l'ingénierie de la fiabilité du site (SRE) • L'automatisation partout
  21. Our problems • Échelle du système • Des milliers de

    métriques (1000+) • Complex Service Level Indicators (SLIs) • Complex decision making logic • Complex Integration Testing
  22. Contributing to Keptn • We are looking for contributors! •

    keptn.sh/community/contributing ◦ K8s, Golang, Javascript, Documentation, etc. ◦ SRE and Operations • We participate in Google Summer of Code • Slack: keptn.sh/community/#slack
  23. Join us online • Zoom => CNCF Community Portal •

    community.cncf.io/keptn-community • Powered by Bevy • Videos go to YouTube
  24. Prometheus devient un standard • CouchDb • Mysql • Oracle

    • PostgreSQL • MongoDB • … Base de données • Netgear • Windows • IBM Z • Nvidia • ….etc Hardware • MQ • Kafka • MQTT • RabbitMQ • …etc Message • Tivoli • Hadoop • NetApp • ScaleIO Stockage • Jira • Jenkins • Github • Fluentd • Nagios • …etc Autre
  25. Why do we need SRE? Develop er Operatio n •

    Developers were focused on innovation and agility • Operations on stability • SRE has been created to make sure that we are building reliable services and avoiding conflict between Developers and Operations • Les développeurs sont généralement focalisé sur l’innovation et l’agilité • Vos Ops se focalisent sur la disponibilité et la stabilité • SRE a pour objectifs d'accroître la fiabilité de nos système et d’éviter les conflits entre Devs et les Ops
  26. SLI/SLO vous aide à définir des objectifs Operation • Product

    owners defined at a very early stages the objectives for each services • SLI/SLO helps to : • Availability • performance • more • SLI/SLO helps to detect issues before our end-users • Your objectives needs to be achievable because your error budget will be based on it. Production spee d availability • Product owners déterminent les objectives pour chaque étape de la phase de construction • SLI/SLO facilitate la validation de : ◦ Disponibilité ◦ Performance ◦ …etc • SLI/SLO vous aide à détecter des anomalies avant vos utilisateurs • Vos objectifs doivent être atteignables car vos “errors budget” sont basés dessus.
  27. Confidential 83 SLI Good Events Valid Events 100 % SLI

    Service Level Indicator Un indicateur permettant de comprendre l’état de votre système ou de vos utilisateurs Example: HTTP Request Latency # of HTTP Request with <= 5 sec response time Total # of Requests 100 %
  28. Confidential 84 SLO SLO Service Level Objective 100 % 0

    % 95 Example: Request latency will be <= 5 secs for 95% of Requests un objectif associé à votre indicateur 100 % 0 % SLO # of HTTP Request with <= 5 sec response time
  29. We – DevOps & SREs – need to delivery faster

    and better!! DevOps: Automate Speed of Delivery SRE: Automate Resiliancy of Operations Deployment Frequency How often an organization successfully releases to production Lead Time for Changes The amount of time it takes a commit to get into production Change Failure Rate The percentage of deployments causing a failure in production Time to Restore Service How long it takes an organization to recover from a failure in production
  30. Beaucoup de travail manuel ~90% of test reruns 9:1 ratio

    script maintenance vs creation only 10% projects performance tested Test Result Analysis Monitoring Configuration ~ 80% time spent in manual ... Scripts Creation SLO Report Generation 15-20 tests / year < 5 Apps „We are limited in scaling SRE due to manual expert tasks!‘“ Roman Ferstl Managing Director
  31. Opérations à grande échelle Spaghetti à l'automatisation • Configurations complexes

    • la répétition • Déviations de Configurations La maintenance est cher
  32. Keptn Livraison et opérations basées sur les données pour vos

    applications cloud natives https://keptn.sh
  33. Keptn • Un project de la CNCF • Control plane,

    admin frontend/CLI • Observability, dashboards & alerting • SLO-driven multistage delivery • Operations & remediation
  34. Keptn: SLO-Driven Automation for DevOps & SREs You (Dev/Ops/SRE) bring

    your configuration pick your use case SLO-Quality Gates Progressive Delivery Auto- Remediation Declaration GitOps SLOs Standards shipyard SLI/SLO runbook SRE Automation workload Monitoring Delivery Reliability Remediation automates configuration and provides self-service for through event-driven process orchestration based on connect your tools
  35. triggers an automation sequence orchestrates monitoring config, deployment, test execution,

    SLO evaluation & remediation Leverage your existing tooling without writing the automation & integration
  36. Learning from Google‘s SRE Practices • Service Level Indicators (SLIs)

    ◦ Definition: Measurable Metrics as the base for evaluation ◦ Example: Error Rate of Login Requests • Service Level Objectives (SLOs) ◦ Definition: Binding targets for Service Level Indicators ◦ Example: Login Error Rate must be less than 2% over a 30 day period • Service Level Agreements (SLAs) ◦ Definition: Business Agreement between consumer and provider typically based on SLO ◦ Example: Logins must be reliable & fast (Error Rate, Response Time, Throughput) 99% within a 30 day window • Google Cloud YouTube Video ◦ SLIs, SLOs, SLAs, oh my! (class SRE implements DevOps): https://www.youtube.com/watch?v=tEylFyxbDLE SLIs drive SLOs which inform SLAs
  37. A emporter • Keptn - Livraison et opérations basées sur

    les données pour vos apps cloud natives • Keptn n'est pas un outil CI/CD. Il fait passer l'observabilité à l'étape suivante • Keptn ❤ Prometheus • Keptn fait l’automatisation pour vos apps
  38. Références • Website: keptn.sh • Guide de démarrage: keptn.sh/docs/quickstart •

    Tutoriels: tutorials.keptn.sh • Keptn en Francais: https://www.youtube.com/playlist?list=PL6i801Rj t9DbMZMaRxkbXS7AC5nQy5ipz
  39. Plus de tutoriels! • Prometheus • Dynatrace • ArgoCD •

    Jenkins • Bientôt: Datadog tutorials.keptn.sh
  40. Notre exemple • Dynatrace est une entreprise de Software Intelligence

    • Nous avons des services à grande échelle. SaaS aussi • Nous avons adopté l'ingénierie de la fiabilité du site (SRE) • L'automatisation partout
  41. Our problems • Échelle du système • Des milliers de

    métriques (1000+) • Complex Service Level Indicators (SLIs) • Complex decision making logic • Complex Integration Testing
  42. Contributing to Keptn • We are looking for contributors! •

    keptn.sh/community/contributing ◦ K8s, Golang, Javascript, Documentation, etc. ◦ SRE and Operations • We participate in Google Summer of Code • Slack: keptn.sh/community/#slack
  43. Join us online • Zoom => CNCF Community Portal •

    community.cncf.io/keptn-community • Powered by Bevy • Videos go to YouTube