因此,试图弄清楚 k8s 中的 tainting 将如何工作,我在 kubelet yaml 规范中有以下设置,我有点困惑 register-with-taints 的值是什么,因为我只想允许某些 pod 被放置在这个节点上。 ...其余的所有 POD 都应该删除,或者对于任何其他 Pod,然后特定的 Pod 节点应该表现得不可调度。
--container-runtime=docker \
--register-node=true \
--allow-privileged=true \
--register-schedulable=false \
--register-with-taints=
--pod-manifest-path=/etc/kubernetes/manifests \Run Code Online (Sandbox Code Playgroud)
--register-with-taintsto的参数kubelet是节点级别的参数,并使用给定的污点列表注册节点。
这是有关的文档--register-with-taints:
--register-with-taints []api.Taint
Register the node with the given list of taints (comma separated "=:").
No-op if register-node is false.
Run Code Online (Sandbox Code Playgroud)
如果--register-with-taints设置,它应该是形式<key>=<value>:<effect>(或逗号分隔,如<key1>=<value1>:<effect1>,<key2>=<value2>:<effect2>)。
我只想允许在这个节点上放置某些豆荚
去做这个:
--register-with-taints=key=value:NoScheduleto 的东西kubelet。这意味着任何 pod 都不能调度到这个节点上,除非它有一个匹配的容忍度。现在,要允许将某个 pod 放置在此节点上,请在 PodSpec yaml 中为该 pod 指定与上述污点匹配的容忍度。以下两种容忍度“匹配”上述污点,因此具有以下任一容忍度的 pod 将能够调度到节点上:
tolerations:
- key: "key"
operator: "Equal"
value: "value"
effect: "NoSchedule"
---- OR ----
tolerations:
- key: "key"
operator: "Exists"
effect: "NoSchedule"
Run Code Online (Sandbox Code Playgroud)有关 Kubernetes 中的污点和容忍度的更多信息,请点击此处。
| 归档时间: |
|
| 查看次数: |
2913 次 |
| 最近记录: |