据我所知,Kubernetes / Mesosphere是一个集群管理器,Docker Swarm是一个编排工具。我想了解它们有何不同? Docker Swarm是否与Docker世界中的POSIX API类似,而Kubernetes / Mesosphere是不同的实现?或者它们是不同的层?
答案 0 :(得分:24)
披露:我是Kubernetes的首席工程师
Kubernetes是一个集群编排系统,受到在Google上运行的容器编排的启发。由许多构建该系统的相同工程师构建。它从一开始就被设计为一个用于从容器构建分布式应用程序的环境。它包括用于复制和服务发现的原语作为核心原语,其中 - 通过Mesos中的框架添加这些原语。 Kubernetes的主要目标是构建,运行和管理分布式系统的系统。
Swarm是Docker努力扩展现有的Docker API,使一组机器看起来像一个Docker API。从根本上说,我们在Google和其他地方的经验表明,节点API不足以支持群集API。您可以在此处看到大量有关此问题的讨论:https://github.com/docker/docker/pull/8859和此处:https://github.com/docker/docker/issues/8781
答案 1 :(得分:11)
Swarm是Docker的一个非常简单的附加组件。它目前不提供Kubernetes的所有功能。目前很难预测这些工具的生态系统将如何发挥作用,Kubernetes可能会使用Swarm。