@@ -11,10 +11,6 @@ weight: 65
11
11
12
12
{{< feature-state feature_gate_name="DynamicResourceAllocation" >}}
13
13
14
- Dynamic Resource Allocation with ResourceClaim device status:
15
-
16
- {{< feature-state feature_gate_name="DRAResourceClaimDeviceStatus" >}}
17
-
18
14
Dynamic resource allocation is an API for requesting and sharing resources
19
15
between pods and containers inside a pod. It is a generalization of the
20
16
persistent volumes API for generic resources. Typically those resources
@@ -51,11 +47,7 @@ ResourceClaim
51
47
for use by workloads. For example, if a workload needs an accelerator device
52
48
with specific properties, this is how that request is expressed. The status
53
49
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.
59
51
60
52
ResourceClaimTemplate
61
53
: Defines the spec and some metadata for creating
@@ -208,6 +200,23 @@ spec:
208
200
You may also be able to mutate the incoming Pod, at admission time, to unset
209
201
the `.spec.nodeName` field and to use a node selector instead.
210
202
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
+
211
220
# # Enabling dynamic resource allocation
212
221
213
222
Dynamic resource allocation is an *alpha feature* and only enabled when the
@@ -241,11 +250,6 @@ If not supported, this error is printed instead:
241
250
error: the server doesn't have a resource type "deviceclasses"
242
251
` ` `
243
252
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
-
249
253
The default configuration of kube-scheduler enables the "DynamicResources"
250
254
plugin if and only if the feature gate is enabled and when using
251
255
the v1 configuration API. Custom configurations may have to be modified to
@@ -254,6 +258,13 @@ include it.
254
258
In addition to enabling the feature in the cluster, a resource driver also has to
255
259
be installed. Please refer to the driver's documentation for details.
256
260
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
+
257
268
# # {{% heading "whatsnext" %}}
258
269
259
270
- For more information on the design, see the
0 commit comments