Kubernetes的亲和性和反亲和性用于控制Pod调度。亲和性指定Pod应在哪些节点上运行,反亲和性则避免特定节点。分为节点和Pod两种,策略有硬性和软性之分。配置时使用标签匹配和topologyKey。常见问题包括资源不足和规则过于严格,解决方法有检查资源、污点容忍度和审查规则。
本文记录了一次排查应用慢的过程,发现是应用 app-b 在 HPA 扩容调度时调度到了同一节点上,导致节点的网络 IO、CPU 使用剧增,影响到了应用 app-a。解决办法是利用 Pod 的反亲和性,将应用 app-a 和应用 app-b 从调度层隔离开来。
完成下面两步后,将自动完成登录并继续当前操作。