Kubernetes Submit Queue
b72c006eb3
Merge pull request #34554 from derekwaynecarr/quota-storage-class
Automatic merge from submit-queue (batch tested with PRs 37270, 38309, 37568, 34554)
Ability to quota storage by storage class
Adds the ability to quota storage by storage class.
1. `<storage-class>.storageclass.storage.k8s.io/persistentvolumeclaims` - quota the number of claims with a specific storage class
2. `<storage-class>.storageclass.storage.k8s.io/requests.storage` - quota the cumulative request for storage in a particular storage class.
For example:
```
$ cat quota.yaml
apiVersion: v1
kind: ResourceQuota
metadata:
name: storage-quota
spec:
hard:
requests.storage: 100Gi
persistentvolumeclaims: 100
gold.storageclass.storage.k8s.io/requests.storage: 50Gi
gold.storageclass.storage.k8s.io/persistentvolumeclaims: 5
silver.storageclass.storage.k8s.io/requests.storage: 75Gi
silver.storageclass.storage.k8s.io/persistentvolumeclaims: 10
bronze.storageclass.storage.k8s.io.kubernetes.io/requests.storage: 100Gi
bronze.storageclass.storage.k8s.io/persistentvolumeclaims: 15
$ kubectl create -f quota.yaml
$ cat pvc-bronze.yaml
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
generateName: pvc-bronze-
annotations:
volume.beta.kubernetes.io/storage-class: "bronze"
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 8Gi
$ kubectl create -f pvc-bronze.yaml
$ kubectl get quota storage-quota -o yaml
apiVersion: v1
kind: ResourceQuota
...
status:
hard:
bronze.storageclass.storage.k8s.io/persistentvolumeclaims: "15"
bronze.storageclass.storage.k8s.io/requests.storage: 100Gi
gold.storageclass.storage.k8s.io/persistentvolumeclaims: "5"
gold.storageclass.storage.k8s.io/requests.storage: 50Gi
persistentvolumeclaims: "100"
requests.storage: 100Gi
silver.storageclass.storage.k8s.io/persistentvolumeclaims: "10"
silver.storageclass.storage.k8s.io/requests.storage: 75Gi
used:
bronze.storageclass.storage.k8s.io/persistentvolumeclaims: "1"
bronze.storageclass.storage.k8s.io/requests.storage: 8Gi
gold.storageclass.storage.k8s.io/persistentvolumeclaims: "0"
gold.storageclass.storage.k8s.io/requests.storage: "0"
persistentvolumeclaims: "1"
requests.storage: 8Gi
silver.storageclass.storage.k8s.io/persistentvolumeclaims: "0"
silver.storageclass.storage.k8s.io/requests.storage: "0"
```
2016-12-09 14:11:21 -08:00
..
2016-12-05 09:12:22 +01:00
2016-12-09 09:42:01 +01:00
2016-12-09 09:42:01 +01:00
2016-12-09 09:42:01 +01:00
2016-12-09 09:42:01 +01:00
2016-12-09 09:42:02 +01:00
2016-12-05 12:36:05 +01:00
2016-12-05 10:24:45 -05:00
2016-12-03 19:10:53 -05:00
2016-12-09 09:42:01 +01:00
2016-12-09 09:42:01 +01:00
2016-12-09 09:42:01 +01:00
2016-12-03 19:10:53 -05:00
2016-12-06 12:17:38 +01:00
2016-12-09 09:42:01 +01:00
2016-12-09 09:42:01 +01:00
2016-12-09 13:26:59 -05:00
2016-12-03 19:10:53 -05:00
2016-12-05 20:16:53 -08:00
2016-12-09 04:12:09 -08:00
2016-12-09 11:29:11 -08:00
2016-10-13 16:10:24 -07:00
2016-12-08 14:16:01 -05:00
2016-12-09 09:42:01 +01:00
2016-11-23 22:30:47 -06:00
2016-12-03 19:10:53 -05:00
2016-12-08 14:16:01 -05:00
2016-07-16 13:48:21 -04:00
2016-06-29 17:47:36 -07:00
2016-05-11 13:34:51 -07:00