Skip to content

How to Create, Increase or Decrease Project Quota in OpenShift

https://www.linkedin.com/in/gineesh/ https://twitter.com/GiniGangadharan

Image Credit : https://www.joc.com

Usually application owner or project owner will specify the quota settings (Memory and CPU) during project creation. But sometimes, they realize that the requested resource is not enough to run their applications.

Usually we name the quota with its specifications and not a good idea to edit this existing quota. Standard practice is to remove/delete the quota for the project and recreate new quota with new values.

Note : You must set quota together with limit.

Check current quota

# oc get quota -n myproject
NAME AGE
proj-quota-8gi 284d

# oc describe quota proj-quota-8gi -n myproject
Name: proj-quota-8gi
Namespace: myproject
Resource Used Hard
-------- ---- ----
requests.cpu 4726m 5400m
requests.memory 7000Mi 8Gi

Delete the Quota

WARNING : mention project namespace to avoid any accidental quota delete.

# oc delete quota proj-quota-32gi -n myproject

Create new Quota Template

This is the template file where we mention the memory and CPU quota details.

# cat proj-quota-32Gi_no_limit.yaml
apiVersion: v1
kind: ResourceQuota
metadata:
creationTimestamp: null
name: proj-quota-32gi
spec:
hard:
requests.cpu: 19200m
requests.memory: 32Gi

Create new Quota from Template

# oc create -f proj-quota-32Gi_no_limit.yaml -n PROJECT_NAME

Verify new Quota

# oc get quota -n myproject
NAME AGE
proj-quota-32gi 1d

# oc describe quota proj-quota-32gi -n myproject
Name: proj-quota-32gi
Namespace: myproject
Resource Used Hard
-------- ---- ----
requests.cpu 5513m 19200m
requests.memory 10724Mi 32Gi


]# oc describe project myproject |grep Quota -A5
Quota:
Name: proj-quota-32gi
Resource Used Hard
-------- ---- ----
requests.cpu 5513m 19200m
requests.memory 10724Mi 32Gi

That’s it.

Disclaimer: The views expressed and the content shared are those of the author and do not reflect the views of the author’s employer or techbeatly platform.


https://www.linkedin.com/in/gineesh/ https://twitter.com/GiniGangadharan
Gineesh Madapparambath is the founder of techbeatly and he is the author of the book - ๐—”๐—ป๐˜€๐—ถ๐—ฏ๐—น๐—ฒ ๐—ณ๐—ผ๐—ฟ ๐—ฅ๐—ฒ๐—ฎ๐—น-๐—Ÿ๐—ถ๐—ณ๐—ฒ ๐—”๐˜‚๐˜๐—ผ๐—บ๐—ฎ๐˜๐—ถ๐—ผ๐—ป. He has worked as a Systems Engineer, Automation Specialist, and content author. His primary focus is on Ansible Automation, Containerisation (OpenShift & Kubernetes), and Infrastructure as Code (Terraform). (aka Gini Gangadharan - iamgini.com)

Comments

2 Responses

  1. pod says:

    For what OCP version is this template applicable?

Leave a Reply

Your email address will not be published. Required fields are marked *

This site uses Akismet to reduce spam. Learn how your comment data is processed.

%d bloggers like this: