The clone has been bugging me too. We could use an Rc or Arc too as a balance between usability and performance.
If I understand correctly this has the correct behavior. It is perfectly normal for a host to have mac addresses that are not connected to the switch. Most of them do have disconnected 1gb interfaces.
I understand we don't want to use the "inventory agent" data structures, but I think it's OK to have one base data structure that we try to reuse across crates for basic components like NetworkInterface and these few others.
Should be OpenshiftFamily(Version) as we want the same behavior between okd and openshift.
That is a clear naming problem. Should be either k3d for real by detecting it another way or k3sFamily just like OpenshiftFamily
This is more of a fallback to a default than a true way to detect that we're running vanilla k8s (made by kubeadm for example).
I think it is fine for now, but that is vendor specific logic. So it should probably be entirely hidden inside the brocade crate's logic.
speed yes, maybe we will need something else but nothing comes to mind right now.