您好,登錄后才能下訂單哦!
Taint(污點)和 Toleration(容忍)可以作用于 node 和 pod 上,其目的是優化 pod 在集群間的調度,這跟節點親和性類似,只不過它們作用的方式相反,具有 taint 的 node 和 pod 是互斥關系,而具有節點親和性關系的 node 和 pod 是相吸的。另外還有可以給 node 節點設置 label,通過給 pod 設置 nodeSelector 將 pod 調度到具有匹配標簽的節點上。
Taint 和 toleration 相互配合,可以用來避免 pod 被分配到不合適的節點上。每個節點上都可以應用一個或多個 taint ,這表示對于那些不能容忍這些 taint 的 pod,是不會被該節點接受的。如果將 toleration 應用于 pod 上,則表示這些 pod 可以(但不要求)被調度到具有相應 taint 的節點上。
NoSchedule: 一定不能被調度
PreferNoSchedule: 盡量不要調度
NoExecute: 不僅不會調度, 還會驅逐Node上已有的Pod
kubectl taint nodes node1 key1=value1:NoSchedule
kubectl taint nodes node1 key1=value1:NoExecute
kubectl taint nodes node1 key2=value2:NoSchedule
kubectl describe node node1
kubectl taint node node1 key1:NoSchedule- # 這里的key可以不用指定value
kubectl taint node node1 key1:NoExecute-
kubectl taint node node1 key1- # 刪除指定key所有的effect
kubectl taint node node1 key2:NoSchedule-
詳細使用方法請參考
配置污點
kubectl taint nodes 172.16.8.100 node-role.kubernetes.io/etcd=true:NoExecute node-role.kubernetes.io/controlplane=true:NoSchedule
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。