Date post: | 12-Jul-2015 |
Category: |
Internet |
Upload: | adrienblind |
View: | 1,594 times |
Download: | 0 times |
Continuous Delivery leveragingon 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)
IaaSCapacity (VM, Storage…)
@AdrienBlind
PaaSApp (code)
Leveraging on PaaS cloud
• Provide high-level building blocks: DBs, middlewares, etc.
• API-centric too
@AdrienBlind
IaaSCapacity (VM, Storage…)
PaaSApp (code)
CaaSApp container
Introducing CaaS cloud
@AdrienBlind
The container paradigm
« Self-sufficient artifact enclosing apps modules and
subsequent system requirements »
Software
factoriesCloud
@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, zerodowntime deployment...
@AdrienBlind
Continuous Delivery chain
001101010011010
110110101111101
110101111010011
Environments
Binary repo.
CVS+
Soft. factoryDeveloper
@AdrienBlindHow to handle subsequent infra conf ?
Continuous Delivery chain
001101010011010
110110101111101
110101111010011
Environments
Registry
CVS+
Soft. factoryDeveloper
Ops
@AdrienBlind
Continuous Delivery chain
001101010011010
110110101111101
110101111010011
Environments
Registry
CVS+
Soft. factoryDeveloper
Ops
@AdrienBlind
Continuous Delivery chain
001101010011010
110110101111101
110101111010011
Environments
Registry
CVS+
Soft. factoryDeveloper
Ops
@AdrienBlind
Continuous Delivery chain
001101010011010
110110101111101
110101111010011
Environments
Registry
CVS+
Soft. factoryDeveloper
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 handleorchestration
• Expose transversal services API (load balancers, DNS, service directories)
• But don’t forget to move step by step to make ithappen. 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