Pod qos模型
划分qos依据
Guaranteed
1.Pod里所有Container都设置了requests和limits,并且requests和limits值相等,且设置了cpu和memory
2.只设置limits,k8s默认会设置requests是limits的值
Burstable
1.不满足Guaranteed条件,至少有一个Container设置了requests
2.pod里面所有容器都设置了requests和limits,并且requests和limits值相等,但是只设置了cpu,没有设置memory,依然是Burstable
BestEffort
没有设置requests和limits
驱逐顺序
当节点资源不足(例如磁盘空间不足)时,kubelet会驱逐Pod,顺序是BestEffort->Burstable->Guaranteed。
cgroup cpu设置
cpu统一路径是/sys/fs/cgroup/cpu/kubepods.slice
BestEffort:容器级别和Pod级别cpu没有限制
Burstable:容器级别和Pod级别cpu没有限制(没有设置limit场景)
Guaranteed:容器级别和Pod级别cpu有限制(都是0.1个CPU)
cpu.cfs_quota_us/cpu.cfs_period_us是cpu限制