Pod 的 QoS 分为三个级别:Guaranteed、Burstable、BestEffort。
其等级划分与 Pod 的资源(CPU、内存)要求有关:
BestEffort
当 Pod 中的所有容器都没有设置 limits 和 requests 时。
containers:
name: foo
resources:
name: bar
resources:
Guaranteed
Pod 中的每个容器都需要声明资源(CPU、内存)的 limit。当 Pod 内每个容器的对应资源 limits 与 requests 相等时。注意:某个容器资源的 requests 没有设置时,默认与其 limit 值相同。
例如: 只有 limit 的 Pod:
containers:
name: foo
resources:
limits:
cpu: 10m
memory: 1Gi
name: bar
resources:
limits:
cpu: 100m
memory: 100Mi
有 limit 与 request 的 Pod:
containers:
name: foo
resources:
limits:
cpu: 10m
memory: 1Gi
requests:
cpu: 10m
memory: 1Gi
name: bar
resources:
limits:
cpu: 100m
memory: 100Mi
requests:
cpu: 100m
memory: 100Mi
Burstable
除 BestEffort 与 Guaranteed 之外的情况。
containers:
name: foo
resources:
limits:
cpu: 10m
memory: 1Gi
requests:
cpu: 10m
memory: 1Gi
name: bar