我正在运行一个具有一个节点管理器和4个节点工作器的Kubernetes集群。 当我启动一个pod时,这一个正确地分配给了一个工人,它开始运行。 当我关闭分配了Pod的工作程序时,管理员在40秒后检测到节点NotReady,并在2秒后Pod终止。 我为我的吊舱设置了此公差:
spec:
tolerations:
- key: "node.kubernetes.io/unreachable"
operator: "Exists"
effect: "NoExecute"
tolerationSeconds: 2
- key: "node.kubernetes.io/not-ready"
operator: "Exists"
effect: "NoExecute"
tolerationSeconds: 2
所以行为就是我所期望的。 我没想到的是,在工作人员返回“就绪”之前,豆荚一直处于“终止”状态。 当工作人员再次启动时,吊舱将从我的系统中删除。 我的期望是,当toleranceSeconds过期后,必须将Pod安排在其他工人上并再次运行。 在具有版本的群集下面:
docker1 Ready <none> 21d v1.17.4 192.168.1.2 <none> CentOS Linux 7 (Core) 5.5.9-1.el7.elrepo.x86_64 docker://19.3.8
docker2 Ready <none> 21d v1.17.4 192.168.1.3 <none> CentOS Linux 7 (Core) 5.5.11-1.el7.elrepo.x86_64 docker://19.3.8
docker3 Ready <none> 21d v1.17.4 192.168.1.4 <none> CentOS Linux 7 (Core) 5.6.4-1.el7.elrepo.x86_64 docker://19.3.8
docker4 Ready <none> 19d v1.17.4 192.168.1.5 <none> CentOS Linux 7 (Core) 5.6.4-1.el7.elrepo.x86_64 docker://19.3.8
manager Ready master 22d v1.17.4 192.168.1.1 <none> CentOS Linux 7 (Core) 5.5.9-1.el7.elrepo.x86_64 docker://19.3.8
有人可以建议我我所缺少的内容吗,或者这是正确的行为吗?