亲和性(affinity) 如何理解拓扑域(topologyKey)?

亲和性(affinity) 如何理解拓扑域(topologyKey)?

官方描述

pod 间亲和性与反亲和性
 Pod 间亲和性与反亲和性的规则格式为“如果 X 上已经运行了一个或多个满足规则 Y 的 Pod, 则这个 Pod 应该(或者在反亲和性的情况下不应该)运行在 X 上”。 这里的 X 可以是节点、机架、云提供商可用区或地理区域或类似的拓扑域, Y 则是 Kubernetes 尝试满足的规则。

最终pod调度到哪里的范围就是拓扑域。k8s根据用户的匹配规则获取到一个满足条件的pod所在的拓扑域(可能是某个node,或者是某个region,某个zone),接下来,如果是亲和性,就把当前pod调度到这个拓扑域里面的节点上。如果是反亲和,就把它调度到别的拓扑域上面。
图解如下:
图解拓扑域

  1. 根据拓扑域配置(值相同就是同一个区域):topologyKey=zone,所有的节点被划分为两个区域
  2. 根据用户的配置规则我们找到指定的pod所在的区域是zone=a,pod1在节点node3上面
  3. 假如我们要部署的pod亲和性为反亲和,那么就把pod2部署到了区域zone=b上
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值