Skip to content

Latest commit

 

History

History
30 lines (27 loc) · 3.93 KB

File metadata and controls

30 lines (27 loc) · 3.93 KB

Docker Engine w/ Swarm Mode vs Kubernetes vs DC/OS

This document compares the three container orchestration frameworks: Docker Engine w/ Swarm Mode, Kubernetes and DC/OS.

Feature Docker Engine w/ Swarm mode Kubernetes DC/OS

Development

Docker for Mac/Windows

minikube

DC/OS Vagrant

Enterprise Offering

Docker Datacenter

Multiple Vendors

Mesosphere Enterprise DC/OS

Multiple clouds

Docker Cloud, Docker Machine Drivers, Docker for AWS/Azure

Turn Key Cloud

Mulitple clouds

On-premise

Yes

Yes

Yes

Cluster across multiple clouds

Yes

Yes (partly)

Yes (agents)

Service Discovery

Yes

Service

Yes (multiple: DNS-based and proxy-based/L4 load balancer)

Dynamic Scaling

Services, Distributed Application Bundle, Stack

Replica Set, Replication Controller, Deployment, Horizontal Pod Autoscaling

Marathon app spec (instance count) and multiple options

Exposing a service

Routing mesh

type=LoadBalancer in Deployment

Multiple (direct placement on public agent or, preferred, via Marathon-LB

Run-once job

docker run

Job

Jobs

Namespace

docker-compose -p <namespace>

Namespace

via labels in System Marathon

Global service

--mode=global

DaemonSet

Unique Attribute

Maven

fabric8-maven-plugin

fabric8-maven-plugin

Volumes

Docker Volumes

Persistent Volumes

local persistent volumes as well as external persistent volumes

Multiple Master

Yes

Yes

Yes

Multi-host networking

Yes

Yes

Yes

Rolling Update

https://github.com/arun-gupta/docker-scripts/blob/master/rolling-updates.adoc

https://github.com/arun-gupta/kubernetes-java-sample/tree/master/rolling-update

ZDD Lab

Container distribution strategies

Automatic?

Automatic, but custom schedulers supported.

Automatic

Affinity

Labels

Node (1.2) and Pod (1.4) affinity http://kubernetes.io/docs/user-guide/node-selection/

Marathon constraints and pods (in 1.9)

Constraints

-c, -m

Labels

Marathon constraints

Commercially supported

Docker Data Center and others

Google, Apprenda, Canonical, CoreOS, Cloud RTI others?

Mesosphere

Creating Couchbase Cluster

blog

blog

blog