@@ -17,6 +17,10 @@ Dynamic Resource Allocation with control plane controller:
1717
1818{{< feature-state feature_gate_name="DRAControlPlaneController" >}}
1919
20+ Dynamic Resource Allocation with ResourceClaim device status:
21+
22+ {{< feature-state feature_gate_name="DRAResourceClaimDeviceStatus" >}}
23+
2024Dynamic resource allocation is an API for requesting and sharing resources
2125between pods and containers inside a pod. It is a generalization of the
2226persistent volumes API for generic resources. Typically those resources
@@ -51,7 +55,11 @@ ResourceClaim
5155 for use by workloads. For example, if a workload needs an accelerator device
5256 with specific properties, this is how that request is expressed. The status
5357 stanza tracks whether this claim has been satisfied and what specific
54- resources have been allocated.
58+ resources have been allocated. When the ` DRAResourceClaimDeviceStatus `
59+ [ feature gate] ( /docs/reference/command-line-tools-reference/feature-gates/ ) is
60+ enabled, drivers can report driver-specific device status data for each allocated
61+ device in a resource claim. For example, IPs assigned to a network interface device
62+ can be reported in the ResourceClaim status.
5563
5664ResourceClaimTemplate
5765: Defines the spec and some metadata for creating
@@ -277,6 +285,10 @@ When a resource driver uses a control plane controller, then the
277285` DRAControlPlaneController` feature gate has to be enabled in addition to
278286` DynamicResourceAllocation` .
279287
288+ When a resource driver reports the status of the devices, then the
289+ ` DRAResourceClaimDeviceStatus` feature gate has to be enabled in addition to
290+ ` DynamicResourceAllocation` .
291+
280292A quick check whether a Kubernetes cluster supports the feature is to list
281293DeviceClass objects with :
282294
@@ -302,6 +314,11 @@ ResourceClaim where the `spec.controller` field is set. When the
302314` DRAControlPlaneController` feature is disabled, that field automatically
303315gets cleared when storing the ResourceClaim.
304316
317+ A ResourceClaim device status is supported when it is possible, from a DRA driver,
318+ to update an existing ResourceClaim where the `status.devices` field is set. When the
319+ ` DRAResourceClaimDeviceStatus` feature is disabled, that field automatically
320+ gets cleared when storing the ResourceClaim.
321+
305322The default configuration of kube-scheduler enables the "DynamicResources"
306323plugin if and only if the feature gate is enabled and when using
307324the v1 configuration API. Custom configurations may have to be modified to
0 commit comments