Follow

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use
Contact

Do I need `kube-proxy` to use `Ingress` for load distribution?

Do I need kube-proxy to use Ingress for load distribution? Or do you get the endpoint and distribute it directly to the pod and use kube-proxy only when using Load Balancer and nodeport?

If so, then when you use Ingress for load distribution, it only takes care of the load from routes to service, and the load from service to pod is still done through kube-proxy. Is this the right understanding?

If not, what is the mechanism?

MEDevel.com: Open-source for Healthcare and Education

Collecting and validating open-source software for healthcare, education, enterprise, development, medical imaging, medical records, and digital pathology.

Visit Medevel

I’m a newbie to K8s, so if there is something wrong with my question itself, or with my understanding, please point it out, thank you very much!

I’ve looked up some information and it says that Ingress does not use kube-proxy to do the load.

I’m skeptical, I’d like to know why it doesn’t use it and how it implements the kube-proxy part of the functionality?

>Solution :

Since Ingress is just an API it actually depends on the implementation.

For example the traefik proxy ingress implementation is making loadbalancing over the endpoints it queries from the kubernetes API server. In that case the kube-proxy is not used.

Keep in mind: kube-proxy usually configures DNAT rules in iptables, so it is not a user space proxy and connections to the Service IPs are loadbalanced by the kernel and iptables.

Add a comment

Leave a Reply

Keep Up to Date with the Most Important News

By pressing the Subscribe button, you confirm that you have read and are agreeing to our Privacy Policy and Terms of Use

Discover more from Dev solutions

Subscribe now to keep reading and get access to the full archive.

Continue reading