Skip to main content
Version: v0.27 Stable

Resource quota

Limited vCluster Tenancy Configuration Support

This feature is only available when using the following worker node types:

  • Host Nodes
  • You can control vCluster resource consumption by configuring a ResourceQuota. vCluster creates the ResourceQuota in the same namespace as vCluster itself. Resource quotas apply to all resources synced to the host cluster.

    Example​

    If you would normally deploy the following ResourceQuota:

    apiVersion: v1
    kind: ResourceQuota
    metadata:
    name: pods-medium
    spec:
    hard:
    cpu: "10"
    memory: 20Gi
    pods: "10"
    scopeSelector:
    matchExpressions:
    - operator : In
    scopeName: PriorityClass
    values: ["medium"]

    Instead configure the ResourceQuota in your vcluster.yaml config file like this:

    policies:
    resourceQuota:
    enabled: true
    quota:
    cpu: "10"
    memory: 20Gi
    pods: "10"
    scopeSelector:
    matchExpressions:
    - operator : In
    scopeName: PriorityClass
    values: ["medium"]

    Config reference​

    resourceQuota required object ​

    ResourceQuota specifies resource quota options.

    enabled required string|boolean auto ​

    Enabled defines if the resource quota should be enabled. "auto" means that if limitRange is enabled, the resourceQuota will be enabled as well.

    quota required object map[count/configmaps:100 count/endpoints:40 count/persistentvolumeclaims:20 count/pods:20 count/secrets:100 count/services:20 limits.cpu:20 limits.ephemeral-storage:160Gi limits.memory:40Gi requests.cpu:10 requests.ephemeral-storage:60Gi requests.memory:20Gi requests.storage:100Gi services.loadbalancers:1 services.nodeports:0] ​

    Quota are the quota options

    scopeSelector required object map[matchExpressions:[]] ​

    ScopeSelector is the resource quota scope selector

    scopes required string[] [] ​

    Scopes are the resource quota scopes

    annotations required object {} ​

    Annotations are extra annotations for this resource.

    labels required object {} ​

    Labels are extra labels for this resource.