如果需要CloudFormation,EKS会做什么?

时间:2018-08-29 19:22:21

标签: amazon-web-services kubernetes amazon-eks

如果在CloudFormation中需要这么多的配置(又是另一项AWS服务),AWS的Elastic Kubernetes服务(EKS)究竟会做什么?

我遵循(https://docs.aws.amazon.com/eks/latest/userguide/eks-ug.pdf)文档中的《 AWS EKS入门指南》,在其中看来,大量知识是运行EKS所必需的。
我误会了吗?

因此,除了学习Kubernetes .yaml清单定义之外,要在EKS上运行k8,AWS还希望您也学习其CloudFormation .yaml配置清单(这些都是PascalCase,而不是我可能添加的k8s camelCase)?

我知道EKS会对k8s的最新版本和控制平面进行一些管理,并且“默认情况下是安全的”,但除此之外吗?

那我为什么不立即使用kops在AWS上运行k8s,并处理稍微过时的k8s版本?
还是我应该做EKS + CloudFormation + kops,到那时GKE看起来是一个非常诱人的选择?

更新:
在这一点上,我真的认为EKS在详细搜索了EKS以及它如何如此依赖CloudFormation清单之后,只是CloudFormation的一个薄包装。
可能是企业对k8的惊人普及做出的反应,GKE通常没有任何实质性支持。
希望这可以帮助节省任何人评估EKS半成品服务的时间。

3 个答案:

答案 0 :(得分:4)

要在AWS上运行Kubernetes,基本上有2个选项:

  • 使用kops,它将在普通EC2机器中在后台创建主节点+工人节点
  • EKS + Cloudformation工作程序堆栈(您也可以使用Terraform作为部署工作程序或eksctl的替代方法,这将同时创建EKS集群和工作程序。我建议您遵循this workshop

在高度可用的设置中,仅EKS仅提供kubernetes集群的主节点。您仍然需要添加工作节点,以在其中创建容器。

我同时尝试了kops和EKS + Workers,最终使用了EKS,因为我发现它更易于设置和维护,并且更具容错能力。

答案 1 :(得分:1)

我以前也遇到过同样的困难,并且没有一篇文章可以一眼满足我需要做的事情。很多人只是建议使用eksctl,我认为这会造成a肿且难以管理的CloudFormation。

基本上,两个EKS都是Kubernetes的包装,Kubernetes与AWS之间的某些集成点仍需要手动完成。

我写了article,希望可以帮助您了解所有需要就位的过程

答案 2 :(得分:0)

EKS是kubernetes的托管控制平面,而Cloud-formation是基础架构模板服务。

如果您要优化成本,则可以在EC2机器上运行和管理控制平面(主节点),而不是EKS。使用EKS时,您必须支付基础设施(EC2 +网络)的费用。托管服务费(EKS价格)。

云形成为模板化和自动化基础架构提供了一个很好的界面。您可以使用Terraform代替CF