Please explain in simple terms the difference between kube-proxy and Calico CNI…
The AI explanation is not clear.
kube-proxy
is responsible for communicating with the master node and routing. Calico CNI
provides connectivity by assigning IP addresses to pods and services, and reachability through its routing deamon. The routing seems to be an overlapping function between the two. Calico CNI
uses IPtables, while kube-proxy
sets up iptables rules in order to do random load balancing between them. In short, Calico CNI
is used to configure pods and services with an IP, this IP is then stored in the IP table at the kube-proxy
. ¹²³
Calico replaces kube-proxy if running in eBPF mode, otherwise it uses it.