VIP and Service agent:
K8S v1.0: Use userspace mode
K8S v1.1: Added iptables mode instead of userspace. Starting from v1.2, the default is iptables proxy
K8S v1.8.0-beta: add ipvs proxy, v1.14 version starts to use ipvs proxy by default
The difference between iptables and ipvs in k8s
Background: Whether it is an iptables or ipvs proxy service, it actually works on the concept of layer 4 (TCP/UDP over IP). The layer 4 proxy solution cannot analyze and process the protocol. Therefore, in the K8S v1.1 version, the Ingress API is added to implement the 7-layer (application layer) proxy solution
Adopting the Ingress solution requires application layer software to provide support, such as nginx's ingress solution:
Ingress-nginx github address: https://github.com/kubernetes/ingress-nginx
Ingress-Nginx official website address: https://kubernetes.github.io/ingress-nginx
Conventional nginx reverse proxy solution:
Ingress-Nginx working principle:
The final effect of the ingress-nginx solution:
Use the style of k8s configuration to achieve the same effect as configuring proxy rules in the nginx configuration file;
Similarly, there is the Ingress-HAproxy solution, the configuration is slightly more troublesome than nginx