kube-proxy配置strictARP=true
1、非RKE部署的K8s集群:配置首先,需要为kube-proxy启动strictARP,以便Kubernetes集群中的所有网卡停止响应其他网卡的ARP请求,而由OpenELB来处理ARP请求。
$ kubectl edit configmap kube-proxy -n kube-system ...... ipvs: strictARP: true ......
然后重启kube-proxy组件,命令如下:
$ kubectl rollout restart daemonset kube-proxy -n kube-system
2、RKE部署的K8s集群。kube-proxy是使用容器启动,没有kube-proxy的configmap文件,只能通过rancher的RKE模板进行修改,追加对应的参数。并将模板应用在已创建的集群中
kubeproxy: extra_args: ipvs-strict-arp: 'true' proxy-mode: ipvs
通过docker logs kube-proxy-container_id 查看配置生效 --proxy-mode="ipvs" 和--ipvs-strict-arp="true"
RKE2的方式可以参考:
RKE2 kube-proxy --proxy-mode=ipvs --ipvs-strict-arp · Issue #3710 · rancher/rke2 · GitHub