如果需要 CloudFormation,EKS 究竟做了什么?

What exactly does EKS do if CloudFormation is needed?

如果 CloudFormation(还)是另一个 AWS 服务需要如此多的配置,那么 AWS 的 Elastic Kubernetes 服务 (EKS) 究竟做了什么

我在 (https://docs.aws.amazon.com/eks/latest/userguide/eks-ug.pdf) 的文档中遵循了 AWS EKS 入门,其中 运行 EKS 似乎非常 需要 CloudFormation 知识。
我错了吗?

因此,除了学习 Kubernetes .yaml 清单定义外,为了 运行 EKS 上的 k8s,AWS 还希望您学习他们的 CloudFormation .yaml 配置清单(它们都是 PascalCase,而不是 k8s'我可能会添加 camelCase)?

我知道 EKS 对最新版本的 k8s 和控制平面进行一些管理,并且 "secure by default" 但除此之外?

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

更新:
在这一点上,在详细搜索 EKS 以及它如何如此依赖 CloudFormation 清单之后,我真的认为 EKS 只是 CloudFormation 的一个薄包装。
可能是对 k8s 惊人流行的商业反应,GKE 通常没有支持该服务的实质内容。
希望这有助于节省任何人评估 EKS 半生不熟服务的时间。

对于 运行 AWS 上的 Kubernetes,您基本上有 2 个选择:

  • 使用 kops,它将在普通 EC2 机器中创建主节点 + 工作节点
  • EKS + Cloudformation worker stack(您也可以使用 Terraform 作为部署 worker 的替代方案,或 eksctl,它将创建 EKS 集群和 worker。我建议您遵循 this workshop

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

我尝试了 kops 和 EKS + Workers,最后我使用了 EKS,因为我发现它更容易设置和维护,而且容错性更强。

我之前也有同样的困难,文章的none对需要做的事情可以一目了然地提出要求。很多人只是推荐使用 eksctl,在我看来这会造成一种臃肿且难以管理的 CloudFormation。

基本上EKS都只是Kubernetes的包装器,Kubernetes和AWS之间的一些集成点仍然需要手动完成。

我写了一个article希望能帮助你理解所有需要就地的过程

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

如果您想使用 EKS 优化 costs.For,您可以 运行 并在 EC2 机器上管理控制平面(主节点),而不是 EKS,您必须为底层基础设施付费(EC2+网络..)和托管服务费(EKS 价格)。

Cloud-formation 为模板和自动化提供了一个很好的界面,您的 infrastructure.You 可以使用 terraform 代替 CF