如何对一个命名空间进行存储限制

容器与中间件容器服务技术服务知识库
问题描述

如何限制一个命名空间中用户使用的PVC数量以及申请PVC存储空间的最大值。

问题分析

ResourceQuota:限制某个命名空间中的 PVC个数以及这些 PVC的累计容量。新PVC请求如果超过任一上限值将被拒绝。 LimitRange:限制创建PVC的最大值和最小值。

问题解决

1.通过ResourceQuota限制创建的PVC的数量和累积容量

$ cat test-resourcequota.yaml
apiVersion: v1
kind: ResourceQuota
metadata:
  name: storagequota
spec:
  hard:
    persistentvolumeclaims: "5"
    requests.storage: "5Gi"

$ kubectl apply -f test-resourcequota.yaml

$ kubectl get resourcequotas -n default 
NAME           AGE   REQUEST                                                LIMIT
storagequota   10s   persistentvolumeclaims: 0/5, requests.storage: 0/5Gi

2.通过LimitRange限制PVC容量的最大最小值

$ cat test-limitrange.yaml 
apiVersion: v1
kind: LimitRange
metadata:
  name: storagelimits
  namespace: default
spec:
  limits:
  - type: PersistentVolumeClaim
    max:
      storage: 2Gi
    min:
      storage: 1Gi

$ kubectl apply -f test-limitrange.yaml

$ kubectl get limitranges -n default 
NAME            CREATED AT
storagelimits   2022-04-11T07:08:33Z
参考链接

https://kubernetes.io/zh/docs/tasks/administer-cluster/limit-storage-consumption/ 如果您有其他问题,欢迎您联系火山引擎技术支持服务

27
0
0
0
相关产品
评论
未登录
看完啦,登录分享一下感受吧~
暂无评论