kube-dra
A Rust library for building Kubernetes Dynamic Resource Allocation (DRA) drivers.
⚠️ This crate is under active development and not yet usable. Watch this repository for updates.
What is this?
DRA went GA in Kubernetes 1.34. The Kubernetes project provides
k8s.io/dynamic-resource-allocation/kubeletplugin
— a Go helper library that handles all the plumbing: socket registration,
gRPC lifecycle, rolling updates, and connection monitoring.
No equivalent exists for Rust. kube-dra aims to fill that gap.
Status
- Proto bindings (tonic-build)
-
DraDrivertrait -
KubeletPluginbuilder (single socket) -
ResourceSlicePublisher - Mock sensor example
- End-to-end example working on a kind cluster
- Rolling update support
License
Apache 2.0 licensed. See LICENSE for details.