mirror of
https://github.com/k3s-io/kubernetes.git
synced 2026-07-17 11:28:58 +00:00
When the new RollingUpdate option is used, the DRA driver gets deployed such that it uses unique socket paths and uses file locking to serialize gRPC calls. This enables the kubelet to pick arbitrarily between two concurrently instances. The handover is seamless (no downtime, no removal of ResourceSlices by the kubelet). For file locking, the fileutils package from etcd is used because that was already a Kubernetes dependency. Unfortunately that package brings in some additional indirect dependency for DRA drivers (zap, multierr), but those seem acceptable.