SlideShare uma empresa Scribd logo
1 de 23
Baixar para ler offline
Embracing service-level-objectives
of your microservices in your Cl/CD
Rob Jahn
Technical Partner Manager
Dynatrace
https://www.linkedin.com/in/robjahn/
https://events.nebulaworks.com/lightningtalk-april
Unfortunately, a robust CI/CD pipeline with well-defined tests does not guarantee a failure-safe
application in production. That is since many microservices are interwoven and dependent on each
other. Some of them have to handle hundreds of thousands of requests, while others are merely for
batch processing of data. Therefore, it is crucial to define the objectives and quality metrics of
individual services in terms of service level objectives as code.
• How service level indicators and service level objectives can help you set up automated quality gates in
a Cl/CD system to prevent bad code changes to ever reach production
• How quality criteria can be used to configure your alerts in monitoring solutions to be alerted on any
issues in your environments
• Present the open-source framework Keptn to provide quality gates for your microservice applications
running on your Kubernetes cluster.
More information about Keptn can be found on www.keptn.sh or on https://github.com/keptn
Embracing service-level-objectives of your microservices in your Cl/CD
Agenda
• Motivation / Inspiration
• Use Cases we provide in Keptn
• How it works
• How you can leverage & contribute
Embracing service-level-objectives of your microservices in your Cl/CD
API Testing Integration Testing Application Testing
Test a Component Test a System Test Real World
Continuous Testing Embedded in CI/CD Pipelines
Shift Left Performance
Continuous performance testing strategy
Challenge: Lengthy manual analysis and approval
Build Deploy to
„Test“
Run Test
In „Test“
Manual Approval
Promote to
„Staging“
Deploy to
„Test“
Functional: Test Result Trend Not Enough Performance: Manual Comparison Is Slow Monitoring: Too much unstructed data
Which build is better Which data comes from my testIs this a real problem
~30-60min
Solution - Automate the analysis
Error rate
Throughput + Response Time versus
objectives
Resources check
Test Failure
• An SLI is a service level indicator—a carefully defined
quantitative measure of some aspect of the level of
service that is provided.
• An SLO is a service level objective: a target value or
range of values for a service level that is measured by
an SLI. A natural structure for SLOs is thus SLI ≤
target, or lower bound ≤ SLI ≤ upper bound.
Inspiration #1 - Google SRE Handbook – Free online!
https://landing.google.com/sre/books/
Concept: Automated performance analysis by scoring
Spec files define:
• Service Level Indicators (SLI)
• Service Level Objectives (SLO)
Pass / Fail / Warning
=
Read the Spec
Retrieve
data
Calculate
Score
Datasource
1
2
3
4
Inspiration #2 – Mark Tomlinson
1 Create JIRA Ticket for Performance Feedback
Next Continuous Test Cycle picks up Request
Performance Feedback back on JIRA Ticket
2
3
1 2
3
Inspiration #3 – Thomas Steinmaurer
“Performance Signature”
for Build Nov 16
“Performance Signature”
for Build Nov 17
“Performance Signature”
for every Build
“Multiple Metrics”
compared to prev
Timeframe
Simple Regression Detection
per Metric
Define application delivery and
operations processes
declaratively
Use predefined CloudEvents to
separate the process from the
tools
Easy way to integrate and
switch between different tools
Blue/Green Deployments
Automated Quality Gates
Standardized communication protocol Keptn’s uniform
www.keptn.sh
an event-based control plane for continuous delivery and
automated operations for cloud-native applications
Use Case #1 – Automate SLO Evaluation
1 $ keptn start-evaluation timeframe service sli slo
Keptn pulls data from different data sources and Evaluates SLIs
Keptn delivers values and Score based on SLOs
2
3
1 2
3
7/8
(87.5%)
4/8
(50%)
Use Case #2 – Performance as a Self-Service
1 $ keptn deployment-complete my-service
Keptn
Keptn Delivers Score based on SLO
2
3
1 2
and Evaluates SLIsRuns Tests
3
7/8
(87.5%)
4/8
(50%)
Demo
Automate SLO Evaluation
Build and push
image
Deploy
Code
SLO Quality
Gate
Performance
Test
Automate SLO Evaluation
1 2 3 4
Pass or fail
pipeline
5
Deploy
Code
1
If PASS, then
deploy to
production
6
Production Environment
Request SLO Evaluation &
View in Keptn UI
SLO Quality
Gate
2
Rollback
yes/no??
3
Developer Checks in
code & SLO / SLI files
How it works
Keptn underneath the hood
SLIs & SLOs detailed example
Overall Failure Rate
Source: Dynatrace
Query: builtin:service.errors.total
Response Time LOGIN Tx
Source: Dynatrace
Query: calc:service.responsetime:filter(tx, LOGIN)
# DB Calls LOGIN Tx
Source: Dynatrace
Query: calc:service.dbcalls:filter(tx, LOGIN)
<= 5%
<= 2%
<=150ms & <=+10%
<= 400ms
<= +0%
<= +1
Build 1
0%
80ms
100ms
SLO: Overall Score Goal 90% 75%
Response Time 95th Perc
Source: Dynatrace
Query: builtin:service.responsetime(p95)
<=100ms
<= 250ms
SLOSLIs (Service Level Indicators) warn
pass
3
100%
Build 2
4%
120ms
90ms
3
75%
Build 3
1%
90ms
120ms
6
62.5%
Build 4
0%
95ms
95ms
3
100%
Build 1 Build 2 Build 3 Build 4
• YAML based definition of SLIs
• SLI Provider specific queries, e.g: Response Time
Keptn Quality Gate: SLIs & SLOs
Quality Gates
...
Dynatrace Prometheus Neoload
Scores SLIs
Queries SLI
Providers with
SLI Definitions &
Timeframe
• YAML based definition of SLOs:
• List of objectives with fixed or relative pass & warn criteria
indicators:
error_rate: "builtin:service.errors.total.count:merge(0):avg"
count_dbcalls: "calc:service.toptestdbcalls:merge(0):sum"
jvm_memory: "builtin:tech.jvm.memory.pool.committed:merge(0):sum"
objective:
- sli: error_rate
- sli: jvm_memory
- sli: count_dbcalls
pass:
- criteria:
- "=+2%" # We allow a 2% increase in DB Calls to previous runs
warning:
- criteria:
- "<=10" # We expect no more than 10 DB Calls per TX
total_score:
pass: "90%"
warning: "75%"
0.5 1.0 0.0 info
7/8
(87.5%)
4/8
(50%)
$ keptn start-evaluation timeframe service sli slo
5 DB Calls 360MB 4.3% 123SLI Value:
SLI Score:
Total Score
2
3
4
Tool X
1
SLI / SLO Validation Example
SLI #1
SLO
Scoring
Objective
Response Time (ms)
<500: 0.5
<200: 1
<210: 1
<204: 2
# SQLs / min
Value: 400
Score: 0.5
Value: 0% 2
2.5/3 (83%)
>190: 1
Criteria per SLI Weighted
Grading
SLI Values
Total
spec_version: "1.0"
comparison:
compare_with: "single_result”
aggregate_function: avg
objectives:
- sli: response_time_95
pass:
- criteria
- "<200"
warning:
- criteria
- "<500"
- sli: sql_statements
weight: 2
pass:
- criteria:
- "<+2%"
warning:
- criteria:
- "<+5%"
- ">-5%"
total_score:
pass: "90%"
warning: "75%"
SLI #2
SLO
500
200
Strategy
400ms
202/min
500
200
Base: 200
204 (+2%)
190 (-5%)
210 (+5%)
>500: 0
<190: 0
>210: 0
Quality Gates
Demo
Performance as a self-service
As an engineer I can request performance
feedback on demand without having any
dependency to other teams or environments
Allow everyone to get performance
feedback from their latest builds
and production in an easy way
Performance Center of Excellence
Teams enable Self-Service to
Engineers (more scale)
Elevate every engineer to
become a Performance Expert
(right tools and guard rails)
Scale through automation, best
practices and standards
What is performance as a self-service?
Notification
Service
Run test
Performance as a self-service with Jira & Keptn
Performance Feedback
back on JIRA Ticket for
team review
1
2
7
From a JIRA story, invoke Keptn
via automation call (REST)
Dynatrace
service
Jmeter
Service
Jira
Service
SLO Validation
Service
Evaluate
targets
3
Push test context
to Dynatrace
4
Send result
notifications
5
Add Jira issue
with test results
6
Thank you
https://keptn.sh https://tutorials.keptn.sh Build a new SLI provider
Rob Jahn
Technical Partner Manager Dynatrace
https://www.linkedin.com/in/robjahn
& how you can leverage & contribute

Mais conteúdo relacionado

Mais procurados

Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]Dynatrace
 
PCF Killed the ITSM Star
PCF Killed the ITSM StarPCF Killed the ITSM Star
PCF Killed the ITSM StarKyle Campos
 
How to Fit Performance Testing into a DevOps Environment
How to Fit Performance Testing into a DevOps EnvironmentHow to Fit Performance Testing into a DevOps Environment
How to Fit Performance Testing into a DevOps EnvironmentNeotys
 
Agile testing - Principles and best practices
Agile testing  - Principles and best practicesAgile testing  - Principles and best practices
Agile testing - Principles and best practicesDr Ganesh Iyer
 
Zwiększ dostępność. Wprowadzenie do WCAG
Zwiększ dostępność. Wprowadzenie do WCAGZwiększ dostępność. Wprowadzenie do WCAG
Zwiększ dostępność. Wprowadzenie do WCAGThe Software House
 
How to Add Test Automation to your Quality Assurance Toolbelt
How to Add Test Automation to your Quality Assurance ToolbeltHow to Add Test Automation to your Quality Assurance Toolbelt
How to Add Test Automation to your Quality Assurance ToolbeltBrett Tramposh
 
Amalgamation of BDD, parallel execution and mobile automation
Amalgamation of BDD, parallel execution and mobile automationAmalgamation of BDD, parallel execution and mobile automation
Amalgamation of BDD, parallel execution and mobile automationAgile Testing Alliance
 
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...Sauce Labs
 
Achieve Performance Testing Excellence for Your SAP Apps
Achieve Performance Testing Excellence for Your SAP AppsAchieve Performance Testing Excellence for Your SAP Apps
Achieve Performance Testing Excellence for Your SAP AppsNeotys
 
Selenium certification program
Selenium certification programSelenium certification program
Selenium certification programshivramm
 
Large-Scale Agile Test Automation Strategies in Practice
Large-Scale Agile Test Automation Strategies in PracticeLarge-Scale Agile Test Automation Strategies in Practice
Large-Scale Agile Test Automation Strategies in PracticeTechWell
 
Security Training: Necessary Evil, Waste of Time, or Genius Move?
Security Training: Necessary Evil, Waste of Time, or Genius Move?Security Training: Necessary Evil, Waste of Time, or Genius Move?
Security Training: Necessary Evil, Waste of Time, or Genius Move?Denim Group
 
5 Steps for Identifying Deficiencies and Fixing Problems FAST
5 Steps for Identifying Deficiencies and Fixing Problems FAST5 Steps for Identifying Deficiencies and Fixing Problems FAST
5 Steps for Identifying Deficiencies and Fixing Problems FASTDynatrace
 
How to Build a Metrics-optimized Software Delivery Pipeline
How to Build a Metrics-optimized Software Delivery PipelineHow to Build a Metrics-optimized Software Delivery Pipeline
How to Build a Metrics-optimized Software Delivery PipelineDynatrace
 
The Automation Firehose: Be Strategic and Tactical by Thomas Haver
The Automation Firehose: Be Strategic and Tactical by Thomas HaverThe Automation Firehose: Be Strategic and Tactical by Thomas Haver
The Automation Firehose: Be Strategic and Tactical by Thomas HaverQA or the Highway
 
Making the Transition from Manual to Automated Testing
Making the Transition from Manual to Automated TestingMaking the Transition from Manual to Automated Testing
Making the Transition from Manual to Automated TestingSauce Labs
 
Certified Professional Master Agile Testing information and highlights
Certified Professional Master Agile Testing  information and highlightsCertified Professional Master Agile Testing  information and highlights
Certified Professional Master Agile Testing information and highlightsAgile Testing Alliance
 
Measuring your way_to_successful_automation_webinar
Measuring your way_to_successful_automation_webinarMeasuring your way_to_successful_automation_webinar
Measuring your way_to_successful_automation_webinarSauce Labs
 
The Evolution of Test Automation for DevOps
The Evolution of Test Automation for DevOpsThe Evolution of Test Automation for DevOps
The Evolution of Test Automation for DevOpsTEST Huddle
 

Mais procurados (20)

Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]Accelerate User Driven Innovation [Webinar]
Accelerate User Driven Innovation [Webinar]
 
About Agile Testing Alliance (ATA)
About Agile Testing Alliance (ATA)About Agile Testing Alliance (ATA)
About Agile Testing Alliance (ATA)
 
PCF Killed the ITSM Star
PCF Killed the ITSM StarPCF Killed the ITSM Star
PCF Killed the ITSM Star
 
How to Fit Performance Testing into a DevOps Environment
How to Fit Performance Testing into a DevOps EnvironmentHow to Fit Performance Testing into a DevOps Environment
How to Fit Performance Testing into a DevOps Environment
 
Agile testing - Principles and best practices
Agile testing  - Principles and best practicesAgile testing  - Principles and best practices
Agile testing - Principles and best practices
 
Zwiększ dostępność. Wprowadzenie do WCAG
Zwiększ dostępność. Wprowadzenie do WCAGZwiększ dostępność. Wprowadzenie do WCAG
Zwiększ dostępność. Wprowadzenie do WCAG
 
How to Add Test Automation to your Quality Assurance Toolbelt
How to Add Test Automation to your Quality Assurance ToolbeltHow to Add Test Automation to your Quality Assurance Toolbelt
How to Add Test Automation to your Quality Assurance Toolbelt
 
Amalgamation of BDD, parallel execution and mobile automation
Amalgamation of BDD, parallel execution and mobile automationAmalgamation of BDD, parallel execution and mobile automation
Amalgamation of BDD, parallel execution and mobile automation
 
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
From Zero to 2.7 Million - How Verizon Media Embraced Open Source to Accelera...
 
Achieve Performance Testing Excellence for Your SAP Apps
Achieve Performance Testing Excellence for Your SAP AppsAchieve Performance Testing Excellence for Your SAP Apps
Achieve Performance Testing Excellence for Your SAP Apps
 
Selenium certification program
Selenium certification programSelenium certification program
Selenium certification program
 
Large-Scale Agile Test Automation Strategies in Practice
Large-Scale Agile Test Automation Strategies in PracticeLarge-Scale Agile Test Automation Strategies in Practice
Large-Scale Agile Test Automation Strategies in Practice
 
Security Training: Necessary Evil, Waste of Time, or Genius Move?
Security Training: Necessary Evil, Waste of Time, or Genius Move?Security Training: Necessary Evil, Waste of Time, or Genius Move?
Security Training: Necessary Evil, Waste of Time, or Genius Move?
 
5 Steps for Identifying Deficiencies and Fixing Problems FAST
5 Steps for Identifying Deficiencies and Fixing Problems FAST5 Steps for Identifying Deficiencies and Fixing Problems FAST
5 Steps for Identifying Deficiencies and Fixing Problems FAST
 
How to Build a Metrics-optimized Software Delivery Pipeline
How to Build a Metrics-optimized Software Delivery PipelineHow to Build a Metrics-optimized Software Delivery Pipeline
How to Build a Metrics-optimized Software Delivery Pipeline
 
The Automation Firehose: Be Strategic and Tactical by Thomas Haver
The Automation Firehose: Be Strategic and Tactical by Thomas HaverThe Automation Firehose: Be Strategic and Tactical by Thomas Haver
The Automation Firehose: Be Strategic and Tactical by Thomas Haver
 
Making the Transition from Manual to Automated Testing
Making the Transition from Manual to Automated TestingMaking the Transition from Manual to Automated Testing
Making the Transition from Manual to Automated Testing
 
Certified Professional Master Agile Testing information and highlights
Certified Professional Master Agile Testing  information and highlightsCertified Professional Master Agile Testing  information and highlights
Certified Professional Master Agile Testing information and highlights
 
Measuring your way_to_successful_automation_webinar
Measuring your way_to_successful_automation_webinarMeasuring your way_to_successful_automation_webinar
Measuring your way_to_successful_automation_webinar
 
The Evolution of Test Automation for DevOps
The Evolution of Test Automation for DevOpsThe Evolution of Test Automation for DevOps
The Evolution of Test Automation for DevOps
 

Semelhante a Embracing service-level-objectives of your microservices in your Cl/CD

Overcoming scalability issues in your prometheus ecosystem
Overcoming scalability issues in your prometheus ecosystemOvercoming scalability issues in your prometheus ecosystem
Overcoming scalability issues in your prometheus ecosystemNebulaworks
 
Overcoming (organizational) scalability issues in your Prometheus ecosystem
Overcoming (organizational) scalability issues in your Prometheus ecosystemOvercoming (organizational) scalability issues in your Prometheus ecosystem
Overcoming (organizational) scalability issues in your Prometheus ecosystemQAware GmbH
 
A Guide to Event-Driven SRE-inspired DevOps
A Guide to Event-Driven SRE-inspired DevOpsA Guide to Event-Driven SRE-inspired DevOps
A Guide to Event-Driven SRE-inspired DevOpsAndreas Grabner
 
MGM Agile Dec 28th 2022 (003).pptx
MGM Agile Dec 28th 2022 (003).pptxMGM Agile Dec 28th 2022 (003).pptx
MGM Agile Dec 28th 2022 (003).pptxJalaja Raj
 
How to use Istio/Anthos to build Enterprise SRE
How to use Istio/Anthos to build Enterprise SREHow to use Istio/Anthos to build Enterprise SRE
How to use Istio/Anthos to build Enterprise SRETzung-Hsien (Shawn) Ho
 
Performance Engineering Masterclass: Efficient Automation with the Help of SR...
Performance Engineering Masterclass: Efficient Automation with the Help of SR...Performance Engineering Masterclass: Efficient Automation with the Help of SR...
Performance Engineering Masterclass: Efficient Automation with the Help of SR...ScyllaDB
 
T3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of ExcellenceT3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of Excellenceveehikle
 
Jenkins Online Meetup - Automated SLI based Build Validation with Keptn
Jenkins Online Meetup - Automated SLI based Build Validation with KeptnJenkins Online Meetup - Automated SLI based Build Validation with Keptn
Jenkins Online Meetup - Automated SLI based Build Validation with KeptnAndreas Grabner
 
04 test controlling and tracking
04   test controlling and tracking04   test controlling and tracking
04 test controlling and trackingClemens Reijnen
 
Fllow con 2014
Fllow con 2014 Fllow con 2014
Fllow con 2014 gbgruver
 
Beyond the Buzzwords
Beyond the BuzzwordsBeyond the Buzzwords
Beyond the BuzzwordsSean Keery
 
Building functional Quality Gates with ReportPortal
Building functional Quality Gates with ReportPortalBuilding functional Quality Gates with ReportPortal
Building functional Quality Gates with ReportPortalDmitriy Gumeniuk
 
Adding Security to your SLO-based Release Validation with Keptn
Adding Security to your SLO-based Release Validation with KeptnAdding Security to your SLO-based Release Validation with Keptn
Adding Security to your SLO-based Release Validation with KeptnAndreas Grabner
 
How To Avoid Continuously Delivering Faulty Software
How To Avoid Continuously Delivering Faulty SoftwareHow To Avoid Continuously Delivering Faulty Software
How To Avoid Continuously Delivering Faulty SoftwareErika Barron
 
How Agile Are you
How Agile Are youHow Agile Are you
How Agile Are youHeaton Cai
 
End-to-End Quality Approach: 14 Levels of Testing
End-to-End Quality Approach: 14 Levels of TestingEnd-to-End Quality Approach: 14 Levels of Testing
End-to-End Quality Approach: 14 Levels of TestingJosiah Renaudin
 
Zero touch QA automation platform for DevOps
Zero touch QA automation platform for DevOpsZero touch QA automation platform for DevOps
Zero touch QA automation platform for DevOpsTaUB Solutions
 
Auto sre with keptn
Auto sre with keptnAuto sre with keptn
Auto sre with keptnLibbySchulze
 
Pete Rim - Cisco's agile journey, continuous delivery and scaling scrum
Pete Rim - Cisco's agile journey, continuous delivery and scaling scrumPete Rim - Cisco's agile journey, continuous delivery and scaling scrum
Pete Rim - Cisco's agile journey, continuous delivery and scaling scrumScrum Australia Pty Ltd
 

Semelhante a Embracing service-level-objectives of your microservices in your Cl/CD (20)

Overcoming scalability issues in your prometheus ecosystem
Overcoming scalability issues in your prometheus ecosystemOvercoming scalability issues in your prometheus ecosystem
Overcoming scalability issues in your prometheus ecosystem
 
Overcoming (organizational) scalability issues in your Prometheus ecosystem
Overcoming (organizational) scalability issues in your Prometheus ecosystemOvercoming (organizational) scalability issues in your Prometheus ecosystem
Overcoming (organizational) scalability issues in your Prometheus ecosystem
 
A Guide to Event-Driven SRE-inspired DevOps
A Guide to Event-Driven SRE-inspired DevOpsA Guide to Event-Driven SRE-inspired DevOps
A Guide to Event-Driven SRE-inspired DevOps
 
MGM Agile Dec 28th 2022 (003).pptx
MGM Agile Dec 28th 2022 (003).pptxMGM Agile Dec 28th 2022 (003).pptx
MGM Agile Dec 28th 2022 (003).pptx
 
How to use Istio/Anthos to build Enterprise SRE
How to use Istio/Anthos to build Enterprise SREHow to use Istio/Anthos to build Enterprise SRE
How to use Istio/Anthos to build Enterprise SRE
 
Performance Engineering Masterclass: Efficient Automation with the Help of SR...
Performance Engineering Masterclass: Efficient Automation with the Help of SR...Performance Engineering Masterclass: Efficient Automation with the Help of SR...
Performance Engineering Masterclass: Efficient Automation with the Help of SR...
 
T3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of ExcellenceT3 Consortium's Performance Center of Excellence
T3 Consortium's Performance Center of Excellence
 
Jenkins Online Meetup - Automated SLI based Build Validation with Keptn
Jenkins Online Meetup - Automated SLI based Build Validation with KeptnJenkins Online Meetup - Automated SLI based Build Validation with Keptn
Jenkins Online Meetup - Automated SLI based Build Validation with Keptn
 
04 test controlling and tracking
04   test controlling and tracking04   test controlling and tracking
04 test controlling and tracking
 
Fllow con 2014
Fllow con 2014 Fllow con 2014
Fllow con 2014
 
Beyond the Buzzwords
Beyond the BuzzwordsBeyond the Buzzwords
Beyond the Buzzwords
 
Building functional Quality Gates with ReportPortal
Building functional Quality Gates with ReportPortalBuilding functional Quality Gates with ReportPortal
Building functional Quality Gates with ReportPortal
 
Adding Security to your SLO-based Release Validation with Keptn
Adding Security to your SLO-based Release Validation with KeptnAdding Security to your SLO-based Release Validation with Keptn
Adding Security to your SLO-based Release Validation with Keptn
 
How To Avoid Continuously Delivering Faulty Software
How To Avoid Continuously Delivering Faulty SoftwareHow To Avoid Continuously Delivering Faulty Software
How To Avoid Continuously Delivering Faulty Software
 
How Agile Are you
How Agile Are youHow Agile Are you
How Agile Are you
 
End-to-End Quality Approach: 14 Levels of Testing
End-to-End Quality Approach: 14 Levels of TestingEnd-to-End Quality Approach: 14 Levels of Testing
End-to-End Quality Approach: 14 Levels of Testing
 
Zero touch QA automation platform for DevOps
Zero touch QA automation platform for DevOpsZero touch QA automation platform for DevOps
Zero touch QA automation platform for DevOps
 
Auto sre with keptn
Auto sre with keptnAuto sre with keptn
Auto sre with keptn
 
Pete Rim - Cisco's agile journey, continuous delivery and scaling scrum
Pete Rim - Cisco's agile journey, continuous delivery and scaling scrumPete Rim - Cisco's agile journey, continuous delivery and scaling scrum
Pete Rim - Cisco's agile journey, continuous delivery and scaling scrum
 
Resume 2 year
Resume  2 yearResume  2 year
Resume 2 year
 

Mais de Nebulaworks

Dynamic Policy Enforcement for Microservice Environments
Dynamic Policy Enforcement for Microservice EnvironmentsDynamic Policy Enforcement for Microservice Environments
Dynamic Policy Enforcement for Microservice EnvironmentsNebulaworks
 
Why we chose Argo Workflow to scale DevOps at InVision
Why we chose Argo Workflow to scale DevOps at InVisionWhy we chose Argo Workflow to scale DevOps at InVision
Why we chose Argo Workflow to scale DevOps at InVisionNebulaworks
 
Methods to stay focused & productive amidst COVID-19!
Methods to stay focused & productive amidst COVID-19!Methods to stay focused & productive amidst COVID-19!
Methods to stay focused & productive amidst COVID-19!Nebulaworks
 
Embacing service-level-objectives of your microservices in your Cl/CD
Embacing service-level-objectives of your microservices in your Cl/CDEmbacing service-level-objectives of your microservices in your Cl/CD
Embacing service-level-objectives of your microservices in your Cl/CDNebulaworks
 
Deploying to Day N Operations of Kubernetes and Containerized Apps
Deploying to Day N Operations of Kubernetes and Containerized AppsDeploying to Day N Operations of Kubernetes and Containerized Apps
Deploying to Day N Operations of Kubernetes and Containerized AppsNebulaworks
 
Trunk based development for Beginners
Trunk based development for BeginnersTrunk based development for Beginners
Trunk based development for BeginnersNebulaworks
 
Distributed tracing with service meshes and tracing spans across polyglot Mic...
Distributed tracing with service meshes and tracing spans across polyglot Mic...Distributed tracing with service meshes and tracing spans across polyglot Mic...
Distributed tracing with service meshes and tracing spans across polyglot Mic...Nebulaworks
 
Managing Terraform Module Versioning and Dependencies
Managing Terraform Module Versioning and Dependencies Managing Terraform Module Versioning and Dependencies
Managing Terraform Module Versioning and Dependencies Nebulaworks
 
Kubernetes for Beginners
Kubernetes for BeginnersKubernetes for Beginners
Kubernetes for BeginnersNebulaworks
 
End to End immutable infrastructure testing
End to End immutable infrastructure testingEnd to End immutable infrastructure testing
End to End immutable infrastructure testingNebulaworks
 
Building Modern Teams and Software
Building Modern Teams and SoftwareBuilding Modern Teams and Software
Building Modern Teams and SoftwareNebulaworks
 
Kuberntes Ingress with Kong
Kuberntes Ingress with KongKuberntes Ingress with Kong
Kuberntes Ingress with KongNebulaworks
 
A Hands-on Introduction on Terraform Best Concepts and Best Practices
A Hands-on Introduction on Terraform Best Concepts and Best Practices A Hands-on Introduction on Terraform Best Concepts and Best Practices
A Hands-on Introduction on Terraform Best Concepts and Best Practices Nebulaworks
 
The App Developer's Kubernetes Toolbox
The App Developer's Kubernetes ToolboxThe App Developer's Kubernetes Toolbox
The App Developer's Kubernetes ToolboxNebulaworks
 
Building a Container Platform with docker swarm
Building a Container Platform with docker swarmBuilding a Container Platform with docker swarm
Building a Container Platform with docker swarmNebulaworks
 
Effective Micoservice Design & Containers
Effective Micoservice Design & Containers Effective Micoservice Design & Containers
Effective Micoservice Design & Containers Nebulaworks
 
Fast Tracking Dev Teams to Container Adoption
Fast Tracking Dev Teams to Container AdoptionFast Tracking Dev Teams to Container Adoption
Fast Tracking Dev Teams to Container AdoptionNebulaworks
 
Nebulaworks | Optimize Your DevOps Game
Nebulaworks | Optimize Your DevOps GameNebulaworks | Optimize Your DevOps Game
Nebulaworks | Optimize Your DevOps GameNebulaworks
 

Mais de Nebulaworks (18)

Dynamic Policy Enforcement for Microservice Environments
Dynamic Policy Enforcement for Microservice EnvironmentsDynamic Policy Enforcement for Microservice Environments
Dynamic Policy Enforcement for Microservice Environments
 
Why we chose Argo Workflow to scale DevOps at InVision
Why we chose Argo Workflow to scale DevOps at InVisionWhy we chose Argo Workflow to scale DevOps at InVision
Why we chose Argo Workflow to scale DevOps at InVision
 
Methods to stay focused & productive amidst COVID-19!
Methods to stay focused & productive amidst COVID-19!Methods to stay focused & productive amidst COVID-19!
Methods to stay focused & productive amidst COVID-19!
 
Embacing service-level-objectives of your microservices in your Cl/CD
Embacing service-level-objectives of your microservices in your Cl/CDEmbacing service-level-objectives of your microservices in your Cl/CD
Embacing service-level-objectives of your microservices in your Cl/CD
 
Deploying to Day N Operations of Kubernetes and Containerized Apps
Deploying to Day N Operations of Kubernetes and Containerized AppsDeploying to Day N Operations of Kubernetes and Containerized Apps
Deploying to Day N Operations of Kubernetes and Containerized Apps
 
Trunk based development for Beginners
Trunk based development for BeginnersTrunk based development for Beginners
Trunk based development for Beginners
 
Distributed tracing with service meshes and tracing spans across polyglot Mic...
Distributed tracing with service meshes and tracing spans across polyglot Mic...Distributed tracing with service meshes and tracing spans across polyglot Mic...
Distributed tracing with service meshes and tracing spans across polyglot Mic...
 
Managing Terraform Module Versioning and Dependencies
Managing Terraform Module Versioning and Dependencies Managing Terraform Module Versioning and Dependencies
Managing Terraform Module Versioning and Dependencies
 
Kubernetes for Beginners
Kubernetes for BeginnersKubernetes for Beginners
Kubernetes for Beginners
 
End to End immutable infrastructure testing
End to End immutable infrastructure testingEnd to End immutable infrastructure testing
End to End immutable infrastructure testing
 
Building Modern Teams and Software
Building Modern Teams and SoftwareBuilding Modern Teams and Software
Building Modern Teams and Software
 
Kuberntes Ingress with Kong
Kuberntes Ingress with KongKuberntes Ingress with Kong
Kuberntes Ingress with Kong
 
A Hands-on Introduction on Terraform Best Concepts and Best Practices
A Hands-on Introduction on Terraform Best Concepts and Best Practices A Hands-on Introduction on Terraform Best Concepts and Best Practices
A Hands-on Introduction on Terraform Best Concepts and Best Practices
 
The App Developer's Kubernetes Toolbox
The App Developer's Kubernetes ToolboxThe App Developer's Kubernetes Toolbox
The App Developer's Kubernetes Toolbox
 
Building a Container Platform with docker swarm
Building a Container Platform with docker swarmBuilding a Container Platform with docker swarm
Building a Container Platform with docker swarm
 
Effective Micoservice Design & Containers
Effective Micoservice Design & Containers Effective Micoservice Design & Containers
Effective Micoservice Design & Containers
 
Fast Tracking Dev Teams to Container Adoption
Fast Tracking Dev Teams to Container AdoptionFast Tracking Dev Teams to Container Adoption
Fast Tracking Dev Teams to Container Adoption
 
Nebulaworks | Optimize Your DevOps Game
Nebulaworks | Optimize Your DevOps GameNebulaworks | Optimize Your DevOps Game
Nebulaworks | Optimize Your DevOps Game
 

Último

MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Principled Technologies
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobeapidays
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FMESafe Software
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businesspanagenda
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)Gabriella Davis
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024SynarionITSolutions
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesBoston Institute of Analytics
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoffsammart93
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 

Último (20)

MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
Deploy with confidence: VMware Cloud Foundation 5.1 on next gen Dell PowerEdg...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024Top 10 Most Downloaded Games on Play Store in 2024
Top 10 Most Downloaded Games on Play Store in 2024
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
HTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation StrategiesHTML Injection Attacks: Impact and Mitigation Strategies
HTML Injection Attacks: Impact and Mitigation Strategies
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 

Embracing service-level-objectives of your microservices in your Cl/CD

  • 1. Embracing service-level-objectives of your microservices in your Cl/CD Rob Jahn Technical Partner Manager Dynatrace https://www.linkedin.com/in/robjahn/ https://events.nebulaworks.com/lightningtalk-april
  • 2. Unfortunately, a robust CI/CD pipeline with well-defined tests does not guarantee a failure-safe application in production. That is since many microservices are interwoven and dependent on each other. Some of them have to handle hundreds of thousands of requests, while others are merely for batch processing of data. Therefore, it is crucial to define the objectives and quality metrics of individual services in terms of service level objectives as code. • How service level indicators and service level objectives can help you set up automated quality gates in a Cl/CD system to prevent bad code changes to ever reach production • How quality criteria can be used to configure your alerts in monitoring solutions to be alerted on any issues in your environments • Present the open-source framework Keptn to provide quality gates for your microservice applications running on your Kubernetes cluster. More information about Keptn can be found on www.keptn.sh or on https://github.com/keptn Embracing service-level-objectives of your microservices in your Cl/CD
  • 3. Agenda • Motivation / Inspiration • Use Cases we provide in Keptn • How it works • How you can leverage & contribute Embracing service-level-objectives of your microservices in your Cl/CD
  • 4. API Testing Integration Testing Application Testing Test a Component Test a System Test Real World Continuous Testing Embedded in CI/CD Pipelines Shift Left Performance Continuous performance testing strategy
  • 5. Challenge: Lengthy manual analysis and approval Build Deploy to „Test“ Run Test In „Test“ Manual Approval Promote to „Staging“ Deploy to „Test“ Functional: Test Result Trend Not Enough Performance: Manual Comparison Is Slow Monitoring: Too much unstructed data Which build is better Which data comes from my testIs this a real problem ~30-60min
  • 6. Solution - Automate the analysis Error rate Throughput + Response Time versus objectives Resources check Test Failure
  • 7. • An SLI is a service level indicator—a carefully defined quantitative measure of some aspect of the level of service that is provided. • An SLO is a service level objective: a target value or range of values for a service level that is measured by an SLI. A natural structure for SLOs is thus SLI ≤ target, or lower bound ≤ SLI ≤ upper bound. Inspiration #1 - Google SRE Handbook – Free online! https://landing.google.com/sre/books/
  • 8. Concept: Automated performance analysis by scoring Spec files define: • Service Level Indicators (SLI) • Service Level Objectives (SLO) Pass / Fail / Warning = Read the Spec Retrieve data Calculate Score Datasource 1 2 3 4
  • 9. Inspiration #2 – Mark Tomlinson 1 Create JIRA Ticket for Performance Feedback Next Continuous Test Cycle picks up Request Performance Feedback back on JIRA Ticket 2 3 1 2 3
  • 10. Inspiration #3 – Thomas Steinmaurer “Performance Signature” for Build Nov 16 “Performance Signature” for Build Nov 17 “Performance Signature” for every Build “Multiple Metrics” compared to prev Timeframe Simple Regression Detection per Metric
  • 11. Define application delivery and operations processes declaratively Use predefined CloudEvents to separate the process from the tools Easy way to integrate and switch between different tools Blue/Green Deployments Automated Quality Gates Standardized communication protocol Keptn’s uniform www.keptn.sh an event-based control plane for continuous delivery and automated operations for cloud-native applications
  • 12. Use Case #1 – Automate SLO Evaluation 1 $ keptn start-evaluation timeframe service sli slo Keptn pulls data from different data sources and Evaluates SLIs Keptn delivers values and Score based on SLOs 2 3 1 2 3 7/8 (87.5%) 4/8 (50%)
  • 13. Use Case #2 – Performance as a Self-Service 1 $ keptn deployment-complete my-service Keptn Keptn Delivers Score based on SLO 2 3 1 2 and Evaluates SLIsRuns Tests 3 7/8 (87.5%) 4/8 (50%)
  • 15. Build and push image Deploy Code SLO Quality Gate Performance Test Automate SLO Evaluation 1 2 3 4 Pass or fail pipeline 5 Deploy Code 1 If PASS, then deploy to production 6 Production Environment Request SLO Evaluation & View in Keptn UI SLO Quality Gate 2 Rollback yes/no?? 3 Developer Checks in code & SLO / SLI files
  • 16. How it works Keptn underneath the hood
  • 17. SLIs & SLOs detailed example Overall Failure Rate Source: Dynatrace Query: builtin:service.errors.total Response Time LOGIN Tx Source: Dynatrace Query: calc:service.responsetime:filter(tx, LOGIN) # DB Calls LOGIN Tx Source: Dynatrace Query: calc:service.dbcalls:filter(tx, LOGIN) <= 5% <= 2% <=150ms & <=+10% <= 400ms <= +0% <= +1 Build 1 0% 80ms 100ms SLO: Overall Score Goal 90% 75% Response Time 95th Perc Source: Dynatrace Query: builtin:service.responsetime(p95) <=100ms <= 250ms SLOSLIs (Service Level Indicators) warn pass 3 100% Build 2 4% 120ms 90ms 3 75% Build 3 1% 90ms 120ms 6 62.5% Build 4 0% 95ms 95ms 3 100% Build 1 Build 2 Build 3 Build 4
  • 18. • YAML based definition of SLIs • SLI Provider specific queries, e.g: Response Time Keptn Quality Gate: SLIs & SLOs Quality Gates ... Dynatrace Prometheus Neoload Scores SLIs Queries SLI Providers with SLI Definitions & Timeframe • YAML based definition of SLOs: • List of objectives with fixed or relative pass & warn criteria indicators: error_rate: "builtin:service.errors.total.count:merge(0):avg" count_dbcalls: "calc:service.toptestdbcalls:merge(0):sum" jvm_memory: "builtin:tech.jvm.memory.pool.committed:merge(0):sum" objective: - sli: error_rate - sli: jvm_memory - sli: count_dbcalls pass: - criteria: - "=+2%" # We allow a 2% increase in DB Calls to previous runs warning: - criteria: - "<=10" # We expect no more than 10 DB Calls per TX total_score: pass: "90%" warning: "75%" 0.5 1.0 0.0 info 7/8 (87.5%) 4/8 (50%) $ keptn start-evaluation timeframe service sli slo 5 DB Calls 360MB 4.3% 123SLI Value: SLI Score: Total Score 2 3 4 Tool X 1
  • 19. SLI / SLO Validation Example SLI #1 SLO Scoring Objective Response Time (ms) <500: 0.5 <200: 1 <210: 1 <204: 2 # SQLs / min Value: 400 Score: 0.5 Value: 0% 2 2.5/3 (83%) >190: 1 Criteria per SLI Weighted Grading SLI Values Total spec_version: "1.0" comparison: compare_with: "single_result” aggregate_function: avg objectives: - sli: response_time_95 pass: - criteria - "<200" warning: - criteria - "<500" - sli: sql_statements weight: 2 pass: - criteria: - "<+2%" warning: - criteria: - "<+5%" - ">-5%" total_score: pass: "90%" warning: "75%" SLI #2 SLO 500 200 Strategy 400ms 202/min 500 200 Base: 200 204 (+2%) 190 (-5%) 210 (+5%) >500: 0 <190: 0 >210: 0 Quality Gates
  • 20. Demo Performance as a self-service
  • 21. As an engineer I can request performance feedback on demand without having any dependency to other teams or environments Allow everyone to get performance feedback from their latest builds and production in an easy way Performance Center of Excellence Teams enable Self-Service to Engineers (more scale) Elevate every engineer to become a Performance Expert (right tools and guard rails) Scale through automation, best practices and standards What is performance as a self-service?
  • 22. Notification Service Run test Performance as a self-service with Jira & Keptn Performance Feedback back on JIRA Ticket for team review 1 2 7 From a JIRA story, invoke Keptn via automation call (REST) Dynatrace service Jmeter Service Jira Service SLO Validation Service Evaluate targets 3 Push test context to Dynatrace 4 Send result notifications 5 Add Jira issue with test results 6
  • 23. Thank you https://keptn.sh https://tutorials.keptn.sh Build a new SLI provider Rob Jahn Technical Partner Manager Dynatrace https://www.linkedin.com/in/robjahn & how you can leverage & contribute