Swarm ist ein sehr einfaches Add-on für Docker. Es bietet derzeit nicht alle Funktionen von Kubernetes. Es ist derzeit schwer vorherzusagen, wie das Ökosystem dieser Werkzeuge auskommen wird. Es ist möglich, dass Kubernetes Swarm nutzen wird.
Soweit ich weiß, ist Kubernetes / Mesosphere ein Cluster-Manager und Docker Swarm ist ein Orchestrierungstool. Ich versuche zu verstehen, wie anders sie sind. Ist Docker Swarm analog zur POSIX API in der Docker-Welt, während Kubernetes / Mesosphere unterschiedliche Implementierungen sind? Oder sind sie unterschiedliche Schichten?
Offenlegung: Ich bin ein leitender Ingenieur für Kubernetes
Kubernetes ist ein Cluster-Orchestrierungssystem, das von der Container-Orchestrierung inspiriert ist, die bei Google läuft. Erbaut von vielen derselben Ingenieure, die dieses System gebaut haben. Es wurde von Grund auf als Umgebung für den Aufbau verteilter Anwendungen aus Containern konzipiert. Es enthält Primitive für die Replikation und Service Discovery als Kern-Primitive, wobei solche Dinge über Frameworks in Mesos hinzugefügt werden. Das primäre Ziel von Kubernetes ist ein System zum Aufbau, Betrieb und Management verteilter Systeme.
Swarm ist ein Versuch von Docker, die vorhandene Docker-API so zu erweitern, dass ein Cluster von Maschinen wie eine einzige Docker-API aussieht. Unsere Erfahrung bei Google und anderswo zeigt, dass die Knoten-API für eine Cluster-API nicht ausreicht. Sie können eine Reihe von Diskussionen hier sehen: Ссылка und hier: Ссылка