Kubernetes 和 Amazon ECS 有什么区别

What is the difference between Kubernetes and Amazon ECS

Amazon ECS 和 Kubernetes 实现架构有什么区别?

我需要决定选择一种云中容器管理技术。 选择这些技术的决定因素是什么?

我正在使用 Docker 来创建和执行容器。

对不起,你的问题毫无意义。就像在问

What is better? A rental car or a Ford?

AWS提供IaaS,Kubernetes是管理分布式容器的系统。您可以 运行 各种平台上的 Kubernetes,包括 AWS-provided 基础设施。

你想付钱给亚马逊来托管你的 Docker 容器吗? You can do that.

或者您想在 运行 您的 Docker 容器中创建自己的 "cloud"?然后给自己一些裸机并在顶部使用(例如)CoreOS and Kubernetes

我在使用容器和不同的容器解决方案(包括 Amazon ECS 和 Kubernetes)方面拥有丰富的经验,我发现 Kubernetes 是在不同环境中管理容器的最有用的解决方案之一。

Kubernetes 的主要优点 - 它是一个成熟的解决方案,最初由 Google 开发,但它完全是 open-source!这意味着任何人都可以深入了解并(如有必要)根据自己的目的修改和更新源代码。

Kubernetes 的另一个巨大优势 - 它是完全免费的。这意味着您可以将它和 运行 安装在您自己的基础架构上,而无需为 Kubernetes 本身支付任何额外费用。

您可能 运行 Kubernetes 上的巨量 different providers。 运行 Kubernetes 集群在什么环境下并不重要——您应该只关心 Kubernetes 集群本身。这允许您 运行,例如,在 Vagrant 上本地开发集群,在 public 云(如 AWS 或 GCE)和私有云(如 OpenStack)或仅使用一些 libvirt 解决方案上构建分布式生产环境(例如使用 CoreOS)。同样,从 Kubernetes 的角度来看——使用什么基础设施解决方案并不重要——唯一的要求是 Kubernetes-enabled.

谈到 Amazon ECS - 这是一个专有的 vendor-locked 解决方案。它还可以为您提供与 Kubernetes 相同的性能,但不会为您提供相同的灵活性。

因此,在全球范围内,人们可能会同时比较 Amazon ECS 和 Kubernetes,但 Kubernetes 更加灵活并且 ready-to-customize 解决方案。