Overview
| KEP |
Graduation Status |
| 5055 |
GA (1.37) |
DRA Device Taints and Tolerations extends the familiar taint and toleration system from nodes to DRA resources. Each device may list a set of taints that follow the familiar key=value:effect format. The following effects are supported: None (noop), NoSchedule, and NoExecute. The same effects are valid for tolerations.
Karpenter Integration
There are two required changes, and one potential future change we may want to consider:
- Karpenter must respect taints on existing devices
- Karpenter must enable cloudproviders to pass tainted devices via the InstanceType API
- Karpenter may enable cloudproviders to provide startupTaints for devices
While the third change has an obvious parallel to Karpenter's existing taint support on NodePools, it's not obvious that the startup taint pattern will emerge for DRA given that it has more powerful status reporting primitives than taints for device readiness. Before surfacing this as either cloudprovider config or user config, we should let the DRA driver ecosystem mature and see if it emerges as a common pattern.
- Please vote on this issue by adding a 👍 reaction to the original issue to help the community and maintainers prioritize this request
- Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
- Comments asking for updates generate extra noise for issue followers and do not help maintainers prioritize issues. If you think the issue is higher priority than it is labelled, please instead add your user story.
- If you are interested in working on this issue or have submitted a pull request, please assign yourself
Overview
DRA Device Taints and Tolerations extends the familiar taint and toleration system from nodes to DRA resources. Each device may list a set of taints that follow the familiar
key=value:effectformat. The following effects are supported:None(noop),NoSchedule, andNoExecute. The same effects are valid for tolerations.Karpenter Integration
There are two required changes, and one potential future change we may want to consider:
While the third change has an obvious parallel to Karpenter's existing taint support on NodePools, it's not obvious that the startup taint pattern will emerge for DRA given that it has more powerful status reporting primitives than taints for device readiness. Before surfacing this as either cloudprovider config or user config, we should let the DRA driver ecosystem mature and see if it emerges as a common pattern.