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"

在这里插入图片描述

posted on   运维开发玄德公  阅读(77)  评论(0编辑  收藏  举报  

相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
· AI 智能体引爆开源社区「GitHub 热点速览」
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

导航

统计

点击右上角即可分享
微信分享提示