帮助改进此页面
想为本用户指南做出贡献? 选择位于每个页面右侧窗格中的在 GitHub 上编辑此页面链接。您的贡献有助于我们的用户指南为每个人提供更充分的参考。
在启用 EKS 自动模式的 EKS 集群中运行工作负载时,您可能需要控制特定工作负载是在 EKS 自动模式节点上运行还是其他计算类型上运行。本主题介绍如何使用节点选择器和亲和性规则,来确保您的工作负载在需要的计算基础设施上调度。
本主题中的示例演示如何使用 eks.amazonaws.com/compute-type
标签要求或阻止在 EKS 自动模式节点上部署工作负载。这在同时运行 EKS 自动模式和其他计算类型(例如自主管理型 Karpenter 预置器或 EKS 托管式节点组)的混合模式集群中特别有用。
EKS 自动模式节点已将标签 eks.amazonaws.com/compute-type
的值设置为 auto
。您可以使用此标签来控制是否将工作负载部署到由 EKS 自动模式管理的节点。
要求将工作负载部署到 EKS 自动模式节点
注意
此 nodeSelector
值对于 EKS 自动模式并非必需。此 nodeSelector
值仅当您在混合模式下运行集群,节点类型不由 EKS 自动模式管理时才重要。例如,您可以使用 EKS 托管式节点组将静态计算容量部署到集群,并使用由 EKS 自动模式管理的动态计算容量。
您可以将此 nodeSelector
添加到部署或其他工作负载中,以要求 Kubernetes 将其调度到 EKS 自动模式节点上。
apiVersion: apps/v1
kind: Deployment
spec:
nodeSelector:
eks.amazonaws.com/compute-type: auto
要求不将工作负载部署到 EKS 自动模式节点
您可以将此 nodeAffinity
添加到部署或其他工作负载中,以要求 Kubernetes 不将其调度到 EKS 自动模式节点上。
affinity:
nodeAffinity:
requiredDuringSchedulingIgnoredDuringExecution:
nodeSelectorTerms:
- matchExpressions:
- key: eks.amazonaws.com/compute-type
operator: NotIn
values:
- auto