Skip to content

Commit 816efb7

Browse files
committed
[KEP-4817] Dedicated sub-section
Signed-off-by: Lionel Jouin <[email protected]>
1 parent d0eca44 commit 816efb7

File tree

1 file changed

+25
-14
lines changed

1 file changed

+25
-14
lines changed

content/en/docs/concepts/scheduling-eviction/dynamic-resource-allocation.md

Lines changed: 25 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -11,10 +11,6 @@ weight: 65
1111

1212
{{< feature-state feature_gate_name="DynamicResourceAllocation" >}}
1313

14-
Dynamic Resource Allocation with ResourceClaim device status:
15-
16-
{{< feature-state feature_gate_name="DRAResourceClaimDeviceStatus" >}}
17-
1814
Dynamic resource allocation is an API for requesting and sharing resources
1915
between pods and containers inside a pod. It is a generalization of the
2016
persistent volumes API for generic resources. Typically those resources
@@ -51,11 +47,7 @@ ResourceClaim
5147
for use by workloads. For example, if a workload needs an accelerator device
5248
with specific properties, this is how that request is expressed. The status
5349
stanza tracks whether this claim has been satisfied and what specific
54-
resources have been allocated. When the `DRAResourceClaimDeviceStatus`
55-
[feature gate](/docs/reference/command-line-tools-reference/feature-gates/) is
56-
enabled, drivers can report driver-specific device status data for each allocated
57-
device in a resource claim. For example, IPs assigned to a network interface device
58-
can be reported in the ResourceClaim status.
50+
resources have been allocated.
5951

6052
ResourceClaimTemplate
6153
: Defines the spec and some metadata for creating
@@ -208,6 +200,23 @@ spec:
208200
You may also be able to mutate the incoming Pod, at admission time, to unset
209201
the `.spec.nodeName` field and to use a node selector instead.
210202

203+
## ResourceClaim Device Status
204+
205+
{{< feature-state feature_gate_name="DRAResourceClaimDeviceStatus" >}}
206+
207+
The drivers can report driver-specific device status data for each allocated device
208+
in a resource claim. For example, IPs assigned to a network interface device can be
209+
reported in the ResourceClaim status.
210+
211+
The drivers setting the status, the accuracy of the information depends on the implementation
212+
of those DRA Drivers. Therefore, the reported status of the device may not always reflect the
213+
real time changes of the state of the device.
214+
215+
When the feature is disabled, that field automatically gets cleared when storing the ResourceClaim.
216+
217+
A ResourceClaim device status is supported when it is possible, from a DRA driver, to update an
218+
existing ResourceClaim where the `status.devices` field is set.
219+
211220
## Enabling dynamic resource allocation
212221

213222
Dynamic resource allocation is an *alpha feature* and only enabled when the
@@ -241,11 +250,6 @@ If not supported, this error is printed instead:
241250
error: the server doesn't have a resource type "deviceclasses"
242251
```
243252

244-
A ResourceClaim device status is supported when it is possible, from a DRA driver,
245-
to update an existing ResourceClaim where the `status.devices` field is set. When the
246-
`DRAResourceClaimDeviceStatus` feature is disabled, that field automatically
247-
gets cleared when storing the ResourceClaim.
248-
249253
The default configuration of kube-scheduler enables the "DynamicResources"
250254
plugin if and only if the feature gate is enabled and when using
251255
the v1 configuration API. Custom configurations may have to be modified to
@@ -254,6 +258,13 @@ include it.
254258
In addition to enabling the feature in the cluster, a resource driver also has to
255259
be installed. Please refer to the driver's documentation for details.
256260

261+
### Enabling Device Status
262+
263+
[ResourceClaim Device Status](#resourceclaim-device-status) is an *alpha feature*
264+
and only enabled when the `DRAResourceClaimDeviceStatus`
265+
[feature gate](/docs/reference/command-line-tools-reference/feature-gates/)
266+
is enabled in the kube-apiserver.
267+
257268
## {{% heading "whatsnext" %}}
258269

259270
- For more information on the design, see the

0 commit comments

Comments
 (0)