k8s-资源调度-Taint & Toleration


参考链接: https://kubernetes.io/zh-cn/docs/concepts/scheduling-eviction/taint-and-toleration/

一、Taint(污点)


1.1 添加污点

# 格式
kubectl taint nodes [Node Name] key=value:[effect]

# 例子
kubectl taint nodes node1 key1=value1:NoSchedule
给节点 node1 增加一个污点,它的键名是 key1,键值是 value1,效果是 NoSchedule。 这表示只有拥有和这个污点相匹配的容忍度的 Pod 才能够被分配到 node1 这个节点。

1.2 删除污点

# 格式
kubectl taint nodes [Node Name] key=value:[effect]-

# 例子
kubectl taint nodes node1 key1=value1:NoSchedule-

二、Toleration(容忍)


tolerations:
- key: "key1"
  operator: "Equal"
  value: "value1"
  effect: "NoSchedule"

或者

tolerations:
- key: "key1"
  operator: "Exists"
  effect: "NoSchedule"

例子:这里是一个使用了容忍度的 Pod:

apiVersion: v1
kind: Pod
metadata:
  name: nginx
  labels:
    env: test
spec:
  containers:
  - name: nginx
    image: nginx
    imagePullPolicy: IfNotPresent
  tolerations:
  - key: "example-key"
    operator: "Exists"
    effect: "NoSchedule"
    tolerationSeconds: 3600   # 容忍该污点3600s

三、知识点储备


  • 应用对象
    Taint:node
    Toleration:pod | 工作负载资源

  • operator
    Equal (默认),表示容忍相应的key、value、effect;
    Exists 表示存在相应的key,无需指定value;

  • effect
    NoSchedule:禁止调度
    NoExecute:禁止调度、已经调度却无容忍会被立即驱逐
    PreferNoSchedule:尽量避免调度

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值