我使用Rancher设置了一个集群,其中包含3个Centos节点和1个Windows节点.我想设置一个永远不会在Windows节点上运行的部署,所以我在部署spec.template.spec.nodeSelector: kubernetes.io/os: linux中设置了
它似乎正在运行,但部署陷入了挂起状态,出现了以下错误:
警告FailedScheduling默认调度程序0/4节点可用:1节点不匹配节点选择器,3节点有污染{cattle.io/os: linux},这是荚所不能容忍的。
有什么见解吗?
发布于 2020-08-31 14:13:18
调度程序无法在linux节点上调度pod,因为这些节点已经受到了污染。因此,您需要在部署的pod规范中添加公差。
tolerations:
- key: "cattle.io/os"
operator: "Equal"
value: "linux"
effect: "NoSchedule"还向windows节点添加特定的污染,以便只有具有特定公差的特定吊舱才能调度到windows节点上。
kubectl taint nodes windowsnode cattle.io/os=windows:NoSchedulehttps://stackoverflow.com/questions/63672326
复制相似问题