溫馨提示×

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

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

Ubuntu在Kubernetes中的資源調(diào)度優(yōu)先級(jí)設(shè)置

發(fā)布時(shí)間:2024-11-03 13:43:25 來(lái)源:億速云 閱讀:82 作者:小樊 欄目:大數(shù)據(jù)

在Kubernetes中,資源調(diào)度優(yōu)先級(jí)的設(shè)置并不直接與操作系統(tǒng)(如Ubuntu)相關(guān),而是通過(guò)PriorityClass對(duì)象來(lái)實(shí)現(xiàn)的。PriorityClass是一個(gè)Kubernetes對(duì)象,用于設(shè)置Pod的優(yōu)先級(jí)。以下是關(guān)于Kubernetes中資源調(diào)度優(yōu)先級(jí)設(shè)置的相關(guān)信息:

PriorityClass對(duì)象

  • 定義:PriorityClass對(duì)象定義了優(yōu)先級(jí)類名與優(yōu)先級(jí)整數(shù)值的映射。
  • 使用:在Pod規(guī)范中通過(guò)priorityClassName字段引用PriorityClass對(duì)象的名稱來(lái)設(shè)置Pod的優(yōu)先級(jí)。
  • 示例
apiVersion: scheduling.k8s.io/v1
kind: PriorityClass
metadata:
  name: high-priority-apps
value: 1000000
preemptionPolicy: PreemptLowerPriority
globalDefault: false
description: "Mission Critical apps."

搶占策略

  • 默認(rèn)策略:Kubernetes的默認(rèn)搶占策略是PreemptLowerPriority,意味著調(diào)度器會(huì)嘗試從節(jié)點(diǎn)上驅(qū)逐(搶占)優(yōu)先級(jí)較低的Pod,以便為優(yōu)先級(jí)更高的Pod騰出資源。
  • 優(yōu)雅終止期:被搶占的Pod會(huì)有一個(gè)默認(rèn)的優(yōu)雅終止期(30秒),在此期間,Pod會(huì)嘗試完成當(dāng)前任務(wù)并退出。

系統(tǒng)關(guān)鍵性Pod的優(yōu)先級(jí)類

  • system-node-critical:值為2000001000,用于保護(hù)系統(tǒng)關(guān)鍵型Pod,如etcd、kube-apiserver等。
  • system-cluster-critical:值為2000000000,用于保護(hù)集群關(guān)鍵型Pod,如coredns、calico controller等。

注意事項(xiàng)

  • 優(yōu)先級(jí)類的值必須是非負(fù)整數(shù),且最大值不超過(guò)1000000000。
  • 優(yōu)先級(jí)類的值越大,表示Pod的優(yōu)先級(jí)越高。
  • 如果不希望Pod被搶占,可以在Pod規(guī)范中設(shè)置preemptionPolicy: Never。

通過(guò)合理地設(shè)置PriorityClass,可以確保在資源緊張時(shí),關(guān)鍵任務(wù)能夠獲得必要的資源,同時(shí)通過(guò)搶占策略優(yōu)化集群的資源利用率。

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

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

AI