

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# EKS 可扩展性最佳实践
<a name="scalability"></a>

**提示**  
 通过 Amazon EKS 研讨会@@ [探索](https://aws-experience.com/emea/smb/events/series/get-hands-on-with-amazon-eks?trk=4a9b4147-2490-4c63-bc9f-f8a84b122c8c&sc_channel=el)最佳实践。

本指南为扩展 EKS 集群提供了建议。扩展 EKS 集群的目标是最大限度地提高单个集群可以执行的工作量。与使用多个集群相比，使用单个大型 EKS 集群可以减少运营负载，但在多区域部署、租户隔离和集群升级等方面需要权衡取舍。在本文档中，我们将重点介绍如何使用单个集群实现最大的可扩展性。

## 如何使用本指南
<a name="_how_to_use_this_guide"></a>

本指南适用于负责在 AWS 中创建和管理 EKS 集群的开发人员和管理员。[它侧重于一些通用的 Kubernetes 扩展实践，但它没有具体说明自行管理的 Kubernetes 集群或使用 EKS Anywhere 在 AWS 区域之外运行的集群。](https://anywhere.eks.amazonaws.com/)

每个主题都有简要概述，然后是大规模运营 EKS 集群的建议和最佳实践。无需按特定顺序阅读主题，未经测试和验证建议在您的集群中是否有效，则不应应用这些建议。

## 了解缩放维度
<a name="_understanding_scaling_dimensions"></a>

可扩展性不同于性能和[可靠性](https://aws.github.io/aws-eks-best-practices/reliability/docs/)，在规划集群和工作负载需求时，应将这三者都考虑在内。随着集群的扩展，需要对其进行监控，但本指南不涵盖监控最佳实践。EKS 可以扩展到大规模，但你需要计划如何将集群扩展到 300 个节点或 5,000 个 Pod 以上。这些数字不是绝对数字，但它们来自于与多个用户、工程师和支持专业人员合作使用本指南。

Kubernetes 中的扩展是多维的，没有适用于每种情况的特定设置或建议。我们可以为扩展提供指导的主要领域包括：

 E@@ **KS 集群中的 Kubernetes 控制平面**包括 AWS 为你自动运行和扩展的所有服务（例如 Kubernetes API 服务器）。扩展控制平面是 AWS 的责任，但负责任地使用控制平面是您的责任。

 **Kubernetes 数据平面**扩展处理集群和工作负载所需的 AWS 资源，但它们不在 EKS 控制平面之内。包括 EC2 实例、kubelet 和存储在内的资源都需要随着集群的扩展而进行扩展。

 **集群服务**是在集群内部运行的 Kubernetes 控制器和应用程序，可为您的集群和工作负载提供功能。这些可以是 [EKS 附加组件](https://docs.aws.amazon.com/eks/latest/userguide/eks-add-ons.html)，也可以是您为合规性和集成而安装的其他服务或 Helm 图表。这些服务通常依赖于工作负载，随着工作负载的扩展，您的集群服务将需要随之扩展。

 **工作负载**是您拥有集群的原因，并且应该与集群一起水平扩展。Kubernetes 中工作负载的集成和设置可以帮助集群扩展。Kubernetes 抽象也需要考虑架构问题，例如命名空间和服务。

## 超大缩放比例
<a name="_extra_large_scaling"></a>

如果您要将单个集群扩展到 1,000 个节点或 50,000 个 Pod 以上，我们很乐意与您交谈。我们建议您联系您的支持团队或技术客户经理，与专家取得联系，他们可以帮助您规划和扩展本指南中提供的信息。如果您被选中入门，Amazon EKS 可以在单个集群中支持多达 100,000 个节点。