溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務(wù)條款》

Kubernetes污點(taints)與容忍(tolerations)

發(fā)布時間:2020-07-31 16:05:08 來源:網(wǎng)絡(luò) 閱讀:1467 作者:思考_ 欄目:系統(tǒng)運維

一、概述

Taint(污點)和 Toleration(容忍)可以作用于 node 和 pod 上,其目的是優(yōu)化 pod 在集群間的調(diào)度,這跟節(jié)點親和性類似,只不過它們作用的方式相反,具有 taint 的 node 和 pod 是互斥關(guān)系,而具有節(jié)點親和性關(guān)系的 node 和 pod 是相吸的。另外還有可以給 node 節(jié)點設(shè)置 label,通過給 pod 設(shè)置 nodeSelector 將 pod 調(diào)度到具有匹配標(biāo)簽的節(jié)點上。

Taint 和 toleration 相互配合,可以用來避免 pod 被分配到不合適的節(jié)點上。每個節(jié)點上都可以應(yīng)用一個或多個 taint ,這表示對于那些不能容忍這些 taint 的 pod,是不會被該節(jié)點接受的。如果將 toleration 應(yīng)用于 pod 上,則表示這些 pod 可以(但不要求)被調(diào)度到具有相應(yīng) taint 的節(jié)點上。

二、node節(jié)點設(shè)置污點和容忍

1、設(shè)置taint
NoSchedule: 一定不能被調(diào)度
PreferNoSchedule: 盡量不要調(diào)度
NoExecute: 不僅不會調(diào)度, 還會驅(qū)逐Node上已有的Pod

kubectl taint nodes node1 key1=value1:NoSchedule
kubectl taint nodes node1 key1=value1:NoExecute
kubectl taint nodes node1 key2=value2:NoSchedule
2、查看taint
kubectl describe node node1
3、刪除taint:
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-

三、Pod設(shè)置污點和容忍

詳細(xì)使用方法請參考
配置污點

kubectl taint nodes 172.16.8.100  node-role.kubernetes.io/etcd=true:NoExecute  node-role.kubernetes.io/controlplane=true:NoSchedule

Kubernetes污點(taints)與容忍(tolerations)

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報,并提供相關(guān)證據(jù),一經(jīng)查實,將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI