You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
*deserverd: Deserved resource amount (when no other queues submit jobs, jobs in this queue can exceed the deserverd value; when multiple queues submit jobs and cluster resources are insufficient, resources exceeding the deserverd value can be reclaimed by other queues)
17
+
*deserved: Deserved resource amount (when no other queues submit jobs, jobs in this queue can exceed the deserved value; when multiple queues submit jobs and cluster resources are insufficient, resources exceeding the deserved value can be reclaimed by other queues)
18
18
* guarantee: Reserved resource amount (reserved resources can only be used by this queue, other queues cannot use them)
> 2. guarantee/capability can be configured as needed, deserverd value must be configured when capacity plugin is enabled;
24
-
> 3.deserverd configuration recommendations: In peer queue scenarios, the sum of deserverd values of all queues equals the total cluster resources; In hierarchical queue scenarios, the sum of child queues' deserverd values equals the parent queue's deserverd value, but cannot exceed it.
> 2. guarantee/capability can be configured as needed, deserved value must be configured when capacity plugin is enabled;
24
+
> 3.deserved configuration recommendations: In peer queue scenarios, the sum of deserved values of all queues equals the total cluster resources; In hierarchical queue scenarios, the sum of child queues' deserved values equals the parent queue's deserved value, but cannot exceed it.
25
25
> 4. capability configuration notes: In hierarchical queue scenarios, child queue's capability value cannot exceed parent queue's capability value. If child queue's capability is not set, it will inherit parent queue's capability value.
26
26
27
27
* Supports dynamic resource quota adjustment
@@ -82,10 +82,10 @@ spec:
82
82
83
83
The capacity plugin enables quota control through precise resource configuration. Combined with [hierarchical queues](/docs/KeyFeatures/HierarchicalQueue), it can achieve more fine-grained multi-tenant resource allocation and facilitates big data workload migration to Kubernetes clusters.
84
84
85
-
> **Note**: When using cluster autoscaling components like Cluster Autoscaler or Karpenter, total cluster resources change dynamically. In this case, using capacity plugin requires manual adjustment of queue's deserverd values to adapt to resource changes.
85
+
> **Note**: When using cluster autoscaling components like Cluster Autoscaler or Karpenter, total cluster resources change dynamically. In this case, using capacity plugin requires manual adjustment of queue's deserved values to adapt to resource changes.
86
86
87
87
#### proportion plugin
88
-
Unlike the capacity plugin, the proportion plugin automatically calculates queue's deserved resource amount by configuring queue Weight values, without explicitly configuring deserverd values:
88
+
Unlike the capacity plugin, the proportion plugin automatically calculates queue's deserved resource amount by configuring queue Weight values, without explicitly configuring deserved values:
89
89
90
90
```yaml
91
91
apiVersion: scheduling.volcano.sh/v1beta1
@@ -99,16 +99,16 @@ spec:
99
99
memory: "40Gi"
100
100
```
101
101
102
-
When total cluster resource is `total_resource`, each queue's deserverd value is calculated as:
102
+
When total cluster resource is `total_resource`, each queue's deserved value is calculated as:
Where `queue_weight` represents current queue's weight, `total_weight` represents sum of all queue weights, `total_resource` represents total cluster resources.
108
108
109
-
Compared to capacity plugin, capacity plugin allows direct configuration of queue's deserverd value, while proportion plugin automatically calculates queue's deserverd value through weight ratio. When cluster resources change (e.g., through Cluster Autoscaler or Karpenter scaling), proportion plugin automatically recalculates each queue's deserverd value based on weight ratios, requiring no manual intervention.
109
+
Compared to capacity plugin, capacity plugin allows direct configuration of queue's deserved value, while proportion plugin automatically calculates queue's deserved value through weight ratio. When cluster resources change (e.g., through Cluster Autoscaler or Karpenter scaling), proportion plugin automatically recalculates each queue's deserved value based on weight ratios, requiring no manual intervention.
110
110
111
-
> **Important Note**: The actual deserverd value is dynamically adjusted. If calculated `queue_deserved` is greater than total resource requests of PodGroups waiting to be scheduled in the queue, the final deserverd value will be set to the total request amount to avoid over-reservation of resources and improve overall utilization.
111
+
> **Important Note**: The actual deserved value is dynamically adjusted. If calculated `queue_deserved` is greater than total resource requests of PodGroups waiting to be scheduled in the queue, the final deserved value will be set to the total request amount to avoid over-reservation of resources and improve overall utilization.
112
112
113
113
> **Note**:
114
114
> 1. capacity plugin and proportion plugin must be used exclusively, they cannot be used simultaneously
@@ -236,4 +236,4 @@ This scenario works with both capacity plugin and proportion plugin:
236
236
>
237
237
> 2. The choice between plugins depends on whether you want to set deserved directly (capacity) or calculate deserved automatically through weights (proportion)
238
238
>
239
-
> 3. After Volcano v1.9.0, capacity plugin is recommended as it provides more intuitive resource configuration
239
+
> 3. After Volcano v1.9.0, capacity plugin is recommended as it provides more intuitive resource configuration
Copy file name to clipboardExpand all lines: versioned_docs/version-v1.10.0/Concepts/Queue.md
+39-1Lines changed: 39 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -89,11 +89,49 @@ This field is used to configure [hierarchical queues](/docs/KeyFeatures/Hierarch
89
89
`Closing` indicates that the queue is becoming unavailable. It is a transient state. A `Closing` queue cannot accept any new PodGroups.
90
90
### Unknown
91
91
`Unknown` indicates that the queue status is unknown because of unexpected situations such as network jitter.
92
+
93
+
## Multi-tenant Example
94
+
95
+
In a multi-tenant cluster, each team can have their own Queue with separate resource limits. Here's an example with two teams:
96
+
97
+
```yaml
98
+
# Team A's queue - gets 4 CPUs guaranteed
99
+
apiVersion: scheduling.volcano.sh/v1beta1
100
+
kind: Queue
101
+
metadata:
102
+
name: team-a
103
+
spec:
104
+
capability:
105
+
cpu: "8"
106
+
memory: 16Gi
107
+
guarantee:
108
+
resource:
109
+
cpu: "4"
110
+
memory: 8Gi
111
+
reclaimable: true
112
+
---
113
+
# Team B's queue - gets 4 CPUs guaranteed
114
+
apiVersion: scheduling.volcano.sh/v1beta1
115
+
kind: Queue
116
+
metadata:
117
+
name: team-b
118
+
spec:
119
+
capability:
120
+
cpu: "8"
121
+
memory: 16Gi
122
+
guarantee:
123
+
resource:
124
+
cpu: "4"
125
+
memory: 8Gi
126
+
reclaimable: true
127
+
```
128
+
129
+
Each team submits their jobs to their own queue. If Team A's jobs are idle, Team B can use the extra resources, and vice versa.
92
130
93
131
## Note
94
132
#### default Queue
95
133
When Volcano starts, it automatically creates queue `default` whose `weight` is `1`. Subsequent jobs that are not assigned to a queue will be assigned to queue `default`.
96
134
#### root queue
97
135
When Volcano starts, it also creates a queue named root by default. This queue is used when the [hierarchical queue](/docs/KeyFeatures/HierarchicalQueue) feature is enabled, serving as the root queue for all queues, with the default queue being a child queue of the root queue.
98
136
99
-
> For more information on queue usage scenarios, please refer to [Queue Resource Management](/docs/KeyFeatures/QueueResourceManagement)
137
+
> For more information on queue usage scenarios, please refer to [Queue Resource Management](/docs/KeyFeatures/QueueResourceManagement)
0 commit comments