kubevirt / cluster-network-addons-operator

Deploy additional networking components on top of your Kubernetes cluster
Apache License 2.0
71 stars 49 forks source link

MultusDynamicNetworks fails on containerd systems #1846

Open KrystianMarek opened 1 month ago

KrystianMarek commented 1 month ago

What happened: The addons operator deployed as per instruction with:

apiVersion: networkaddonsoperator.network.kubevirt.io/v1
kind: NetworkAddonsConfig
metadata:
  name: cluster
spec:
  multus: {}
  multusDynamicNetworks: {}
  linuxBridge: {}
  kubeMacPool: {}
  ovs: {}
  macvtap: {}
  kubeSecondaryDNS: {}
  kubevirtIpamController: {}
  imagePullPolicy: Always

By default deploys multus crio dynamic network controller Rendering the controller broken when deployed on a system with containerd. There is another manifest dedicated to containerd systems this. NetworkAddonsConfig.spec.multusDynamicNetworks does not allow any configuration, not even choosing the correct manifest.

What you expected to happen: multusDynamicNetworks works on systems with containerd

How to reproduce it (as minimally and precisely as possible): Deploy NetworkAddonsConfig mentioned above on a system with containerd, for example ubuntu.

Workaround: Disable multusDynamicNetworks by deploying

apiVersion: networkaddonsoperator.network.kubevirt.io/v1
kind: NetworkAddonsConfig
metadata:
  name: cluster
spec:
  imagePullPolicy: IfNotPresent
  kubeMacPool: {}
  kubeSecondaryDNS: {}
  kubevirtIpamController: {}
  linuxBridge: {}
  macvtap: {}
  multus: {}
  ovs: {}

Deploy dynamic-networks-controller separately. Be mindful of namespaces. Cluster network addons operator deploys to cluster-network-addons namespace.

Environment:

maiqueb commented 1 month ago

/cc

oshoval commented 1 month ago

maybe this one suggests the solution https://github.com/kubevirt/cluster-network-addons-operator/issues/1804 ?