The current documentation for configuring the Calico eBPF dataplane in RKE2 (found at Basic Network Options) suggests setting kubernetesServiceEndpoint.host to localhost.
While this works for the calico-node DaemonSet, it causes constant failures for the calico-kube-controllers Deployment.
One thing to note is that using calico auto setup with bpfNetworkBootstrap: Enabled did not work in some environments. For example, provisioning a cluster with segregated roles (etcd vs. Control Plane) fails when providing this setting.
One thing that worked consistently so far is specifying the Control-plane IP address in the calico settings (instead of hostname).
installation:
calicoNetwork:
kubeProxyManagement: Enabled
linuxDataplane: BPF
kubernetesServiceEndpoint:
host: <CONTROL-PLANE-IP-ADDRESS>
port: "6443"
The current documentation for configuring the Calico eBPF dataplane in RKE2 (found at Basic Network Options) suggests setting kubernetesServiceEndpoint.host to localhost.
While this works for the calico-node DaemonSet, it causes constant failures for the calico-kube-controllers Deployment.
One thing to note is that using calico auto setup with
bpfNetworkBootstrap: Enableddid not work in some environments. For example, provisioning a cluster with segregated roles (etcd vs. Control Plane) fails when providing this setting.One thing that worked consistently so far is specifying the Control-plane IP address in the calico settings (instead of hostname).