当我们想要在其上部署 dockerize 应用程序时,Amazon Elastic Container Service 与 Kubernetes 有何不同?

How Amazon Elastic Container Service is Different from Kubernetes when we want to deploy our dockerize application over it?

我正打算开始我的项目,但在选择 Amazon ECS 和 Kubernetes 之间有点困惑,也许我真的是微服务架构的初学者。

如果有人能展示一些在更容易处理的平台上部署我的 docker 容器的路径,我将不胜感激。

谢谢

这是我脑海中的差异列表:

AWS ECS/Kubernetes:

  • 专有 AWS 实施/开源解决方案

  • 在 AWS 上运行/受大多数云提供商和内部部署支持

  • 任务定义/PODs具有不同的特征

  • 在您的 EC2 机器上运行或允许使用 Fargate 进行无服务器(测试版)/在任何(physical/virtual/cloud)台机器集群上运行 运行 kubernetes 控制器。

  • 支持 AWS VPC/支持多种网络模型

我还认为 kubernetes 的学习曲线稍微陡峭,但最终提供了更多的自由,并且考虑到广泛采用,它可能是未来更安全的选择。

两个系统都支持的功能:

  • 水平应用程序可扩展性
  • 集群可扩展性
  • 负载平衡
  • 滚动升级
  • 记录(使用额外的记录系统)
  • 容器运行状况检查
  • API

亚马逊屈服于客户压力,目前在测试版 (EKS) 中拥有托管的 kubernetes 支持。

*编辑:EKS 现已发布 - 但与 google GKE 相比,集群控制器节点需要额外收费。

这里有一个 article 关于这个话题。