Skip to content

feat: dra dynamic labels#2030

Merged
yaroslavborbat merged 1 commit intomainfrom
feat/dra-dynamic-labels
Mar 2, 2026
Merged

feat: dra dynamic labels#2030
yaroslavborbat merged 1 commit intomainfrom
feat/dra-dynamic-labels

Conversation

@yaroslavborbat
Copy link
Member

@yaroslavborbat yaroslavborbat commented Feb 27, 2026

Description

USB-over-IP Port Limitation in Cluster Environment

When using USB-over-IP (usbip) to share USB devices across cluster nodes, there is a hardware limitation of 16 available ports per node:

  • 8 ports for USB 2.0 (High Speed)
  • 8 ports for USB 3.0 (SuperSpeed)

USB devices can be attached from any node in the cluster via usbip.


Node Annotations

Each node maintains the following dynamically updated annotations:

  • usb.virtualization.deckhouse.io/usbip-total-ports — total number of available usbip ports
  • usb.virtualization.deckhouse.io/usbip-used-ports — number of currently used usbip ports
  • usb.virtualization.deckhouse.io/usbip-address — usbip server address of the node

These annotations are updated dynamically based on current port usage.


Node Selector Configuration

The nodeSelector supports two possible values:

  • virtualization.deckhouse.io/usb-gateway = any
  • virtualization.deckhouse.io/usb-gateway = <node name>

Where:

  • any allows selecting any suitable node in the cluster
  • <node name> restricts selection to a specific node

Checklist

  • The code is covered by unit tests.
  • e2e tests passed.
  • Documentation updated according to the changes.
  • Changes were tested in the Kubernetes cluster manually.

@yaroslavborbat yaroslavborbat added this to the v1.6.0 milestone Feb 27, 2026
@yaroslavborbat yaroslavborbat force-pushed the feat/dra-dynamic-labels branch 5 times, most recently from 3507e03 to d04e751 Compare March 2, 2026 11:51
@yaroslavborbat yaroslavborbat marked this pull request as ready for review March 2, 2026 11:51
@yaroslavborbat yaroslavborbat force-pushed the feat/dra-dynamic-labels branch from d04e751 to 24e6bf5 Compare March 2, 2026 11:53
@yaroslavborbat yaroslavborbat force-pushed the feat/dra-dynamic-labels branch from 24e6bf5 to d43c4ec Compare March 2, 2026 12:17
Signed-off-by: Yaroslav Borbat <yaroslav.borbat@flant.com>
@yaroslavborbat yaroslavborbat force-pushed the feat/dra-dynamic-labels branch from d43c4ec to e878823 Compare March 2, 2026 12:39
@danilrwx danilrwx self-requested a review March 2, 2026 12:41
@yaroslavborbat yaroslavborbat merged commit e0a11f0 into main Mar 2, 2026
28 of 29 checks passed
@yaroslavborbat yaroslavborbat deleted the feat/dra-dynamic-labels branch March 2, 2026 12:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants