二十七、资源限制-LimitRange
LimitRange生产必备
在调度的时候 requests 比较重要,在运行时 limits 比较重要。
一、产生原因
生产中只有ResourceQuota是不够的
只配置ResourceQuotas的情况下,pod的yaml文件没有配置resources配置,都是0的话,就可以无限配置,永远达不到limit
LimitRange做了什么
如果pod里面没有配置resources参数,这个时候ResourceQuotas是识别不出来的。我们创建了LimitRange,则这个pod会根据LimitRange的配置自动添加CPU内存配置,所有pod累加不能超过ResourceQuotas的限制。
二、LimitRange配置示例
1. 默认的requests和limits
apiVersion: v1
kind: LimitRange
metadata:
name: cpu-mem-limit-range
spec:
limits:
- default: # 默认limits配置
cpu: 1
memory: 512Mi
defaultRequest: # 默认requests配置
cpu: 0.5
memory: 256Mi
type: Container
➢ default:默认limits配置
➢ defaultRequest:默认requests配置
如果pod没有配置cpu和内存,则pod会填充使用defaultRequest中的内容。
如果pod只配置Request参数,没有配置limit参数,则pod会自动填充default中的内容。
2. requests和limits的范围
apiVersion: v1
kind: LimitRange
metadata:
name: cpu-min-max-demo-lr
spec:
limits:
- max: # 内存CPU的最大配置
cpu: "800m"
memory: 1Gi
min: # 内存CPU的最小配置
cpu: "200m"
memory: 500Mi
type: Container
➢ max:内存CPU的最大配置
➢ min:内存CPU的最小配置
3. 限制申请存储空间的大小
apiVersion: v1
kind: LimitRange
metadata:
name: storagelimits
spec:
limits:
- type: PersistentVolumeClaim
max: # 最大PVC的空间
storage: 2Gi
min
原文地址:https://blog.csdn.net/Cyan_Jiang/article/details/145282762
免责声明:本站文章内容转载自网络资源,如侵犯了原著者的合法权益,可联系本站删除。更多内容请关注自学内容网(zxcms.com)!