Skip to content

Commit 32d24ef

Browse files
committed
Update the DRA doc for DRADeviceBindingConditions
1 parent d2f678e commit 32d24ef

File tree

2 files changed

+35
-0
lines changed

2 files changed

+35
-0
lines changed

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

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -324,6 +324,21 @@ When the feature is disabled, that field automatically gets cleared when storing
324324
A ResourceClaim device status is supported when it is possible, from a DRA driver, to update an
325325
existing ResourceClaim where the `status.devices` field is set.
326326

327+
## Device Binding Conditions
328+
329+
{{< feature-state feature_gate_name="DRADeviceBindingConditions" >}}
330+
331+
Device Binding Conditions allow for the setting of BindingConditions and BindingFailureConditions, which help determine if a device needs preparation before proceeding to the Bind Phase.
332+
This is particularly useful in systems where devices must be attached to nodes. The DRA driver sets these conditions based on the specific characteristics of the device it manages.
333+
334+
A key feature is the ability to wait for device attachment during the PreBind Phase.
335+
The scheduler ensures that all conditions in BindingConditions are met before moving forward.
336+
This involves updating the ResourceClaim with the necessary conditions and monitoring the status of the device. If a device requires preparation, the DRA driver handles these tasks and updates the conditions accordingly.
337+
Additionally, if any BindingFailureConditions are met, the system identifies an error and terminates the waiting process.
338+
339+
If you want to set a timeout period for waiting during the PreBind phase, you can specify the desired number of seconds in `BindingTimeoutSeconds`.
340+
Furthermore, by setting `UsageRestrictedToNode` to `true`, you can configure the nodeSelector to match only a single node.
341+
327342
## Enabling dynamic resource allocation
328343

329344
Dynamic resource allocation is a *beta feature* which is off by default and only enabled when the
@@ -378,6 +393,12 @@ and only enabled when the `DRAResourceClaimDeviceStatus`
378393
[feature gate](/docs/reference/command-line-tools-reference/feature-gates/)
379394
is enabled in the kube-apiserver.
380395

396+
### Enabling Device Binding Conditions
397+
398+
[Device Binding Status](#device-binding-conditions) is an *alpha feature* and only enabled when the
399+
`DRADeviceBindingConditions` [feature gate](/docs/reference/command-line-tools-reference/feature-gates/)
400+
is enabled in the kube-scheduler.
401+
381402
## {{% heading "whatsnext" %}}
382403

383404
- For more information on the design, see the
Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
---
2+
title: DRADeviceBindingConditions
3+
content_type: feature_gate
4+
_build:
5+
list: never
6+
render: false
7+
8+
stages:
9+
- stage: alpha
10+
defaultValue: false
11+
fromVersion: "1.33"
12+
---
13+
Enables support for DeviceBindingConditions in the DRA related fields.
14+
This allows for thorough device readiness checks and attachment processes before Bind phase.

0 commit comments

Comments
 (0)