Containers & Clouds & VMs: OH My
Containers, VMs, and Clouds: Containers & Clouds & VMs: OH - - PowerPoint PPT Presentation
Containers, VMs, and Clouds: Containers & Clouds & VMs: OH - - PowerPoint PPT Presentation
Containers, VMs, and Clouds: Containers & Clouds & VMs: OH My Oh My! Mike Coleman, Technology Evangelist Docker @mikegcoleman Who Am I? Technology evangelist at Docker Former: Puppet, VMware, MSFT, Intel, and HP First
Who Am I?
- Technology evangelist at Docker
- Former: Puppet, VMware, MSFT, Intel, and HP
- First half of my career was in IT
- Second half in product management and technical marketing
- @mikegcoleman (but mostly soccer)
So why are you sitting here today
- Containers vs. VMs?
- Physical vs Virtual?
- Virtual vs. Cloud?
- Cloud vs. Physical?
4
VMs
5
Containers
6
They’re different, not mutually exclusive
Just answer the question . . .
Besides, you wouldn’t like the answer
http://nextgenerationgardener.blogspot.com/2013/03/building-show-garden-gathering-it-all.html
So many variables
- Performance
- Security
- Scalability
- Existing Skillsets
- Costs
- Etc.
http://people-equation.com/do-your-words-encourage-or-deflate/math-equation_chalkboard/
- Capacity
- Mixed Workloads
- Latency
- Disaster Recovery
- Licensing Costs
Points to Consider
- Existing Automation
Frameworks
- Resource Pools / Quotas
- Multi-tenancy
Why even start?
- Faster deploy times
−Build vs. Run time
- Simplified dependencies
- Unified tool chain
- Identical environments
- API automation
12
Reduce costs and streamline operations
Containers and VMs together:
- Optimize: Added flexibility in
using infrastructure resources
- Consolidation: Greater workload
density across existing servers.
- Reduce Costs: Lower OS and
VM licensing CapEx and reduce OpEx costs to support and maintain smaller infrastructure
Before: One service and OS per VM After: One container per service. Multiple containers running per VM
Virtualization
Bins/Libs App OS Bins/Libs App OS Bins/Libs App OS
Virtualization
Bins/Libs App OS Virtualization OS Bins/Libs App Docker Engine Bins/Libs App Bins/Libs App Bins/Libs App
13
Swisscom
14
Migrate any workload anywhere
Infrastructure agnostic platform
- Standardize: Docker abstracts
away the infrastructure and virtualization away from the standardized app containers
- Portability: Containers move
without friction from one environment to another – no recoding needed
- Lift and Shift: Containerize
legacy and microservices to gain portability
Bins/Libs App OS Bins/Libs App OS Bins/Libs App OS Bins/Libs App Bins/Libs App Bins/Libs App OS Docker Engine OS Docker Engine
After
15
Centralized CaaS for DevOps
App Service App Service
App A App B
Auth …more App Reg Marketplace Logging Auth Session …more App Reg Logging
Before
App B Auth App Reg Marketplace Logging App Service
Application Teams Universal Control Plane
App A Auth App Reg Marketplace Logging App Service App B Auth App Reg Marketplace Logging App Service App A Auth App Reg Marketplace Logging App Service
Portability
Authorization App Registration Session Management Marketplace Integration Logging …more
Trusted Registry
16
ING delivers value faster
Challenge
- 9+ months to deploy to production
- Poorly rated applications
- Redundant processes and apps
Solution
- Continuous Integration with Docker Engine and
Registry open source and adopt DevOps Benefits
- Ready to deploy in 15 minute
- 1,500 deployments per week
- 180 DevOps teams
- CD pipeline transformed in 4 month
17
Gilt deploys over 100X a day
Challenge − From dev-to-deploy: weeks − 7 Monolithic apps − Wasted time implementing monolithic IaaS and PaaS Solution − Continuous Delivery with Docker Engine
- pen source and private repos on
Docker Hub Benefits − From dev-to-deploy in minutes − 400+ microservices − 100+ innovations a day − Easily burst to cloud burst at peak shopping times
Dockerizing Monoliths
- Microservices to Monoliths continuum
- Monoliths and Microliths
- Focus on the real challenges
− static configs, fixed ports, multiple processes
- Start somewhere . . .
- End up somewhere else
19
Cornell University
- First Dockerized App: Confluence – April
2015
- Complicated Tech Stack
− Apache 2.2.10 − OpenSSL 0.9.8H − Java 1.6 (EOL 2/13) − Confluence 5.6.5
- Custom code for SSO and LDAP
integration
- Previous Confluence update took 6
months
- Out of synch environments
- Brain drain
20
Cornell University – End Product
- Infrastructure as code
- Custom images (rebuilt daily)
- CI workflow featuring Jenkins and
Docker Trusted Registry
- Quarterly upgrades
- 2 Months to Dockerize and move
Confluence to the cloud
- 10x reduction in staff hours
supporting Confluence
“ . . . Docker can improve the state of many applications including legacy and vendor solutions”
- Shawn Bower, Cloud Architect –
Cornell University
What’s the Right Tool for the Job?
So, what’s next
- Pick a project
- Get your hands dirty
- Mistakes may (will) be made
- Join the community
Thank You! Q&A
24
Docker Sessions @ LinuxCon - Booth 41!
Wednesday Aug 24th
From 1 to N Docker Hosts: Getting Started with Docker Clustering - Mike Goelzer and Victor Vieux Highly Available and Distributed Containers - Kendrick Coleman, Docker Captain User Namespace and Seccomp Support in Docker Engine - Paul Novarese When the Going gets Tough, Get TUF Going - Riyaz Faizullabhoy Toronto Docker Meetup
Thurs Aug 25th
Tutorial: Orchestration Containers in Production at Scale with Docker Swarm - Jerome Petazzoni
Tues Aug 23rd
Runc: The Little (container) Engine that Could - Phil Estes Unikernals: When you Should and When your Shouldn’t - Amir Chaudhry Toronto Docker Meetup