These three only need v30iot L2 presence, which exists on every node
(eth1 is the v30iot interface on k8s-1/2/3 and k8s-edge alike), not the
edge node's USB devices. Removing their topology.kubernetes.io/zone=edge
nodeSelector and workload-class=pinned toleration lets the edge
NoSchedule taint keep them off the (soon-to-be dedicated, tiny N100) edge
box, reserving it for the only genuinely USB-bound workloads:
home-assistant (FTDI power meter) and zwave-js (ZWA-2 radio).
- matter-server / otbr: macvlan NAD already uses master: eth1, which
resolves to v30iot on all nodes (verified live on k8s-1/2/3) — no NAD
change needed.
- music-assistant: hostNetwork gets v30iot L2 on any node; it is the
heaviest of the three (2Gi limit), so this is the main capacity win.
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>