From what I understand, Kubernetes/Mesosphere is a cluster manager and Docker Swarm is an orchestration tool. I am trying to understand how they are different? Is Docker Swarm analogous to the POSIX API in the Docker world while Kubernetes/Mesosphere are different implementations? Or are they different layers?
2 Answers
Disclosure: I'm a lead engineer on Kubernetes
Kubernetes is a cluster orchestration system inspired by the container orchestration that runs at Google. Built by many of the same engineers who built that system. It was designed from the ground up to be an environment for building distributed applications from containers. It includes primitives for replication and service discovery as core primitives, where-as such things are added via frameworks in Mesos. The primary goal of Kubernetes is a system for building, running and managing distributed systems.
Swarm is an effort by Docker to extend the existing Docker API to make a cluster of machines look like a single Docker API. Fundamentally, our experience at Google and elsewhere indicates that the node API is insufficient for a cluster API. You can see a bunch of discussion on this here: https://github.com/docker/docker/pull/8859 and here: https://github.com/docker/docker/issues/8781

- 4,116
- 3
- 15
- 7
Swarm is a very simple add-on to Docker. It currently does not provide all the features of Kubernetes. It is currently hard to predict how the ecosystem of these tools will play out, it's possible that Kubernetes will make use of Swarm.

- 6,716
- 6
- 41
- 54
-
1Could you elaborate on the features Kubernetes provides over Swarm? I'm still trying to understand the exact differences myself. – Chris Mar 01 '15 at 08:37
-
1Swarm can place a container in cluster, it won't reschedule it, for example. Kubernetes also has a lot more features on the networking side. – errordeveloper Mar 02 '15 at 21:10
-
2Kubernetes adds functionality like Service discovery, application health checking, replication, staged rollouts, that make it easy to build and manage distributed systems. – brendan Mar 12 '15 at 21:18