To set resource quota, use
oc create -f quota.yaml on a file like this:
apiVersion: v1 kind: ResourceQuota metadata: name: myquota spec: hard: # Number of parallel builds pods: 10 # Compute units (KCU) for all builds cpu: "2" # Memory for all builds memory: 2Gi # Storage for all builds storage: 20Gi
oc describe quota myquota will show the used and total amount of each resource type.
You can set default per-build limits either by setting them in the OSBS build configuration file (
storage_limit), or by setting defaults that OpenShift will apply to builds that do not specify their limits:
apiVersion: v1 kind: LimitRange metadata: name: limits spec: limits: - default: # 100m == 0.1 KCU cpu: 100m memory: 512Mi storage: 2Gi type: Container
You can set per-build limits using the
--storage-limit OSBS command line options.
You can set quota for
storage, but you do not have to set quota for all of them. If you set quota for
storage, you must also set limits for that resource: builds not specifying limits are unbounded and will not be admitted.
You do not have to set limits for
pods. Each build takes a fixed quantity (1 pod).