k8s-node添加Taint
文章目录
1. 语法
kubectl taint node [node] key=value[effect]
说明:
其中[effect] 可取值: [ NoSchedule | PreferNoSchedule | NoExecute ]
- NoSchedule: 一定不能被调度
- PreferNoSchedule: 尽量不要调度
- NoExecute: 不仅不会调度, 还会驱逐Node上已有的Pod
2. 添加污点
2.1 添加NoSchedule 污点
- 语法
kubectl taint node node_name key1=value1:NoSchedule
- 示例
kubectl taint nodes master1 node-role.kubernetes.io/master=:NoSchedule
说明:
key 为 node-role.kubernetes.io/master,这个key可以自定义。
value为空。
effect为NoSchedule。
- 查看结果如下
用describe即可看到污点
kubectl describe node aik8sm2 |grep Taint Taints: node-role.kubernetes.io/master:NoSchedule
2.2 添加 NoExecute污点
- 语法
kubectl taint node node_name key1=value1:NoExecute
3. 删除污点
3.1 删除 NoSchedule 污点
- 语法
kubectl taint node node1 key1:NoSchedule-
这里的key可以不用指定value
- 示例
查看
[root@AiK8sM1 ~]# kubectl describe node aik8sm2 |grep Taint Taints: node-role.kubernetes.io/master:NoSchedule
删除
[root@AiK8sM1 ~]# kubectl taint node aik8sm2 node-role.kubernetes.io/master:NoSchedule- kubectl taint node :NoSchedule-
再次查看,污点没有了
[root@AiK8sM1 ~]# kubectl describe node aik8sm2 |grep Taint Taints: <none>
3.2 删除 NoExecute 污点
kubectl taint node node1 key1:NoExecute-
3.3 删除指定key所有的effect
kubectl taint node node1 key1-
4. 其他操作
4.1 not-ready时的taint
-
描述
node是 node ready 状态时,节点是NoSchedule -
查看如下
kubectl describe node aik8sm2 |grep Taint Taints: node.kubernetes.io/not-ready:NoSchedule-
说明:
- key指明了是not-ready 。
- 这个污点是删除不掉的,除非node变成ready
4.2 污点处启动pod
增加 tolerations部分,实例如下
apiVersion: extensions/v1beta1 kind: DaemonSet metadata: name: node-exporter namespace: monitoring labels: k8s-app: node-exporter spec: template: metadata: labels: k8s-app: node-exporter spec: containers: - image: harbor.xxx.com/kubernetes/node-exporter name: node-exporter ports: - containerPort: 9100 protocol: TCP name: http tolerations: - key: "node-role.kubernetes.io/master" operator: "Exists" effect: "NoSchedule"
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」