More Related Content Similar to Container Orchestration Wars (Micro Edition) (20) Container Orchestration Wars (Micro Edition)1. © 2016 Mesosphere, Inc. All Rights Reserved. 1
CONTAINER
ORCHESTRATION
WARS
( Micro Edition )
2. © 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
3. © 2016 Mesosphere, Inc. All Rights Reserved. 3
Revisionist History of Distributed Computing
Container Orchestration
Platforms
Competitive Landscape
The Future
AGENDA
4. © 2016 Mesosphere, Inc. All Rights Reserved. 4
IN THE BEGINNING...
Sombrero Galaxy by ESA/Hubble - CC BY 4.0
5. © 2016 Mesosphere, Inc. All Rights Reserved.
Hardware
Operating System
Application
5
COMPUTERS
6. © 2016 Mesosphere, Inc. All Rights Reserved.
Hardware
Operating System
Web Application
6
INTERNET
- Remote Users!
7. © 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
8. © 2016 Mesosphere, Inc. All Rights Reserved.
Service Service Service
Web App Web App Web App
Hardware
Operating
System
8
SERVICE-
ORIENTED
ARCHITECTURE
- Separation of
concerns
- Optimization of
bottlenecks
- Smaller teams
- API Contracts
- Data replication
- Complicated
provisioning
- Dependency
management
Operating
System
Operating
System
Hardware Hardware
9. © 2016 Mesosphere, Inc. All Rights Reserved.
Service Service Service
Web App Web App Web App
Machine
Operating
System
9
HARDWARE
VIRTUALIZATION
- Fast provisioning
- Isolation
- Portability
- Utilization
- Configuration
Management
- Virtual Networking
- Credential
management
Operating
System
Operating
System
Infrastructure
Machine Machine
10. © 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
11. © 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
12. © 2016 Mesosphere, Inc. All Rights Reserved.
Service
Container Runtime Container Runtime Container Runtime
OS
12
CONTAINER
ORCHESTRATION
OS OS
Container Orchestration
Machine
Infrastructure
Machine Machine
App ServiceServiceAppApp
13. © 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.)
15. © 2016 Mesosphere, Inc. All Rights Reserved.
Orchestration
15
Machine Infrastructure
Web Apps & Services
Scheduling
Resource Management
Container Runtime
Machine & OS
Service Management
CONTAINER
ORCHESTRATION
Machine & OS Machine & OS
Container Runtime Container Runtime
Expanded
16. © 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
17. © 2016 Mesosphere, Inc. All Rights Reserved. 17
SCALABILITY
Performance, Responsiveness, Efficiency
AVAILABILITY
Fault Tolerance, Robustness, Reliability, Resilience,
Disaster Recovery
FLEXIBILITY
Format Support, Interoperability, Extensibility,
Container Runtimes
USABILITY
Familiarity, Maintainability, Compatibility,
Debuggability
PORTABILITY
Host OS, Cloud, Bare-Metal, Hybrid
SECURITY
Auditability, Secrets Management, Encryption,
Isolation
NON-FUNCTIONAL QUALITIES
18. © 2016 Mesosphere, Inc. All Rights Reserved. 18
PLATFORM
A base of technologies on which other technologies or processes are built.
PLATFORM AS A SERVICE
A managed, multitenant platform.
CLOUD PLATFORM
A hosted platform as a service on shared infrastructure.
PLATFORM SPECTRUM
Rainbow by Susanne Nilsson - CC BY-SA 2.0
19. © 2016 Mesosphere, Inc. All Rights Reserved.
INFRASTRUCTURE PLATFORM
e.g., OpenStack, VMware vSphere
CONTAINER PLATFORM
e.g., Kubernetes, DC/OS, Rancher
APPLICATION PLATFORM
e.g., Cloud Foundry, Red Hat OpenShift, Deis
19
PLATFORMS
Oil Platform by Berardo62 - CC BY-SA 2.0
20. © 2016 Mesosphere, Inc. All Rights Reserved.
CLOUD INFRASTRUCTURE PLATFORM
e.g., Amazon Elastic Compute Cloud, Microsoft Azure,
Google Compute Engine
CLOUD CONTAINER PLATFORM
e.g., Google Container Engine, Azure Container Services,
Amazon EC2 Container Service
CLOUD APPLICATION PLATFORM
e.g., Heroku, Google App Engine, Pivotal Web Services,
IBM Bluemix
20
CLOUD PLATFORMS
22. © 2016 Mesosphere, Inc. All Rights Reserved. 22
TODAY’S
CONTESTANTS
- Docker Swarm
- ECS
- Kontena
- Nomad
- Kubernetes
- Rancher
- OpenShift
- DC/OS
Non-Exhaustive List
23. © 2016 Mesosphere, Inc. All Rights Reserved. 23
SCHEDULING
ORCHESTRATION 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
24. © 2016 Mesosphere, Inc. All Rights Reserved. 24
RESOURCE MANAGEMENT
ORCHESTRATION 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
25. © 2016 Mesosphere, Inc. All Rights Reserved. 25
SERVICE MANAGEMENT
ORCHESTRATION FUNCTIONAL COMPARISON (06/2016)
Labels
Kubernetes DC/OS ECS Swarm Nomad Cattle Kontena
Groups/Namespaces
Dependencies
Load Balancing
Readiness Checking
Included External/Partial/Experimental
26. © 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
27. © 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
28. © 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)