在现有 EKS 集群上启用 EKS 自动模式 - Amazon EKS
Amazon Web Services 文档中描述的 Amazon Web Services 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅 中国的 Amazon Web Services 服务入门 (PDF)

帮助改进此页面

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

在现有 EKS 集群上启用 EKS 自动模式

您可以在现有 EKS 集群上启用 EKS 自动模式。

注意

EKS 自动模式需要使用 Kubernetes 版本 1.29 或更高版本。EKS 自动模式尚未在 ap-southeast-7mx-central-1 Amazon 区域开放。

Amazon 支持下列迁移:

Amazon 不支持下列迁移:

  • 将卷从 EBS CSI 控制器(使用 EKS 附加组件)迁移到 EKS 自动模式 EBS CIS 控制器(由 EKS 自动模式管理)。由不同配置器创建的 PVC 无法互相挂载,因为它们使用的是两个不同的 Kubernetes 卷预调配程序。

  • 将负载均衡器从 Amazon 负载均衡器控制器迁移到 EKS 自动模式

    您可以在 Amazon EKS 自动模式集群上安装 Amazon 负载均衡器控制器。使用 IngressClassloadBalancerClass 选项将服务和 Ingress 资源关联到 负载均衡器控制器或 EKS 自动模式。

  • 使用备用 CNI 或其他不受支持的网络配置迁移 EKS 集群

迁移参考

按照以下迁移参考将 Kubernetes 资源配置为由自主管理型控制器或 EKS 自动模式所有。

能力 资源 字段 自主管理型 EKS 自动模式

数据块存储

StorageClass

provisioner

ebs.csi.aws.com

ebs.csi.eks.amazonaws.com

负载均衡

Service

loadBalancerClass

service.k8s.aws/nlb

eks.amazonaws.com/nlb

负载均衡

IngressClass

controller

ingress.k8s.aws/alb

eks.amazonaws.com/alb

负载均衡

IngressClassParams

apiversion

elbv2.k8s.aws/v1beta1

eks.amazonaws.com/v1

负载均衡

TargetGroupBinding

apiversion

elbv2.k8s.aws/v1beta1

eks.amazonaws.com/v1

计算

NodeClass

apiVersion

karpenter.sh/v1alpha5

eks.amazonaws.com/v1

迁移 EBS 卷

将工作负载迁移到 EKS 自动模式时,由于 CSI 驱动程序预调配程序不同,您需要处理 EBS 卷迁移问题:

  • EKS 自动模式预调配程序:ebs.csi.eks.amazonaws.com

  • 开源 EBS CSI 预调配程序:ebs.csi.aws.com

请按照以下步骤迁移持久性卷:

  1. 修改卷保留策略:将现有平台版本(PV)由 persistentVolumeReclaimPolicy 更改为 Retain,确保底层 EBS 卷不会删除。

  2. 从 Kubernetes 中删除 PV:删除旧的 PV 资源,但保留实际的 EBS 卷。

  3. 通过静态预置创建新 PV:创建一个引用相同 EBS 卷但与目标 CSI 驱动程序结合使用的新 PV。

  4. 绑定到新 PVC:使用 volumeName 字段创建一个专门引用 PV 的新 PVC。

注意事项

  • 确保在开始迁移之前应用程序已停止。

  • 在开始迁移过程之前,备份数据。

  • 需要对每个持久性卷执行此过程。

  • 必须更新工作负载才能使用新 PVC。

迁移负载均衡器

不能将现有负载均衡器从自主管理型 Amazon 负载均衡器控制器直接转移到 EKS 自动模式。相反,您必须实施蓝绿部署策略。这涉及维护现有的负载均衡器配置,同时在托管式控制器下创建新的负载均衡器。

为了尽可能减少服务中断,我们建议采用基于 DNS 的流量转移方法。首先使用 EKS 自动模式创建新的负载均衡器,同时保持现有配置正常运行。然后使用 DNS 路由(例如 Route 53)将流量从旧负载均衡器逐渐转移到新负载均衡器。成功迁移流量并验证新配置后,您可以停用旧负载均衡器和自主管理型控制器。