© 2016 Mesosphere, Inc. All Rights Reserved. 1
CONTAINER ORCHESTRATION WARS( Micro Edition )
© 2016 Mesosphere, Inc. All Rights Reserved. 2
KARL WHO?
Where?
- Mesosphere- Pivotal
What?
- DC/OS- Kubernetes (on Mesos)- CloudFoundry- BOSH
- github.com/karlkfi
- twitter.com/karlkfi
- linkedin.com/in/karlkfi
- karl.isenberg.us
© 2016 Mesosphere, Inc. All Rights Reserved. 3
Revisionist History of Distributed Computing
Container Orchestration
Platforms
Competitive Landscape
The Future
AGENDA
© 2016 Mesosphere, Inc. All Rights Reserved. 4
IN THE BEGINNING...
Sombrero Galaxy by ESA/Hubble - CC BY 4.0
© 2016 Mesosphere, Inc. All Rights Reserved.
Hardware
Operating System
Application
5
COMPUTERS
© 2016 Mesosphere, Inc. All Rights Reserved.
Hardware
Operating System
Web Application
6
INTERNET- Remote Users!
© 2016 Mesosphere, Inc. All Rights Reserved.
Web App
Hardware
Operating System
7
DISTRIBUTION- Horizontal Scale- Fault Tolerance- Availability- Load Balancing
Operating System
Operating System
Hardware Hardware
Web App Web App
© 2016 Mesosphere, Inc. All Rights Reserved.
Service Service Service
Web App Web App Web App
Hardware
Operating System
8
SERVICE-ORIENTEDARCHITECTURE
- Separation of concerns
- Optimization of bottlenecks
- Smaller teams- API Contracts- Data replication- Complicated
provisioning- Dependency
management
Operating System
Operating System
Hardware Hardware
© 2016 Mesosphere, Inc. All Rights Reserved.
Service Service Service
Web App Web App Web App
Machine
Operating System
9
HARDWAREVIRTUALIZATION
- Fast provisioning- Isolation- Portability- Utilization- Configuration
Management- Virtual Networking- Credential
management
Operating System
Operating System
Infrastructure
Machine Machine
© 2016 Mesosphere, Inc. All Rights Reserved.
Operating System
Operating System
Operating System
ServiceApp ServiceServiceAppApp
10
MICROSERVICES- Polyglot- Single Responsibility- Smaller Teams- Utilization- Machine
types/groups- Dependency hell
Machine
Infrastructure
Machine Machine
ServiceService ServiceServiceServiceService
© 2016 Mesosphere, Inc. All Rights Reserved.
ServiceApp ServiceServiceAppApp
OS
11
CONTAINERS- Rapid deployment- Dependency
vendoring- Container image
repositories- Spreadsheet
scheduling
OS OS
Machine
Infrastructure
Machine Machine
Container Runtime Container Runtime Container Runtime
ServiceService ServiceServiceServiceService
© 2016 Mesosphere, Inc. All Rights Reserved.
Service
Container Runtime Container Runtime Container Runtime
OS
12
CONTAINERORCHESTRATION
OS OS
Container Orchestration
Machine
Infrastructure
Machine Machine
App ServiceServiceAppApp
© 2016 Mesosphere, Inc. All Rights Reserved. 13
CONTAINER ORCA-WHAT-NOW?
Scheduling, Coordination, & Management
of
Containerized Processes
as
Higher Order Abstractions
(e.g., Jobs, Services, Applications, Pods, etc.)
© 2016 Mesosphere, Inc. All Rights Reserved. 14
© 2016 Mesosphere, Inc. All Rights Reserved.
Orc
hest
ratio
n
15
Machine Infrastructure
Web Apps & Services
Scheduling
Resource Management
Container Runtime
Machine & OS
Service Management
CONTAINERORCHESTRATION
Machine & OS Machine & OS
Container Runtime Container Runtime
Expanded
© 2016 Mesosphere, Inc. All Rights Reserved. 16
SCHEDULING- Placement- Replication/Scaling- Resurrection- Rescheduling- Rolling Deployment- Upgrades- Downgrades- Collocation
RESOURCE MANAGEMENT
- Memory- CPU- GPU- Volumes- Ports- IPs- Images/Artifacts
SERVICE MANAGEMENT
- Labels- Groups/Namespaces- Dependencies- Load Balancing- Readiness Checking
FUNCTIONAL CAPABILITIES
© 2016 Mesosphere, Inc. All Rights Reserved. 17
SCALABILITYPerformance, Responsiveness, Efficiency
AVAILABILITYFault Tolerance, Robustness, Reliability, Resilience, Disaster Recovery
FLEXIBILITYFormat Support, Interoperability, Extensibility, Container Runtimes
USABILITYFamiliarity, Maintainability, Compatibility, Debuggability
PORTABILITYHost OS, Cloud, Bare-Metal, Hybrid
SECURITYAuditability, Secrets Management, Encryption, Isolation
NON-FUNCTIONAL QUALITIES
© 2016 Mesosphere, Inc. All Rights Reserved. 18
PLATFORMA base of technologies on which other technologies or processes are built.
PLATFORM AS A SERVICEA managed, multitenant platform.
CLOUD PLATFORMA hosted platform as a service on shared infrastructure.
PLATFORM SPECTRUM
Rainbow by Susanne Nilsson - CC BY-SA 2.0
© 2016 Mesosphere, Inc. All Rights Reserved.
INFRASTRUCTURE PLATFORMe.g., OpenStack, VMware vSphere
CONTAINER PLATFORMe.g., Kubernetes, DC/OS, Rancher
APPLICATION PLATFORMe.g., Cloud Foundry, Red Hat OpenShift, Deis
19
PLATFORMS
Oil Platform by Berardo62 - CC BY-SA 2.0
© 2016 Mesosphere, Inc. All Rights Reserved.
CLOUD INFRASTRUCTURE PLATFORMe.g., Amazon Elastic Compute Cloud, Microsoft Azure,
Google Compute Engine
CLOUD CONTAINER PLATFORMe.g., Google Container Engine, Azure Container Services,
Amazon EC2 Container Service
CLOUD APPLICATION PLATFORMe.g., Heroku, Google App Engine, Pivotal Web Services,
IBM Bluemix
20
CLOUD PLATFORMS
© 2016 Mesosphere, Inc. All Rights Reserved. 21
© 2016 Mesosphere, Inc. All Rights Reserved. 22
TODAY’SCONTESTANTS
- Docker Swarm
- ECS
- Kontena
- Nomad
- Kubernetes
- Rancher
- OpenShift
- DC/OS
Non-Exhaustive List
© 2016 Mesosphere, Inc. All Rights Reserved. 23
SCHEDULINGORCHESTRATION FUNCTIONAL COMPARISON (06/2016)
Placement
Kubernetes DC/OS ECS Swarm Nomad Cattle Kontena
Replication/Scaling
Readiness Checking
Resurrection
Rescheduling
Rolling Deployment
Collocation
Included External/Partial/Experimental
© 2016 Mesosphere, Inc. All Rights Reserved. 24
RESOURCE MANAGEMENTORCHESTRATION FUNCTIONAL COMPARISON (06/2016)
Memory
Kubernetes DC/OS ECS Swarm Nomad Cattle Kontena
CPU
GPU
Disk Space
Persistent Volumes
Ports
IPs
Included External/Partial/Experimental
Volumes
© 2016 Mesosphere, Inc. All Rights Reserved. 25
SERVICE MANAGEMENTORCHESTRATION FUNCTIONAL COMPARISON (06/2016)
Labels
Kubernetes DC/OS ECS Swarm Nomad Cattle Kontena
Groups/Namespaces
Dependencies
Load Balancing
Readiness Checking
Included External/Partial/Experimental
© 2016 Mesosphere, Inc. All Rights Reserved. 26
CONTAINERIZATION- Stability & maturity- Standard image format- Distinct from orchestration- API reverse compatibility guarantees
ORCHESTRATION- Feature parity- Abstraction convergence- Pluggable schedulers- Scale & responsiveness
DISTRIBUTED OPERATING SYSTEMS- Collection of components- Package management- System space vs user space- POSIX for the datacenter
THE FUTURE
© 2016 Mesosphere, Inc. All Rights Reserved. 27
DC/OS- Resource Management- Universal Containerizer- Container Orchestration- Pluggable Schedulers- Jobs & Services- Distributed System Services- Virtual Networking- Package Management- Services Catalog & Application Ecosystem- Day 2 Operational Focus
ENTERPRISE DC/OS- E2E Encryption- Identity & Access Management- Secrets Management- Support
© 2016 Mesosphere, Inc. All Rights Reserved. 28
"Let's face it, the universe is messy. It is nonlinear, turbulent, and chaotic. It is dynamic. It spends its time in transient behavior on its way to somewhere else, not in
mathematically neat equilibria. It self-organizes and evolves. It creates diversity, not uniformity. That's what
makes the world interesting, that's what makes it beautiful, and that's what makes it work."
Donella H. Meadows
(Thinking in Systems: A Primer)