In situations where several teams share a cluster, one team may overconsume the resources available: CPU, memory, storage, services, Kubernetes objects like pods or secrets, and so on. To prevent this overconsumption, you can apply a resource quota, which is a Rancher feature that limits the resources available to a project or namespace.

This page is a how-to guide for creating resource quotas in existing projects.

Resource quotas can also be set when a new project is created. For details, refer to the section on creating new projects.

Resource quotas in Rancher include the same functionality as the native version of Kubernetes. In Rancher, resource quotas have been extended so that you can apply them to projects. For details on how resource quotas work with projects in Rancher, refer to this page.

Applying Resource Quotas to Existing Projects

Edit resource quotas when:

  • You want to limit the resources that a project and its namespaces can use.
  • You want to scale the resources available to a project up or down when a research quota is already in effect.
  1. In the upper left corner, click ☰ > Cluster Management.
  2. On the Clusters page, go to the cluster where you want to apply a resource quota and click Explore.
  3. Click Cluster > Projects/Namespaces.
  4. Find the project that you want to add a resource quota to. From that project, select ⋮ > Edit Config.

  5. Expand Resource Quotas and click Add Resource. Alternatively, you can edit existing quotas.

  6. Select a Resource Type. For more information on types, see the quota type reference.

  7. Enter values for the Project Limit and the Namespace Default Limit.

    Field Description
    Project Limit The overall resource limit for the project.
    Namespace Default Limit The default resource limit available for each namespace. This limit is propagated to each namespace in the project. The combined limit of all project namespaces shouldn’t exceed the project limit.
  8. Optional: Add more quotas.

  9. Click Create.

Result: The resource quota is applied to your project and namespaces. When you add more namespaces in the future, Rancher validates that the project can accommodate the namespace. If the project can’t allocate the resources, Rancher won’t let you save your changes.