SlideShare a Scribd company logo
Swimming upstream
in the container revolution
Containerless Continuous Delivery
Bert	
 Β Jan	
 Β Schrijver
@bjschrijverbertjan@jpoint.nl
Bert Jan Schrijver
L	
 Β e	
 Β t	
 Β β€˜	
 Β s	
 Β 	
 Β m	
 Β e	
 Β e	
 Β t
@bjschrijver
Outline
S o w h a t β€˜ s n e x t ?
Approach
Principles
Introduction
Definitions
Challenges	
 Β and	
 Β 
lessons	
 Β learned
Business	
 Β benefits
Looking	
 Β ahead
Every	
 Β change	
 Β goes	
 Β through	
 Β the	
 Β 
build/test	
 Β pipeline	
 Β and	
 Β 
automatically	
 Β gets	
 Β put	
 Β into	
 Β 
production.
Continuous Deployment
Development	
 Β and	
 Β operations	
 Β 
engineers	
 Β participate	
 Β together	
 Β in	
 Β 
the	
 Β entire	
 Β product	
 Β lifecycle	
 Β -­‐	
 Β and	
 Β are	
 Β 
responsible	
 Β together	
 Β for	
 Β the	
 Β 
product.
DevOps
Building	
 Β and	
 Β testing	
 Β software	
 Β in	
 Β 
such	
 Β a	
 Β way	
 Β that	
 Β the	
 Β software	
 Β can	
 Β be	
 Β 
released	
 Β to	
 Β production	
 Β at	
 Β any	
 Β time.	
 Β 


"Ship	
 Β early,	
 Β ship	
 Β often,	
 Β sacrificing	
 Β 
features,	
 Β never	
 Β quality"	
 Β -­‐	
 Β Kyle	
 Β Neath
Continuous Delivery
Team	
 Β members	
 Β integrate	
 Β their	
 Β work	
 Β 
frequently.	
 Β Commits	
 Β are	
 Β verified	
 Β by	
 Β 
automated	
 Β builds	
 Β and	
 Β tests.
Continuous Integration
Definitions
Who’s	
 Β who	
 Β in	
 Β DevOps
Malmberg	
 Β is	
 Β an	
 Β educational	
 Β 
publisher	
 Β in	
 Β the	
 Β Netherlands.

Malmberg	
 Β is	
 Β building	
 Β modern,	
 Β 
rich	
 Β and	
 Β scalable	
 Β e-­‐learning	
 Β 
applications	
 Β using	
 Β Java	
 Β 8,	
 Β Vert.x,	
 Β 
AngularJS	
 Β and	
 Β MongoDB,	
 Β 
running	
 Β on	
 Β Amazon	
 Β 	
 Β 
cloud	
 Β services.
About Malmberg
JavaOne 2015 - Swimming upstream in the container revolution
Differences lead to issues
Communication between development
and operations was slow, problem
analysis in production was difficult and
releases took a lot of time.
Traditional operations
Production environments managed
by external operations partner.
Differences in infrastructure between
development and production.
Modern development culture
Modern tools, lots of automation.
Test environments are managed
by developers.
History
About	
 Β a	
 Β year	
 Β ago
Things needed to change
Issues and differences between
development and operations were
slowing us down. We needed to shift
strategies to keep progressing.
…said no product manager ever.
J.	
 Β Paul	
 Β Reed
Let’s spend the next few months..
..working	
 Β on	
 Β automated	
 Β testing	
 Β and	
 Β build/release	
 Β 
infrastructure,	
 Β 	
 Β and	
 Β redesigning	
 Β how	
 Β our	
 Β application	
 Β is	
 Β 
written.	
 Β We	
 Β can	
 Β postpone	
 Β our	
 Β feature	
 Β development.
β€œ
”
Build a complete new setup to
allow development teams to
transform to the new
situation at their own pace.
Keep the shop open
Build a dedicated team of
Devs, Ops and Cloud experts.
Expert team
Define key points that identify
your approach and help you
set goals.
Define principles
Approach
How	
 Β we	
 Β initiated	
 Β change.
Principles
Master branch is always releasable
Principle 1
Every change is developed and tested in a feature branch.
Don’t merge it until it’s done.
Unit/integration (Java & JavaScript), mutation, end-to-end (FitNesse/BrowserStack),
performance (Gatling), Sonar for quality and coverage reporting.
Rely on multiple layers of tests.
Each commit is tested extensively
Principle 2
Manage builds, tests, QA and deployments from a single place.
Jenkins as the heart of the delivery process.
Every delivery step is a Jenkins job
Principle 3
After deploying 6 new features, when one has an issue, why roll back 5 good features?
Don’t. Just roll out a fix quickly.
Keep moving ahead.
Deployments are roll-forward only
Principle 4
No logging in to servers. Need a change or upgrade? Just update the server recipe.
Hands off.
Infrastructure as code - for everything
Principle 5
The flexibility and resilience is well worth it.
So how about using containers? The EC2 instance is our container.

Even when you don’t need to scale… yet.
Put everything in auto scaling groups
Principle 6
You can’t explain maintenance windows to modern end users anymore.
Our end users are the Facebook generation.
No downtime in production
Principle 7
Make sure you find the problem before it finds you.
Work proactive, not reactive.
Eyes and ears in production
Principle 8
Repeating tasks such as viewing logs and doing deployments must be common jobs.
Specialisms are OK, but only for incidental tasks.
Repeating tasks are executable for all team members
Principle 9
Differences between teams are OK. A team that’s dependent on external help is not.
Give teams the freedom to work in a way that works for them.
DevOps teams work on a self service basis
Principle 10
Challenges
01
When you automate everything and
keep growing, chances are you’re
going to hit limits.
Amazon has limits
04All environments are provisioned
automatically. Challenge: how to
prevent testing directly in
production.
How to test Puppet changes
Not all developers are comfortable
with managing infrastructure and
middleware.
Devs need to step up their game
06
When transforming an organisation,
you need to be really clear about
where things are going, why things
are happening and when this will
impact teams.
Communication is key
03
Don't assume that cultural change
won't be an issue. It will.
Resistance02
This kills team progress.
Don’t depend on availability
of Ops experts
05
and	
 Β lessons	
 Β learned
Auto scaling and pro-active monitoring
boost availability. A lot.
Availability
Business benefits
High level of automation results in
shorter release cycles and faster time to
market.
Agility
Automated provisioning makes sure that
every environment can be re-built from
scratch in minutes.
Continuity
Lower operations costs due to scheduling
and scaling. Lower maintenance costs due
to high degree of automation.
Cost reduction
Faster problem analysis and solution.
Better reaction speed
How to sell this to your boss.
Get	
 Β the	
 Β teams	
 Β the	
 Β information	
 Β they	
 Β need,	
 Β 
readily	
 Β available	
 Β on	
 Β a	
 Β dashboard	
 Β visible	
 Β from	
 Β 
their	
 Β desks.
Better monitoring and dashboards
Looking ahead
01
There	
 Β is	
 Β no	
 Β silver	
 Β bullet	
 Β here,	
 Β but	
 Β useful	
 Β tools	
 Β 
and	
 Β practices	
 Β do	
 Β exist.
Continuous security testing03
Daily	
 Β performance	
 Β runs	
 Β on	
 Β test	
 Β environments	
 Β 
and	
 Β continuous	
 Β end-­‐user	
 Β performance	
 Β 
monitoring	
 Β in	
 Β production.
Continuous performance testing02
The	
 Β only	
 Β way	
 Β to	
 Β be	
 Β really	
 Β prepared	
 Β for	
 Β failure	
 Β 
is	
 Β to	
 Β make	
 Β sure	
 Β that	
 Β things	
 Β will	
 Β fail	
 Β by	
 Β making	
 Β 
it	
 Β fail	
 Β yourself.
Automated resilience testing04
Stuff we’re still working on
Questions?
@bjschrijver
Thanks for your time.
Liked	
 Β it?	
 Β Tweet	
 Β it!
@bjschrijver

More Related Content

PPT
All Change how the economics of Cloud will make you think differently about Java
PDF
Continuous integration and delivery for java based web applications
PDF
Devops: Who Does What? - Devops Enterprise Summit 2016
PDF
Server Add-ons for Front-end Developers
PDF
Transform Digital Business with DevOps
PDF
How To Be a Java Automated Testing Superstar
KEY
Enterprise Architectures with Ruby (and Rails)
PDF
Auto sre with keptn
All Change how the economics of Cloud will make you think differently about Java
Continuous integration and delivery for java based web applications
Devops: Who Does What? - Devops Enterprise Summit 2016
Server Add-ons for Front-end Developers
Transform Digital Business with DevOps
How To Be a Java Automated Testing Superstar
Enterprise Architectures with Ruby (and Rails)
Auto sre with keptn

What's hot (20)

PPTX
Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorks
PPTX
DOES14 - Joshua Corman - Sonatype
PDF
Continuous Performance Testing: The New Standard
PDF
What manufacturing teaches about DevOps
PPTX
Continuous delivery for databases
PPTX
Performance Metrics Driven CI/CD - Introduction to Continuous Innovation and ...
PDF
Your own kubernetes castle
PDF
Continuously serving the developer community with Continuous Integration and...
PDF
Who Is A DevOps Engineer? | DevOps Skills You Must Master | DevOps Engineer M...
PDF
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
PPTX
From Continuous Integration to DevOps
ODP
Continuous deployment-at-flipkart
KEY
Continuous Deployment
PDF
Principles and Practices in Continuous Deployment at Etsy
PDF
CI/CD (DevOps) 101
PDF
Is Enterprise Java Still Relevant (JavaOne 2015 session)
PDF
Enterprise CI as-a-Service using Jenkins
PPTX
Drive Continuous Delivery With Continuous Testing
PPTX
Devops architecture
PPTX
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...
Performance monitoring - Adoniram Mishra, Rupesh Dubey, ThoughtWorks
DOES14 - Joshua Corman - Sonatype
Continuous Performance Testing: The New Standard
What manufacturing teaches about DevOps
Continuous delivery for databases
Performance Metrics Driven CI/CD - Introduction to Continuous Innovation and ...
Your own kubernetes castle
Continuously serving the developer community with Continuous Integration and...
Who Is A DevOps Engineer? | DevOps Skills You Must Master | DevOps Engineer M...
[Webinar] Test First, Fail Fast - Simplifying the Tester's Transition to DevOps
From Continuous Integration to DevOps
Continuous deployment-at-flipkart
Continuous Deployment
Principles and Practices in Continuous Deployment at Etsy
CI/CD (DevOps) 101
Is Enterprise Java Still Relevant (JavaOne 2015 session)
Enterprise CI as-a-Service using Jenkins
Drive Continuous Delivery With Continuous Testing
Devops architecture
DevOps Drive-In: Automate Database Deployments in Your Continuous Delivery Pi...
Ad

Similar to JavaOne 2015 - Swimming upstream in the container revolution (20)

PDF
Geecon Microservices 2015 - Swimming upstream in the container revolution
PDF
Java Forum Nord 2015 - Swimming upstream in the container revolution
PDF
NextBuild 2015 - Swimming upstream in the container revolution
PDF
Swimming upstream in the container revolution
PDF
Software Development 2020 - Swimming upstream in the container revolution
PDF
MeetingPoint 2015 - Swimming upstream in the container revolution
PPTX
DevOps Workshops Fall 2016
PDF
Den Bosch Java User Group April 2020 - Better software, faster - Principles o...
PDF
Devoxx Belgium 2019 - Better software, faster: Principles of Continuous Deliv...
PDF
TDC 2021 - Better software, faster: Principles of Continuous Delivery and DevOps
PDF
OpenValue Vienna meetup september 2020 - Better software, faster: Principles ...
PPTX
Continuous Delivery Decision points
PPTX
Continuous Delivery: why ? where to start ? how to scale ?
PDF
OpenValue meetup June 2019 - Better, software faster: Principles of Continuou...
PDF
JavaZone 2019 - Better software, faster: Principles of Continuous Delivery an...
PPTX
DevOps introduction
PDF
AmsterdamJUG September 2019 - Better software, faster: Principles of Continuo...
PDF
DevOps Implementation Roadmap
PDF
The Frontiers of Continuous Delivery
PPTX
What is DevOps? What is DevOps CoE?
Geecon Microservices 2015 - Swimming upstream in the container revolution
Java Forum Nord 2015 - Swimming upstream in the container revolution
NextBuild 2015 - Swimming upstream in the container revolution
Swimming upstream in the container revolution
Software Development 2020 - Swimming upstream in the container revolution
MeetingPoint 2015 - Swimming upstream in the container revolution
DevOps Workshops Fall 2016
Den Bosch Java User Group April 2020 - Better software, faster - Principles o...
Devoxx Belgium 2019 - Better software, faster: Principles of Continuous Deliv...
TDC 2021 - Better software, faster: Principles of Continuous Delivery and DevOps
OpenValue Vienna meetup september 2020 - Better software, faster: Principles ...
Continuous Delivery Decision points
Continuous Delivery: why ? where to start ? how to scale ?
OpenValue meetup June 2019 - Better, software faster: Principles of Continuou...
JavaZone 2019 - Better software, faster: Principles of Continuous Delivery an...
DevOps introduction
AmsterdamJUG September 2019 - Better software, faster: Principles of Continuo...
DevOps Implementation Roadmap
The Frontiers of Continuous Delivery
What is DevOps? What is DevOps CoE?
Ad

Recently uploaded (20)

PPTX
Slides PPTX World Game (s) Eco Economic Epochs.pptx
PDF
Cloud-Scale Log Monitoring _ Datadog.pdf
PPTX
Module 1 - Cyber Law and Ethics 101.pptx
PDF
RPKI Status Update, presented by Makito Lay at IDNOG 10
Β 
PDF
WebRTC in SignalWire - troubleshooting media negotiation
PPTX
Funds Management Learning Material for Beg
PDF
πŸ’° π”πŠπ“πˆ πŠπ„πŒπ„ππ€ππ†π€π πŠπˆππ„π‘πŸ’πƒ π‡π€π‘πˆ 𝐈𝐍𝐈 πŸπŸŽπŸπŸ“ πŸ’°
Β 
PPTX
INTERNET------BASICS-------UPDATED PPT PRESENTATION
PDF
The Internet -By the Numbers, Sri Lanka Edition
Β 
PPTX
innovation process that make everything different.pptx
PDF
The New Creative Director: How AI Tools for Social Media Content Creation Are...
PPTX
PptxGenJS_Demo_Chart_20250317130215833.pptx
PDF
Best Practices for Testing and Debugging Shopify Third-Party API Integrations...
PDF
Decoding a Decade: 10 Years of Applied CTI Discipline
PPTX
Introuction about WHO-FIC in ICD-10.pptx
PPTX
Introuction about ICD -10 and ICD-11 PPT.pptx
PPTX
artificial intelligence overview of it and more
PPTX
CHE NAA, , b,mn,mblblblbljb jb jlb ,j , ,C PPT.pptx
PDF
APNIC Update, presented at PHNOG 2025 by Shane Hermoso
Β 
PPTX
Introduction to Information and Communication Technology
Slides PPTX World Game (s) Eco Economic Epochs.pptx
Cloud-Scale Log Monitoring _ Datadog.pdf
Module 1 - Cyber Law and Ethics 101.pptx
RPKI Status Update, presented by Makito Lay at IDNOG 10
Β 
WebRTC in SignalWire - troubleshooting media negotiation
Funds Management Learning Material for Beg
πŸ’° π”πŠπ“πˆ πŠπ„πŒπ„ππ€ππ†π€π πŠπˆππ„π‘πŸ’πƒ π‡π€π‘πˆ 𝐈𝐍𝐈 πŸπŸŽπŸπŸ“ πŸ’°
Β 
INTERNET------BASICS-------UPDATED PPT PRESENTATION
The Internet -By the Numbers, Sri Lanka Edition
Β 
innovation process that make everything different.pptx
The New Creative Director: How AI Tools for Social Media Content Creation Are...
PptxGenJS_Demo_Chart_20250317130215833.pptx
Best Practices for Testing and Debugging Shopify Third-Party API Integrations...
Decoding a Decade: 10 Years of Applied CTI Discipline
Introuction about WHO-FIC in ICD-10.pptx
Introuction about ICD -10 and ICD-11 PPT.pptx
artificial intelligence overview of it and more
CHE NAA, , b,mn,mblblblbljb jb jlb ,j , ,C PPT.pptx
APNIC Update, presented at PHNOG 2025 by Shane Hermoso
Β 
Introduction to Information and Communication Technology

JavaOne 2015 - Swimming upstream in the container revolution

  • 1. Swimming upstream in the container revolution Containerless Continuous Delivery Bert Β Jan Β Schrijver @bjschrijverbertjan@jpoint.nl
  • 2. Bert Jan Schrijver L Β e Β t Β β€˜ Β s Β  Β m Β e Β e Β t @bjschrijver
  • 3. Outline S o w h a t β€˜ s n e x t ? Approach Principles Introduction Definitions Challenges Β and Β  lessons Β learned Business Β benefits Looking Β ahead
  • 4. Every Β change Β goes Β through Β the Β  build/test Β pipeline Β and Β  automatically Β gets Β put Β into Β  production. Continuous Deployment Development Β and Β operations Β  engineers Β participate Β together Β in Β  the Β entire Β product Β lifecycle Β -­‐ Β and Β are Β  responsible Β together Β for Β the Β  product. DevOps Building Β and Β testing Β software Β in Β  such Β a Β way Β that Β the Β software Β can Β be Β  released Β to Β production Β at Β any Β time. Β  
 "Ship Β early, Β ship Β often, Β sacrificing Β  features, Β never Β quality" Β -­‐ Β Kyle Β Neath Continuous Delivery Team Β members Β integrate Β their Β work Β  frequently. Β Commits Β are Β verified Β by Β  automated Β builds Β and Β tests. Continuous Integration Definitions Who’s Β who Β in Β DevOps
  • 5. Malmberg Β is Β an Β educational Β  publisher Β in Β the Β Netherlands.
 Malmberg Β is Β building Β modern, Β  rich Β and Β scalable Β e-­‐learning Β  applications Β using Β Java Β 8, Β Vert.x, Β  AngularJS Β and Β MongoDB, Β  running Β on Β Amazon Β  Β  cloud Β services. About Malmberg
  • 7. Differences lead to issues Communication between development and operations was slow, problem analysis in production was difficult and releases took a lot of time. Traditional operations Production environments managed by external operations partner. Differences in infrastructure between development and production. Modern development culture Modern tools, lots of automation. Test environments are managed by developers. History About Β a Β year Β ago Things needed to change Issues and differences between development and operations were slowing us down. We needed to shift strategies to keep progressing.
  • 8. …said no product manager ever. J. Β Paul Β Reed Let’s spend the next few months.. ..working Β on Β automated Β testing Β and Β build/release Β  infrastructure, Β  Β and Β redesigning Β how Β our Β application Β is Β  written. Β We Β can Β postpone Β our Β feature Β development. β€œ ”
  • 9. Build a complete new setup to allow development teams to transform to the new situation at their own pace. Keep the shop open Build a dedicated team of Devs, Ops and Cloud experts. Expert team Define key points that identify your approach and help you set goals. Define principles Approach How Β we Β initiated Β change.
  • 11. Master branch is always releasable Principle 1 Every change is developed and tested in a feature branch. Don’t merge it until it’s done.
  • 12. Unit/integration (Java & JavaScript), mutation, end-to-end (FitNesse/BrowserStack), performance (Gatling), Sonar for quality and coverage reporting. Rely on multiple layers of tests. Each commit is tested extensively Principle 2
  • 13. Manage builds, tests, QA and deployments from a single place. Jenkins as the heart of the delivery process. Every delivery step is a Jenkins job Principle 3
  • 14. After deploying 6 new features, when one has an issue, why roll back 5 good features? Don’t. Just roll out a fix quickly. Keep moving ahead. Deployments are roll-forward only Principle 4
  • 15. No logging in to servers. Need a change or upgrade? Just update the server recipe. Hands off. Infrastructure as code - for everything Principle 5
  • 16. The flexibility and resilience is well worth it. So how about using containers? The EC2 instance is our container.
 Even when you don’t need to scale… yet. Put everything in auto scaling groups Principle 6
  • 17. You can’t explain maintenance windows to modern end users anymore. Our end users are the Facebook generation. No downtime in production Principle 7
  • 18. Make sure you find the problem before it finds you. Work proactive, not reactive. Eyes and ears in production Principle 8
  • 19. Repeating tasks such as viewing logs and doing deployments must be common jobs. Specialisms are OK, but only for incidental tasks. Repeating tasks are executable for all team members Principle 9
  • 20. Differences between teams are OK. A team that’s dependent on external help is not. Give teams the freedom to work in a way that works for them. DevOps teams work on a self service basis Principle 10
  • 21. Challenges 01 When you automate everything and keep growing, chances are you’re going to hit limits. Amazon has limits 04All environments are provisioned automatically. Challenge: how to prevent testing directly in production. How to test Puppet changes Not all developers are comfortable with managing infrastructure and middleware. Devs need to step up their game 06 When transforming an organisation, you need to be really clear about where things are going, why things are happening and when this will impact teams. Communication is key 03 Don't assume that cultural change won't be an issue. It will. Resistance02 This kills team progress. Don’t depend on availability of Ops experts 05 and Β lessons Β learned
  • 22. Auto scaling and pro-active monitoring boost availability. A lot. Availability Business benefits High level of automation results in shorter release cycles and faster time to market. Agility Automated provisioning makes sure that every environment can be re-built from scratch in minutes. Continuity Lower operations costs due to scheduling and scaling. Lower maintenance costs due to high degree of automation. Cost reduction Faster problem analysis and solution. Better reaction speed How to sell this to your boss.
  • 23. Get Β the Β teams Β the Β information Β they Β need, Β  readily Β available Β on Β a Β dashboard Β visible Β from Β  their Β desks. Better monitoring and dashboards Looking ahead 01 There Β is Β no Β silver Β bullet Β here, Β but Β useful Β tools Β  and Β practices Β do Β exist. Continuous security testing03 Daily Β performance Β runs Β on Β test Β environments Β  and Β continuous Β end-­‐user Β performance Β  monitoring Β in Β production. Continuous performance testing02 The Β only Β way Β to Β be Β really Β prepared Β for Β failure Β  is Β to Β make Β sure Β that Β things Β will Β fail Β by Β making Β  it Β fail Β yourself. Automated resilience testing04 Stuff we’re still working on
  • 25. Thanks for your time. Liked Β it? Β Tweet Β it! @bjschrijver