

 **帮助改进此页面** 

要帮助改进本用户指南，请选择位于每个页面右侧窗格中的**在 GitHub 上编辑此页面**链接。

# 根据容量因素为 Amazon Outposts 上的 Amazon EKS 集群选择实例类型和置放群组
<a name="eks-outposts-capacity-considerations"></a>

本主题提供以下指南：为 Outpost 上的本地 Amazon EKS 集群选择 Kubernetes 控制面板实例类型以及（可选）使用置放群组满足高可用性要求。

在 Outpost 上选择要用于本地集群的 Kubernetes 控制面板的实例类型（如 `m5`、`c5` 或 `r5`）前，请确认可用于 Outpost 配置的实例类型。确定可用实例类型后，请根据您的工作负载所需的节点数量选择实例大小（如 `large`、`xlarge` 或 `2xlarge`）。下表提供了有关选择实例大小的建议。

**注意**  
必须在 Outpost 上插入实例大小。请确保本地集群生命周期内，有足够的容量可供该大小的三个实例在 Outpost 上运行。有关可用 Amazon EC2 实例类型的列表，请参阅 [Amazon Outposts 机架功能](https://www.amazonaws.cn/outposts/rack/features/)中的“计算和存储”章节。


| 节点数量 | Kubernetes 控制面板实例实例大小 | 
| --- | --- | 
| 1–20 |  `large`  | 
| 21–100 |  `xlarge`  | 
| 101–250 |  `2xlarge`  | 
| 251–500 |  `4xlarge`  | 

Kubernetes 控制面板的存储需要每个本地集群拥有 246 GB 的 Amazon EBS 存储才能满足 `etcd` 所需的 IOPS。创建本地集群后，系统将为您自动预置 Amazon EBS 卷。

## 控制面板置放
<a name="outpost-capacity-considerations-control-plane-placement"></a>

如果不指定具有 `OutpostConfig.ControlPlanePlacement.GroupName` 属性的置放群组，则在您的 Outpost 上可用的基础容量下，为 Kubernetes 控制面板预置的 Amazon EC2 实例不会接受任何特定的硬件置放强制执行。

您可以使用置放群组满足 Outpost 上的本地 Amazon EKS 集群的高可用性要求。通过在集群创建期间指定置放群组，您可以影响 Kubernetes 控制面板实例的置放。这些实例分布在独立的基础硬件（机架或主机）上，从而最大限度地减少相关实例对硬件故障事件的影响。

您可以配置的分布类型取决于部署中的 Outpost 机架数量。
+  **在单个逻辑 Outpost 中使用一个或两个物理机架的部署**：您必须至少具有三台主机，这些主机通过为 Kubernetes 控制面板实例选择的实例类型进行配置。使用*主机级分布*的*分布*置放群组可确保所有 Kubernetes 控制面板实例在 Outpost 部署中可用的基础机架内的不同主机上运行。
+  **在单个逻辑 Outpost 中使用三个或更多物理机架的部署**：您必须至少具有三台主机，这些主机通过为 Kubernetes 控制面板实例选择的实例类型进行配置。使用*机架级分布*的*分布*置放群组可确保所有 Kubernetes 控制面板实例在 Outpost 部署中的不同机架上运行。或者，您可以使用上一个选项中描述的*主机级分布*置放群组。

您负责创建所需的置放群组。您在调用 `CreateCluster` API 时指定置放群组。有关置放群组及如何创建置放群组的更多信息，请参阅《Amazon EC2 用户指南》中的[置放群组](https://docs.amazonaws.cn/AWSEC2/latest/UserGuide/placement-groups.html)。
+ 指定置放群组后，Outpost 上必须有可用的插槽容量才能成功创建本地 Amazon EKS 集群。容量因您使用的主机或机架分布类型而异。如果没有足够的容量，则集群仍然处于 `Creating` 状态。您可以检查 [DescribeCluster](https://docs.amazonaws.cn/eks/latest/APIReference/API_DescribeCluster.html) API 响应运行状况字段上的 `Insufficient Capacity Error`。您必须释放容量才能使创建过程继续进行。
+ 在 Amazon EKS 本地集群平台和版本更新期间，使用滚动更新策略将您集群中的 Kubernetes 控制面板实例替换为新实例。在此替换过程中，每个控制面板实例都将终止，从而释放其相应插槽。新的更新实例将预置到相应插槽位置。更新的实例可能会放置在已发布的插槽中。如果该插槽被另一个不相关的实例占用，并且没有符合所需分布拓扑要求的剩余容量，则集群将保持 `Updating` 状态。您可以查看 [DescribeCluster](https://docs.amazonaws.cn/eks/latest/APIReference/API_DescribeCluster.html) API 响应运行状况字段上的相应 `Insufficient Capacity Error`。您必须释放容量，以便更新过程继续进行并重新建立之前的高可用性级别。
+ 在每个 Amazon 区域中，最多可以为每个账户创建 500 个置放群组。有关更多信息，请参阅《Amazon EC2 用户指南》中的[一般规则和限制](https://docs.amazonaws.cn/AWSEC2/latest/UserGuide/placement-groups.html#placement-groups-limitations-general)。