可否通过Pod亲和/反亲和规则触发AKS节点自动扩容?
AKS集群自动扩缩容下Pod强制反亲和调度需求确认
问题背景
在启用了autoscaling(自动扩缩容)功能的AKS集群中配置节点池,计划实现如下调度场景:
- 集群初始状态仅有1个节点,节点上运行着携带
deployment=x标签的Pod A - 创建Pod B时配置
podAntiAffinity规则,要求禁止将Pod B调度到运行有deployment=x标签Pod的节点上,对应亲和性配置片段如下:
affinity: podAntiAffinity: requiredDuringSchedulingIgnoredDuringExecution: - labelSelector: matchExpressions: - key: deployment operator: In values: - x topologyKey: kubernetes.io/hostname
- 预期调度行为:Pod B创建后先处于Pending状态,直到集群自动扩缩容组件新增满足
podAntiAffinity规则的新节点后,再将Pod B调度到新节点上
测试初期观测到Pod B被调度到与Pod A相同的节点,因此需要确认上述需求是否可实现。
当前测试集群Kubernetes版本信息:
Kubernetes Version: 1.22.6
编辑补充
经实测,上述示例配置确实可以触发节点扩容,效果符合预期,目前可正常满足需求。
内容的提问来源于stack exchange,提问作者anupshrestha
相关产品推荐
相关产品推荐

