Yandex Cloud
Search
Contact UsTry it for free
  • Customer Stories
  • Documentation
  • Blog
  • All Services
  • System Status
  • Marketplace
    • Featured
    • Infrastructure & Network
    • Data Platform
    • AI for business
    • Security
    • DevOps tools
    • Serverless
    • Monitoring & Resources
  • All Solutions
    • By industry
    • By use case
    • Economics and Pricing
    • Security
    • Technical Support
    • Start testing with double trial credits
    • Cloud credits to scale your IT product
    • Gateway to Russia
    • Cloud for Startups
    • Center for Technologies and Society
    • Yandex Cloud Partner program
    • Price calculator
    • Pricing plans
  • Customer Stories
  • Documentation
  • Blog
© 2026 Direct Cursus Technology L.L.C.
Yandex Cloud Stackland
  • What's new
  • Installation
    • All tutorials
    • Installing Stackland on Yandex BareMetal
    • Setting up external access to a pod in a cluster
    • All guides
      • All guides
      • Creating a project
      • Managing namespaces
      • Configuring project roles
      • Setting quotas in namespaces
      • Creating a project quota
    • Projects
    • Resource model
  • Access management
  • Pricing policy
  • Diagnostics and troubleshooting

In this article:

  • Getting started
  • Supported quota types
  • Creating a quota
  • Viewing the current quota usage
  • Updating a quota
  • Deleting a quota
  • Examples
  • Quota for a development environment
  • Quota for a production namespace with GPUs
  • What's next
  1. Step-by-step guides
  2. Projects
  3. Setting quotas in namespaces

Setting quotas in namespaces

Written by
Yandex Cloud
Updated at April 8, 2026
  • Getting started
  • Supported quota types
  • Creating a quota
  • Viewing the current quota usage
  • Updating a quota
  • Deleting a quota
  • Examples
    • Quota for a development environment
    • Quota for a production namespace with GPUs
  • What's next

Quotas limit the consumption of resources in your project’s namespaces. Quotas are set at the namespace level and allow you to control the use of CPU, memory, storage, and GPU.

Getting startedGetting started

Make sure that:

  • You have the cluster or project administrator role.
  • You have already created a project and a namespace. If not, create a project and a namespace.

Supported quota typesSupported quota types

You can set the following quotas at the namespace level:

  • requests.cpu: Total requested CPU for pods in the namespace.
  • requests.memory: Total requested memory for pods in the namespace.
  • limits.cpu: Total CPU limit for pods in the namespace.
  • limits.memory: Total memory limit for pods in the namespace.
  • requests.storage: Total storage capacity for all PVCs in the namespace.
  • requests.nvidia.com/gpu: Total number of GPUs for pods in the namespace.

If you set no quota for a certain resource type, no consumption limit will apply to this resource.

Creating a quotaCreating a quota

Quotas are set at the project’s namespace level.

Management console
CLI
  1. In the left-hand menu, select Projects.

  2. Select the project from the list.

  3. Click Namespaces on the project’s side panel.

  4. Select the namespace.

  5. Go to the Quotas tab.

  6. Click + Add quota.

  7. Specify the following quota settings:

    • Quota name: Unique quota name in the namespace. This is a required field.
  8. Under Resource quotas, add limits:

    • Select the resource type from the Resource drop-down list, e.g., limits.cpu, requests.cpu.
    • Set the value in the Value field.
    • To add another limit, click Add.
    • To delete a row, click the recycle bin icon.
  9. Optionally, expand the Additional section and specify a Scope, i.e., a YAML description of the quota's scope selector (e.g., for a limit based on pod priority class).

  10. Click Save.

Create a manifest file, e.g., quota.yaml:

apiVersion: v1
kind: ResourceQuota
metadata:
  name: my-quota
  namespace: team-alpha-backend
spec:
  hard:
    limits.cpu: "20"
    requests.cpu: "10"
    limits.memory: "64Gi"
    requests.memory: "32Gi"
  scopeSelector:
    matchExpressions:
      - scopeName: PriorityClass
        operator: In
        values:
          - middle

Where:

  • metadata.name: Quota name. This is a required field.
  • metadata.namespace: Project namespace the quota is in. This is a required field.
  • spec.hard: Dictionary of resources and their limits. This is a required field.
  • spec.scopeSelector: Quota scope selector. This is an optional field.

Apply the manifest:

kubectl apply -f quota.yaml

Viewing the current quota usageViewing the current quota usage

Management console
CLI
  1. In the left-hand menu, select Projects.
  2. Select the project from the list.
  3. Click Namespaces on the project’s side panel.
  4. Select the namespace.
  5. Go to the Quotas tab.
  6. Click the name of the quota.

The quota page displays the following:

  • Quota information: Name, namespace, scope, creation date.
  • Quotas: Table with the following columns: Resource, Requests (used/limit), Limits (used/limit), Effective.

To view the list of quotas in the namespace:

kubectl get resourcequota -n team-alpha-backend

Response example:

NAME         REQUEST             LIMIT             AGE
my-quota     requests.cpu: 0/2   limits.cpu: 0/4   20m

To view the quota's details with current usage data:

kubectl describe resourcequota my-quota -n team-alpha-backend

Response example:

Name:         my-quota
Namespace:    team-alpha-backend
Resource      Used  Hard
--------      ----  ----
limits.cpu    1     4
requests.cpu  1     2

Updating a quotaUpdating a quota

Management console
CLI
  1. In the left-hand menu, select Projects.
  2. Select the project from the list.
  3. Click Namespaces on the project’s side panel.
  4. Select the namespace.
  5. Go to the Quotas tab.
  6. In the quota row, click ⋯ and select Edit.
  7. Make your changes and click Save.

Edit the quota directly:

kubectl edit resourcequota my-quota -n team-alpha-backend

Note

If the new quota value is below the current usage level, the quota will be updated successfully. However, you will not be able to create new resources above the quota until your usage falls below the limit.

Deleting a quotaDeleting a quota

Management console
CLI
  1. In the left-hand menu, select Projects.
  2. Select the project from the list.
  3. Click Namespaces on the project’s side panel.
  4. Select the namespace.
  5. Go to the Quotas tab.
  6. In the quota row, click ⋯ and select Delete.
  7. Confirm the deletion.
kubectl delete resourcequota my-quota -n team-alpha-backend

ExamplesExamples

Quota for a development environmentQuota for a development environment

apiVersion: v1
kind: ResourceQuota
metadata:
  name: dev-quota
  namespace: development-main
spec:
  hard:
    requests.cpu: "10"
    requests.memory: "32Gi"
    requests.storage: "200Gi"
    limits.cpu: "20"
    limits.memory: "64Gi"

Quota for a production namespace with GPUsQuota for a production namespace with GPUs

apiVersion: v1
kind: ResourceQuota
metadata:
  name: ml-prod-quota
  namespace: ml-production-main
spec:
  hard:
    requests.cpu: "100"
    requests.memory: "512Gi"
    requests.storage: "5Ti"
    limits.cpu: "200"
    limits.memory: "1Ti"
    requests.nvidia.com/gpu: "8"

What's nextWhat's next

  • Configuring roles in a project
  • Managing namespaces in a project

Was the article helpful?

Previous
Configuring project roles
Next
Creating a project quota
© 2026 Direct Cursus Technology L.L.C.