SlideShare a Scribd company logo
Anton Boyko
Microsoft Azure MVP
me@boykoant.pro
Speed up application testing
with Azure Container Instances
Enabling
DevOps
practices
”I`m allergic to
manual labor.”
”If you know
your server
name, it’s your
pet. But we are
dealing with
cattle.”
Problem:
it takes eternity to
execute all automated
tests
As is
• Builds and tests running on a same
machine
• 8 CPU, 24 GB RAM
• 1500 tests
• Near 100% CPU load during test run
• Average test duration 3 secs
• Total tests run time 75 minutes
cspkg
To be
cspkg
• Builds and tests running on a
different machines
• Test agents provisioned on demand;
tests executed in parallel
• 2 CPU, 4 GB RAM
• 1500 tests
• Near 100% CPU load during build
• Average test duration 3 secs
• Expected tests run time
10 minutes
So what?
• We need to deliver more
business features, because our
clients are paying for them.
• You can work on optimization
later, but now let’s focus on
current release.
• As soon as we will hire new folk
for our team you will have
enough time to work on this.
Raise your hand when it becomes familiar:
0 50 100 150 200 250 300 350 400
fifth
fourth
third
second
first
Queue
Run
Total team idle
C = 75 + (75 + 75) + (150 + 75) + (225 + 75) + (300 + 75)
~19 hours per week (10%) of 200 max week’s capacity
Economy
• CPU cost
$ 0.0007 per minute
$ 0.042 per hour
$ 30.24 per month
• RAM cost
$ 0.0003 per minute
$ 0.018 per hour
$ 12.96 per month
• Team member idle
$ 0.5 per minute
$ 30 per hour
24/7 (as is)
C = (8*CPU*1440*7)+(24*RAM*1440*7)+(75*Idle*3*5)
C = 56.45 + 72.58 + 562.5
692 per week (100%) 2768 (100%)
Working hours (as is+)
C = (8*CPU*720*5)+(24*RAM*720*5)+(75*Idle*3*5)
C = 20.16 + 25.92 + 562.5
609 per week (88%) 2436 (88%)
On demand + working hours (to be)
C = (2*CPU*720*5)+(4*RAM*720*5)+(10*Idle*3*5)
+ 10*((1*CPU*10*3*5)+(2*RAM*10*3*5))
C = 5.04 + 4.32 + 75 + 10 * (0.11 + 0.09)
87 per week (13%) 248 (13%)
0
100
200
300
400
500
600
700
800
24/7 Working
hours
On demand
+ working
hours
Idle
RAM
CPU
Economy
• CPU cost
$ 0.0007 per minute
$ 0.042 per hour
$ 30.24 per month
• RAM cost
$ 0.0003 per minute
$ 0.018 per hour
$ 12.96 per month
• Team member idle
$ 0.5 per minute
$ 30 per hour
Expectations
• Team of 5 engineers
• 200 working hours
per week
• 50 idle hours per
week (focus,
communication,
etc.)
• 19 idle hours per
week before
optimization
• 1 idle hour per
week after
optimization
• 160 hours for
optimization project
Jan Feb Mar Apr May Jun
Func 524 1048 1572 2096 2620 3144
Non-func 0 0 0 0 0 0
Idle 276 552 828 1104 1380 1656
Jan Feb Mar Apr May Jun
Func 364 960 1556 2152 2748 3344
Non-func 160 0 0 0 0 0
Idle 276 480 684 888 1092 1296
Before (hours capacity)
After (hours capacity)
Goals
• Team idle reduced. New features
can be delivered faster than
before.
• Total cost of ownership reduced.
More budget for development,
less for maintenance.
Speed up application testing with azure container instances
Toolset
• Docker (distribution)
• Azure Container Registry (artifacts)
• Azure Container Instances (hosting)
• Azure Storage (test results)
• Azure Logic Apps (orchestration)
cspkgcspkg
Orchestration flow
cspkg
cspkg
Let’s take it even further
• Solution application should be as much transparent as possible.
- No changes should be made within application codebase.
- No changes should be made within tests automation codebase.
• Solution should be as much technology agnostic as possible.
- We should be able to replicate it for .NET, Java, Python, Node, PHP, etc.
- We should be able to replicate it for Azure DevOps, Jenkins, TeamCity, etc.
Authoring Docker file
Publishing Docker image
Orchestrating tests run
Orchestrating tests run
Put everything together
Questions?

More Related Content

What's hot (20)

PDF
Porting your hadoop app to horton works hdp
Mark Kerzner
 
PDF
Infrastructure as code
daisuke awaji
 
PPTX
Distributed automation selcamp2016
aragavan
 
PDF
Odoo Performance Limits
Odoo
 
PPTX
PyData London 2015 - How We Turned EverythingMe Into a Data Driven Company
Arik Fraimovich
 
PDF
Ceph recovery improvement v0.2
Fei (James) Liu
 
PDF
From 0 to hero adf cicd pass mdpug oslo feb 2020
Halvar Trøyel Nerbø
 
PDF
Kraken Front-Trends
PayPal
 
PDF
AtlasCamp 2013: Bring your own Stack
colleenfry
 
PDF
[LDSP] Search Engine Back End API Solution for Fast Prototyping
Jimmy Lai
 
PDF
Ceph majority commit
Fei (James) Liu
 
PPTX
Automation with Packer and TerraForm
Wesley Charles Blake
 
PDF
Resource Scheduling using Apache Mesos in Cloud Native Environments
Sharma Podila
 
PPTX
Infrastructure as code
Naseath Saly
 
PPTX
Hands on ansible
sumit23kumar
 
PPTX
Embulk and Machine Learning infrastructure
Hiroshi Toyama
 
PDF
WTF?
Andrey Karpov
 
PDF
openstack源码分析(1)
cannium
 
PDF
DevOps with Ansible
Swapnil Jain
 
PDF
Benchmarking at Parse
Travis Redman
 
Porting your hadoop app to horton works hdp
Mark Kerzner
 
Infrastructure as code
daisuke awaji
 
Distributed automation selcamp2016
aragavan
 
Odoo Performance Limits
Odoo
 
PyData London 2015 - How We Turned EverythingMe Into a Data Driven Company
Arik Fraimovich
 
Ceph recovery improvement v0.2
Fei (James) Liu
 
From 0 to hero adf cicd pass mdpug oslo feb 2020
Halvar Trøyel Nerbø
 
Kraken Front-Trends
PayPal
 
AtlasCamp 2013: Bring your own Stack
colleenfry
 
[LDSP] Search Engine Back End API Solution for Fast Prototyping
Jimmy Lai
 
Ceph majority commit
Fei (James) Liu
 
Automation with Packer and TerraForm
Wesley Charles Blake
 
Resource Scheduling using Apache Mesos in Cloud Native Environments
Sharma Podila
 
Infrastructure as code
Naseath Saly
 
Hands on ansible
sumit23kumar
 
Embulk and Machine Learning infrastructure
Hiroshi Toyama
 
openstack源码分析(1)
cannium
 
DevOps with Ansible
Swapnil Jain
 
Benchmarking at Parse
Travis Redman
 

Similar to Speed up application testing with azure container instances (20)

PPTX
Enterprise Dev Test offer Customer ready.pptx
dominicduantran
 
PDF
Microsoft Azure in HPC scenarios
mictc
 
PPTX
Feedback on Big Compute & HPC on Windows Azure
Antoine Poliakov
 
PPTX
Taking High Performance Computing to the Cloud: Windows HPC and
Saptak Sen
 
PPTX
Cloud Roundtable at Microsoft Switzerland
mictc
 
PPTX
2 Speed IT powered by Microsoft Azure and Minecraft
Sriram Hariharan
 
PPTX
2 Speed IT powered by Microsoft Azure and Minecraft
BizTalk360
 
PPTX
Azure based development for SharePoint 2013
blue-infinity Linked by Isobar
 
PPTX
High Throughput Analytics with Cassandra & Azure
DataStax Academy
 
PDF
Evolve Your Web Applications with Microsoft Azure
David J Rosenthal
 
PPTX
Cloud Economics
Nuri Cankaya
 
PDF
Microsoft Azure - Learn how to use the Calculador.pdf
alexandro90
 
PDF
International software testing conference 2017 fergal hynes
Fergal Hynes
 
PPTX
Power of Azure Devops
Azure Riyadh User Group
 
PDF
Keynote AST 2016
Kim Herzig
 
PPTX
Microsoft Azure Cost Optimization and improve efficiency
Kushan Lahiru Perera
 
PPTX
Feedback on Big Compute & HPC on Windows Azure
ANEO
 
PPTX
Azure JumpStart
Rateb Abu Hawieleh
 
PPTX
Building azure applications ireland
Michael Meagher
 
PPTX
Building Real World Applications using Windows Azure - Scott Guthrie, 2nd Dec...
Vikas Sahni
 
Enterprise Dev Test offer Customer ready.pptx
dominicduantran
 
Microsoft Azure in HPC scenarios
mictc
 
Feedback on Big Compute & HPC on Windows Azure
Antoine Poliakov
 
Taking High Performance Computing to the Cloud: Windows HPC and
Saptak Sen
 
Cloud Roundtable at Microsoft Switzerland
mictc
 
2 Speed IT powered by Microsoft Azure and Minecraft
Sriram Hariharan
 
2 Speed IT powered by Microsoft Azure and Minecraft
BizTalk360
 
Azure based development for SharePoint 2013
blue-infinity Linked by Isobar
 
High Throughput Analytics with Cassandra & Azure
DataStax Academy
 
Evolve Your Web Applications with Microsoft Azure
David J Rosenthal
 
Cloud Economics
Nuri Cankaya
 
Microsoft Azure - Learn how to use the Calculador.pdf
alexandro90
 
International software testing conference 2017 fergal hynes
Fergal Hynes
 
Power of Azure Devops
Azure Riyadh User Group
 
Keynote AST 2016
Kim Herzig
 
Microsoft Azure Cost Optimization and improve efficiency
Kushan Lahiru Perera
 
Feedback on Big Compute & HPC on Windows Azure
ANEO
 
Azure JumpStart
Rateb Abu Hawieleh
 
Building azure applications ireland
Michael Meagher
 
Building Real World Applications using Windows Azure - Scott Guthrie, 2nd Dec...
Vikas Sahni
 
Ad

More from Katherine Golovinova (20)

PDF
Contract-based Testing Approach as a Tool for Shift Lef
Katherine Golovinova
 
PDF
Analyzing application activities with KSQL and Elasticsearch
Katherine Golovinova
 
PPTX
Testing Big Data solutions fast and furiously
Katherine Golovinova
 
PDF
"Fast & Fail in real life of DevTestSecOps"
Katherine Golovinova
 
PPTX
Geodistributed databases - what, how, and why?
Katherine Golovinova
 
PPTX
COSMOS DB - geodistributed database for anyone
Katherine Golovinova
 
PDF
Migrating from a monolith to microservices – is it worth it?
Katherine Golovinova
 
PDF
Azure Functions - the evolution of microservices platform or marketing gibber...
Katherine Golovinova
 
PPTX
Gatling and Page Object: a way to performance testing
Katherine Golovinova
 
PDF
Automation of Security scanning easy or cheese
Katherine Golovinova
 
PPTX
Gradle plugins for Test Automation
Katherine Golovinova
 
PPTX
Automation world under the DevTestSecOps umbrella
Katherine Golovinova
 
PPTX
"Disaster Recovery in Azure" by Viktor Kocherha
Katherine Golovinova
 
PPTX
"Certified Kubernetes Administrator Exam – how it was" by Andrii Fedenishin
Katherine Golovinova
 
PPTX
"Modern CI/CD" by Dmytro Batiievskyi
Katherine Golovinova
 
PPTX
EPAM DevOps community meetup: Building CI/CD for microservice architecture
Katherine Golovinova
 
PPTX
EPAM DevOps community meetup: Designing bare metal Kubernetes clusters
Katherine Golovinova
 
PDF
Hosting Microservices in Microsoft Azure
Katherine Golovinova
 
PDF
Infrastructure as Code for Azure: ARM or Terraform?
Katherine Golovinova
 
PDF
Azure IoT Hub: what is it and why we select other solution (production projec...
Katherine Golovinova
 
Contract-based Testing Approach as a Tool for Shift Lef
Katherine Golovinova
 
Analyzing application activities with KSQL and Elasticsearch
Katherine Golovinova
 
Testing Big Data solutions fast and furiously
Katherine Golovinova
 
"Fast & Fail in real life of DevTestSecOps"
Katherine Golovinova
 
Geodistributed databases - what, how, and why?
Katherine Golovinova
 
COSMOS DB - geodistributed database for anyone
Katherine Golovinova
 
Migrating from a monolith to microservices – is it worth it?
Katherine Golovinova
 
Azure Functions - the evolution of microservices platform or marketing gibber...
Katherine Golovinova
 
Gatling and Page Object: a way to performance testing
Katherine Golovinova
 
Automation of Security scanning easy or cheese
Katherine Golovinova
 
Gradle plugins for Test Automation
Katherine Golovinova
 
Automation world under the DevTestSecOps umbrella
Katherine Golovinova
 
"Disaster Recovery in Azure" by Viktor Kocherha
Katherine Golovinova
 
"Certified Kubernetes Administrator Exam – how it was" by Andrii Fedenishin
Katherine Golovinova
 
"Modern CI/CD" by Dmytro Batiievskyi
Katherine Golovinova
 
EPAM DevOps community meetup: Building CI/CD for microservice architecture
Katherine Golovinova
 
EPAM DevOps community meetup: Designing bare metal Kubernetes clusters
Katherine Golovinova
 
Hosting Microservices in Microsoft Azure
Katherine Golovinova
 
Infrastructure as Code for Azure: ARM or Terraform?
Katherine Golovinova
 
Azure IoT Hub: what is it and why we select other solution (production projec...
Katherine Golovinova
 
Ad

Recently uploaded (20)

PDF
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PPTX
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
PDF
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PDF
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
PDF
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PPTX
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
PDF
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PDF
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
PPTX
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PDF
From Code to Challenge: Crafting Skill-Based Games That Engage and Reward
aiyshauae
 
PDF
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
PDF
July Patch Tuesday
Ivanti
 
Agentic AI lifecycle for Enterprise Hyper-Automation
Debmalya Biswas
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
COMPARISON OF RASTER ANALYSIS TOOLS OF QGIS AND ARCGIS
Sharanya Sarkar
 
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
Presentation - Vibe Coding The Future of Tech
yanuarsinggih1
 
Timothy Rottach - Ramp up on AI Use Cases, from Vector Search to AI Agents wi...
AWS Chicago
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
Empower Inclusion Through Accessible Java Applications
Ana-Maria Mihalceanu
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
HubSpot Main Hub: A Unified Growth Platform
Jaswinder Singh
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
HCIP-Data Center Facility Deployment V2.0 Training Material (Without Remarks ...
mcastillo49
 
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
From Code to Challenge: Crafting Skill-Based Games That Engage and Reward
aiyshauae
 
Using FME to Develop Self-Service CAD Applications for a Major UK Police Force
Safe Software
 
July Patch Tuesday
Ivanti
 

Speed up application testing with azure container instances

  • 1. Anton Boyko Microsoft Azure MVP [email protected] Speed up application testing with Azure Container Instances
  • 4. ”If you know your server name, it’s your pet. But we are dealing with cattle.”
  • 5. Problem: it takes eternity to execute all automated tests
  • 6. As is • Builds and tests running on a same machine • 8 CPU, 24 GB RAM • 1500 tests • Near 100% CPU load during test run • Average test duration 3 secs • Total tests run time 75 minutes cspkg
  • 7. To be cspkg • Builds and tests running on a different machines • Test agents provisioned on demand; tests executed in parallel • 2 CPU, 4 GB RAM • 1500 tests • Near 100% CPU load during build • Average test duration 3 secs • Expected tests run time 10 minutes
  • 8. So what? • We need to deliver more business features, because our clients are paying for them. • You can work on optimization later, but now let’s focus on current release. • As soon as we will hire new folk for our team you will have enough time to work on this. Raise your hand when it becomes familiar:
  • 9. 0 50 100 150 200 250 300 350 400 fifth fourth third second first Queue Run Total team idle C = 75 + (75 + 75) + (150 + 75) + (225 + 75) + (300 + 75) ~19 hours per week (10%) of 200 max week’s capacity
  • 10. Economy • CPU cost $ 0.0007 per minute $ 0.042 per hour $ 30.24 per month • RAM cost $ 0.0003 per minute $ 0.018 per hour $ 12.96 per month • Team member idle $ 0.5 per minute $ 30 per hour 24/7 (as is) C = (8*CPU*1440*7)+(24*RAM*1440*7)+(75*Idle*3*5) C = 56.45 + 72.58 + 562.5 692 per week (100%) 2768 (100%) Working hours (as is+) C = (8*CPU*720*5)+(24*RAM*720*5)+(75*Idle*3*5) C = 20.16 + 25.92 + 562.5 609 per week (88%) 2436 (88%) On demand + working hours (to be) C = (2*CPU*720*5)+(4*RAM*720*5)+(10*Idle*3*5) + 10*((1*CPU*10*3*5)+(2*RAM*10*3*5)) C = 5.04 + 4.32 + 75 + 10 * (0.11 + 0.09) 87 per week (13%) 248 (13%)
  • 11. 0 100 200 300 400 500 600 700 800 24/7 Working hours On demand + working hours Idle RAM CPU Economy • CPU cost $ 0.0007 per minute $ 0.042 per hour $ 30.24 per month • RAM cost $ 0.0003 per minute $ 0.018 per hour $ 12.96 per month • Team member idle $ 0.5 per minute $ 30 per hour
  • 12. Expectations • Team of 5 engineers • 200 working hours per week • 50 idle hours per week (focus, communication, etc.) • 19 idle hours per week before optimization • 1 idle hour per week after optimization • 160 hours for optimization project Jan Feb Mar Apr May Jun Func 524 1048 1572 2096 2620 3144 Non-func 0 0 0 0 0 0 Idle 276 552 828 1104 1380 1656 Jan Feb Mar Apr May Jun Func 364 960 1556 2152 2748 3344 Non-func 160 0 0 0 0 0 Idle 276 480 684 888 1092 1296 Before (hours capacity) After (hours capacity)
  • 13. Goals • Team idle reduced. New features can be delivered faster than before. • Total cost of ownership reduced. More budget for development, less for maintenance.
  • 15. Toolset • Docker (distribution) • Azure Container Registry (artifacts) • Azure Container Instances (hosting) • Azure Storage (test results) • Azure Logic Apps (orchestration)
  • 17. Let’s take it even further • Solution application should be as much transparent as possible. - No changes should be made within application codebase. - No changes should be made within tests automation codebase. • Solution should be as much technology agnostic as possible. - We should be able to replicate it for .NET, Java, Python, Node, PHP, etc. - We should be able to replicate it for Azure DevOps, Jenkins, TeamCity, etc.