在我的kubernetes仪表板中,我看到一个节点具有标签
node-role.kubernetes.io/master:
结果是,除此节点外,我所有的豆荚都部署在群集上。(当我增加副本时,不会在主节点上部署POD(如何删除标签,我尝试了Kubernetes故障射击指南
以下命令未成功
kubectl taint nodes --all node-role.kubernetes.io/master:-
kubectl taint nodes --all node-role.kubernetes.io/master-
kubectl taint nodes --all node-role.kubernetes.io/master:NoSchedule-
它们两个都产生了消息(SNIP(
taint "node-role.kubernetes.io/master:" not found
taint "node-role.kubernetes.io/master:" not found
taint "node-role.kubernetes.io/master:NoSchedule" not found
预期输出应为:
- 豆荚应部署在每个节点上(包括主节(
我的版本是 v1.14.1
首先检查污染物是否存在nodename
kubectl describe node <nodename> | grep Taints
您将获得这样的东西(Master或Worker_node(
node-role.kubernetes.io/master:NoSchedule
从节点中删除污点,就像这样运行(在我的情况下是主节点(
kubectl taint node master node-role.kubernetes.io/master:NoSchedule-
确保在noschedule之后添加 -
尝试 kubectl taint nodes --all node-role.kubernetes.io/master-
没有:
,也没有第二个命令。
noschedule只是污点的结果,不需要明确删除。
我必须运行 kubectl taint nodes <node-name> node-role.kubernetes.io/control-plane-
才能删除污点。
我通过首先识别群集中的节点
中确定了这一点 kubectl get nodes
。
然后确定节点是否被污染,
kubectl describe node <node-name> | grep Taints
输出
Taints: node-role.kubernetes.io/control-plane:NoSchedule
如果污染了节点,则可以运行
kubectl taint nodes <node-name> node-role.kubernetes.io/control-plane-