kubernets的报错:0/2 nodes are available: 1 node(s) had taint {env_role: }, that the pod didn't tolerate, 1 node(s) had taint {node-role.kubernetes.io/master: }, that the pod didn't tolerate
报错内容:
[root@test ~]# kubectl describe pod web-96d5df5c8-k265c Name: web-96d5df5c8-k265c Namespace: default Priority: 0 Node: <none> Labels: app=web pod-template-hash=96d5df5c8 Annotations: <none> Status: Pending IP: IPs: <none> Controlled By: ReplicaSet/web-96d5df5c8 Containers: nginx: Image: nginx Port: <none> Host Port: <none> Environment: <none> Mounts: /var/run/secrets/kubernetes.io/serviceaccount from default-token-pl58b (ro) Conditions: Type Status PodScheduled False Volumes: default-token-pl58b: Type: Secret (a volume populated by a Secret) SecretName: default-token-pl58b Optional: false QoS Class: BestEffort Node-Selectors: <none> Tolerations: node.kubernetes.io/not-ready:NoExecute op=Exists for 300s node.kubernetes.io/unreachable:NoExecute op=Exists for 300s Events: Type Reason Age From Message ---- ------ ---- ---- ------- Warning FailedScheduling 39m default-scheduler 0/2 nodes are available: 1 node(s) had taint {env_role: },
that the pod didn't tolerate, 1 node(s) had taint {node-role.kubernetes.io/master: }, that the pod didn't tolerate.
检查一下看看node是否被打污点了
[root@test ~]# kubectl describe node node01 |grep Taint
Taints: env_role:NoSchedule
污点值有三个
- NoSchedule:一定不被调度
- PreferNoSchedule:尽量不被调度【也有被调度的几率】
- NoExecute:不会调度,并且还会驱逐Node已有Pod
果不其然,node节点变成了NoSchedule
去掉污点
[root@test ~]# kubectl taint node node01 env_role:NoSchedule- node/node01 untainted [root@test ~]# kubectl describe node node01 |grep Taint Taints: env_role:PreferNoSchedule
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步