本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
EKS可扩展性最佳实践
本指南为扩展EKS集群提供了建议。扩展EKS集群的目标是最大限度地提高单个集群可以执行的工作量。与使用多个EKS集群相比,使用单个大型集群可以减少运营负载,但在多区域部署、租户隔离和集群升级等方面需要权衡取舍。在本文档中,我们将重点介绍如何使用单个集群实现最大的可扩展性。
如何使用本指南
本指南适用于负责在中创建和管理EKS集群的开发人员和管理员AWS。它侧重于一些通用的 Kubernetes 扩展实践,但它没有关于自我管理的 Kubernetes 集群或在 Anywhere 区域之外运行的集群的细节。AWS EKS
每个主题都有一个简短的概述,然后是大规模运营EKS集群的建议和最佳实践。无需按特定顺序阅读主题,未经测试和验证建议在您的集群中是否有效,则不应应用这些建议。
了解缩放维度
可扩展性不同于性能和可靠性
Kubernetes 中的扩展是多维的,没有适用于每种情况的特定设置或建议。我们可以为扩展提供指导的主要领域包括:
EKS集群中的 Kubernetes 控制平面包括所有AWS运行和自动扩展的服务(例如 Kub API ernetes 服务器)。缩放控制平面AWS是你的责任,但负责任地使用控制平面是你的责任。
Kubernetes 数据平面扩展处理集群和工作负载所需的AWS资源,但它们不在控制平面之外。EKS包括EC2实例、kubelet 和存储在内的资源都需要随着集群的扩展而进行扩展。
集群服务是在集群内部运行的 Kubernetes 控制器和应用程序,可为您的集群和工作负载提供功能。这些可以是EKS附加组件,也可以是您为合规性和集成而安装的其他服务或Helm图表。这些服务通常依赖于工作负载,随着工作负载的扩展,您的集群服务将需要随之扩展。
工作负载是您拥有集群的原因,并且应该与集群一起水平扩展。Kubernetes 中工作负载的集成和设置可以帮助集群扩展。Kubernetes 抽象也需要考虑架构问题,例如命名空间和服务。
超大缩放比例
如果您要将单个集群扩展到 1000 个节点或 50,000 个 pod 以上,我们很乐意与您交谈。我们建议您联系您的支持团队或技术客户经理,与专家取得联系,他们可以帮助您规划和扩展本指南中提供的信息。