部署kubernetes集群时,默认的kube-proxy是使用系统的iptables来实现请求转发,有没有必要切换到ipvs?
早年k8s中,kube-proxy默认使用的是iptables模式,通过各个node节点上的iptables规则来实现service的负载均衡,但是随着service数量的增大,iptables模式由于线性查找匹配、全量更新等特点,其性能会显著下降。
从k8s的1.8版本开始,kube-proxy引入了IPVS模式,IPVS模式与iptables同样基于Netfilter,但是采用的hash表,因此当service数量达到一定规模时,hash查表的速度优势就会显现出来,从而提高service的服务性能
收起早期的kube-proxy的工作模式是iptables,后来版本的kube-proxy已经更改为ipvs.ipvs相对iptables对系统的性能影响更小,转发效率更高
收起