k8s pod資源限制requests和limits

環(huán)境:kubernetes v1.18.16

k8s 資源單位介紹

CPU1 core = 1000 milli core(毫核);50m相當(dāng)于0.05core,最小單位1m;
內(nèi)存M 1000進(jìn)制 129M字節(jié);Mi 1024進(jìn)制

pod資源限額設(shè)置:

spec:
      containers:
        - name: [容器名稱]
          image: [容器鏡像]
          imagePullPolicy: IfNotPresent
          resources:
            requests: 
              cpu: 10m
              memory: 10Mi
            limits:
              cpu: '1'
              memory: 1000Mi

requests:最低配額,保證被調(diào)度的節(jié)點(diǎn)上至少有的資源配額
limits: 資源限制,容器可以分配到的最大資源配額

pod qosClass介紹

qosClass 表示服務(wù)質(zhì)量類型(Quality of Service)。其值由pod請(qǐng)求的內(nèi)存和cpu確定的,有三種類型:Guaranteed,Burstable 和 BestEffort。當(dāng)node資源不足而驅(qū)逐pod時(shí)優(yōu)先級(jí)不同:BestEffort→Burstable→Guaranteed。最先驅(qū)逐BestEffort,然后Burstable,最后Guaranteed。pod沒有配置資源限制的時(shí)默認(rèn)為BestEffort。

kubectl get  pod [pod名稱] -o yml podqosClass類型

輸出中qosClass字段顯示當(dāng)前

QoS Classes分類

Guranteed:pod中所有Container的所有Resource的limit和request都相等且不為0,則這個(gè)Pod的QoS Class就是Guaranteed。注意,如果一個(gè)容器只指明了limit,而未指明request,則表明request的值等于limit的值。
Burstable:pod中至少有一個(gè)容器設(shè)置CPU或內(nèi)存資源的requests屬性。
BestEffort:Pod中沒有任何一個(gè)容器設(shè)置了requests或limits屬性。

node資源緊缺時(shí)pod驅(qū)逐機(jī)制

Guaranteed > Burstable > BestEffort
參考:http://t.zoukankan.com/peitianwang-p-11588003.html

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容