Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
SlideShare a Scribd company logo
Continuous Delivery leveraging 
on Docker CaaS 
@AdrienBlind, Société Générale 
1 @AdrienBlind
Let’s push some context 
• Major CIB european bank, and so relying on a dense & complex IT 
• Thousands apps & IT people 
• Dozen of thousands servers 
• A large technology stack 
• IT split in two departments committed on different roles 
• Siloted build & operation of applications 
• Deliver infrastructure capabilities 
@AdrienBlind
Ambition 
“Build a simple, agile & efficient IS in a 
risk controlled environment” 
Carlos Goncalves, CIO 
• Become a busines partner: generate more business value, 
adapt to change 
• Reduce TTM, strengthen reliability 
• Introduced agility in our DNA for some years now (40% apps 
covered) 
• Engage on continuous delivery practices from end-to-end: 
involve Biz, Craftmanship, DevOps, Architecture for 50% of critical apps 
• Transform people (coaching, training) & toolset 
@AdrienBlind
Focus on delivery 
• Promote DevOps practices 
• Feature teams engaged on the whole product lifecycle 
• Automate infrastructure & application deployments 
• Make environments ephemeral and elastic 
@AdrienBlind
Leveraging on private IaaS cloud 
• IaaS brings flexibility (on demand, self-service, pay-per-use) 
• API centric: plug environment creation in continuous 
integration 
• Post-configure with a conf. mgmt tools (infra as code) 
Capacity (VM, Storage…) IaaS 
@AdrienBlind
Leveraging on PaaS cloud 
App (code) PaaS 
• Provide high-level building blocks: DBs, middlewares, etc. 
• API-centric too 
@AdrienBlind
Introducing CaaS cloud 
App (code) PaaS 
App container CaaS 
Capacity (VM, Storage…) IaaS 
@AdrienBlind
The container paradigm 
« Self-sufficient artifact enclosing apps modules and 
subsequent system requirements » 
Software 
factories 
Cloud 
@AdrienBlind
DevOps Roles shift 
Apps team focuses on 
container’s content 
 Don’t care about where the 
container will run 
Knows how to build the container 
and operate the app 
“You build it, you run it!” 
CaaS team concerned 
about external shape 
Ignore how images are built 
Knows how to operate huge 
amount of containers 
@AdrienBlind
Rebuild vs Upgrade 
Full stack 
Versioning 
& idempotency 
Patch 
vs 
immutable 
@AdrienBlind
• Extract data from the container 
• Leverage on applicative storage services 
• OpenStack Swift, Ceph... 
• Hadoop, Cassandra, Elastic Search... 
• Externalize on system storage 
• Data containers 
• Host mounting points 
Data consideration 
@AdrienBlind
Architecture consideration 
• Trends 
• Application deploiement frequency  
• Micro services 
• Commodity infrastructure 
• High availability & scalability more and more embedded in 
apps. New emerging patterns: 
• Stateless, design for failure, loose coupling, zero 
downtime deployment... 
@AdrienBlind
Continuous Delivery chain 
001101010011010 
110110101111101 
110101111010011 
Binary repo. 
Environments 
CVS+ 
Soft. factory 
Developer 
@AdrienBlind 
How to handle subsequent infra conf ?
Continuous Delivery chain 
001101010011010 
110110101111101 
110101111010011 
Registry 
Environments 
CVS+ 
Soft. factory 
Developer 
Ops 
@AdrienBlind
Continuous Delivery chain 
001101010011010 
110110101111101 
110101111010011 
Registry 
Environments 
CVS+ 
Soft. factory 
Developer 
Ops 
@AdrienBlind
Continuous Delivery chain 
001101010011010 
110110101111101 
110101111010011 
Registry 
Environments 
CVS+ 
Soft. factory 
Developer 
Ops 
@AdrienBlind
Continuous Delivery chain 
001101010011010 
110110101111101 
110101111010011 
Registry 
Environments 
CVS+ 
Soft. factory 
Developer 
Ops 
@AdrienBlind
The CaaS provider 
• Internal / External offers  consider brokering? 
• Key services 
• Manage underlying IaaS (multihosts, multi-tenancy, 
system management, SLA...) 
• Expose management API for containers and handle 
orchestration 
• Expose transversal services API (load balancers, DNS, 
service directories) 
• But don’t forget to move step by step to make it 
happen. Remind how virutalization arrived! 
@AdrienBlind
Tips & tricks 
• Think DevOps: don’t forget your Ops  
• Expect a shift in traditional apps 
• Importance of the architecture 
• Application configuration management 
• Move pro-gres-siv-ely: baby steps first 
• Start at the Dev workstation 
• Avoid discussing big CaaS cloud, orchestration, 
right from the begining 
@AdrienBlind
Cloud DevOps 
Opportunities @AdrienBlind 
Take away
Thank You. 
21 @AdrienBlind

More Related Content

Dockercon Europe 2014 - Continuous Delivery leveraging on Docker CaaS

  • 1. Continuous Delivery leveraging on Docker CaaS @AdrienBlind, Société Générale 1 @AdrienBlind
  • 2. Let’s push some context • Major CIB european bank, and so relying on a dense & complex IT • Thousands apps & IT people • Dozen of thousands servers • A large technology stack • IT split in two departments committed on different roles • Siloted build & operation of applications • Deliver infrastructure capabilities @AdrienBlind
  • 3. Ambition “Build a simple, agile & efficient IS in a risk controlled environment” Carlos Goncalves, CIO • Become a busines partner: generate more business value, adapt to change • Reduce TTM, strengthen reliability • Introduced agility in our DNA for some years now (40% apps covered) • Engage on continuous delivery practices from end-to-end: involve Biz, Craftmanship, DevOps, Architecture for 50% of critical apps • Transform people (coaching, training) & toolset @AdrienBlind
  • 4. Focus on delivery • Promote DevOps practices • Feature teams engaged on the whole product lifecycle • Automate infrastructure & application deployments • Make environments ephemeral and elastic @AdrienBlind
  • 5. Leveraging on private IaaS cloud • IaaS brings flexibility (on demand, self-service, pay-per-use) • API centric: plug environment creation in continuous integration • Post-configure with a conf. mgmt tools (infra as code) Capacity (VM, Storage…) IaaS @AdrienBlind
  • 6. Leveraging on PaaS cloud App (code) PaaS • Provide high-level building blocks: DBs, middlewares, etc. • API-centric too @AdrienBlind
  • 7. Introducing CaaS cloud App (code) PaaS App container CaaS Capacity (VM, Storage…) IaaS @AdrienBlind
  • 8. The container paradigm « Self-sufficient artifact enclosing apps modules and subsequent system requirements » Software factories Cloud @AdrienBlind
  • 9. DevOps Roles shift Apps team focuses on container’s content  Don’t care about where the container will run Knows how to build the container and operate the app “You build it, you run it!” CaaS team concerned about external shape Ignore how images are built Knows how to operate huge amount of containers @AdrienBlind
  • 10. Rebuild vs Upgrade Full stack Versioning & idempotency Patch vs immutable @AdrienBlind
  • 11. • Extract data from the container • Leverage on applicative storage services • OpenStack Swift, Ceph... • Hadoop, Cassandra, Elastic Search... • Externalize on system storage • Data containers • Host mounting points Data consideration @AdrienBlind
  • 12. Architecture consideration • Trends • Application deploiement frequency  • Micro services • Commodity infrastructure • High availability & scalability more and more embedded in apps. New emerging patterns: • Stateless, design for failure, loose coupling, zero downtime deployment... @AdrienBlind
  • 13. Continuous Delivery chain 001101010011010 110110101111101 110101111010011 Binary repo. Environments CVS+ Soft. factory Developer @AdrienBlind How to handle subsequent infra conf ?
  • 14. Continuous Delivery chain 001101010011010 110110101111101 110101111010011 Registry Environments CVS+ Soft. factory Developer Ops @AdrienBlind
  • 15. Continuous Delivery chain 001101010011010 110110101111101 110101111010011 Registry Environments CVS+ Soft. factory Developer Ops @AdrienBlind
  • 16. Continuous Delivery chain 001101010011010 110110101111101 110101111010011 Registry Environments CVS+ Soft. factory Developer Ops @AdrienBlind
  • 17. Continuous Delivery chain 001101010011010 110110101111101 110101111010011 Registry Environments CVS+ Soft. factory Developer Ops @AdrienBlind
  • 18. The CaaS provider • Internal / External offers  consider brokering? • Key services • Manage underlying IaaS (multihosts, multi-tenancy, system management, SLA...) • Expose management API for containers and handle orchestration • Expose transversal services API (load balancers, DNS, service directories) • But don’t forget to move step by step to make it happen. Remind how virutalization arrived! @AdrienBlind
  • 19. Tips & tricks • Think DevOps: don’t forget your Ops  • Expect a shift in traditional apps • Importance of the architecture • Application configuration management • Move pro-gres-siv-ely: baby steps first • Start at the Dev workstation • Avoid discussing big CaaS cloud, orchestration, right from the begining @AdrienBlind
  • 20. Cloud DevOps Opportunities @AdrienBlind Take away
  • 21. Thank You. 21 @AdrienBlind