requests/limits
- requests
指定所需的最小資源量 - limits
指定可能占用的最大資源量
apiVersion: v1
kind: Pod
metadata:
name: test-demo
spec:
containers:
- name: test-demo
image: nginx
resources:
limits:
memory: "200Mi"
cpu: "200m"
requests:
memory: "100Mi"
cpu: "100m"
QoS
K8s會(huì)根據(jù)是否指定了requests妇斤,limits或同時(shí)指定了兩者,而提供不同類型的服務(wù)質(zhì)量(Quality of Service, QoS)
- Best-Effort - 盡力而為
Pod沒(méi)有為容器設(shè)置任何requests和limits陈轿。這類Pod的優(yōu)先級(jí)最低鞋既,而當(dāng)Pod所在節(jié)點(diǎn)上的不可壓縮資源被耗盡時(shí)髓霞,這些Pod會(huì)被第一個(gè)kill - Burstable - 不穩(wěn)定的
Pod指定了requests和limits嗜傅,但是二者不相等(且limits大于requests)。這類Pod可以獲取最小資源量逗物,而且也可以在資源充足的情況下消耗更多資源,直到其限制指定的最大資源量瑟俭。當(dāng)節(jié)點(diǎn)的不可壓縮資源緊缺時(shí)翎卓,如果不存在Best-Effort的Pod,那么這些Pod就會(huì)被kill - Guaranteed - 有保證的
Pod指定了相同數(shù)量的request和limit資源摆寄。這類Pod的優(yōu)先級(jí)最高失暴,Kubernetes保證不會(huì)在Best-Effort和Burstable類型的Pod存在的情況下被kill