k8s虽然默认带有ipvs,但是需要手动安装配置

安装:

apt install ipset 
apt install ipvsadm

安装后 lsmod | grep ip_vs   查看已经存在

 修改kube-proxy配置

kubectl edit configmap kube-proxy -n kube-system
修改文件中的mode
ipvs:
      excludeCIDRs: null
      minSyncPeriod: 0s
      scheduler: ""
      strictARP: false
      syncPeriod: 0s
      tcpFinTimeout: 0s
      tcpTimeout: 0s
      udpTimeout: 0s
    kind: KubeProxyConfiguration
    metricsBindAddress: ""
    mode: "ipvs"     #修改此处
    nodePortAddresses: null

重启namespace为kube-system的pod

kubectl delete pod --all -n kube-system

 检查是否使用ipvs  

kubectl get pod -n kube-system

kubectl logs kube-proxy-jj72c   -n kube-system
注意kube-proxy-jj72c使用自己的pod
日志中出现Using ipvs Proxier

 查看ipvs代理规则

 kubectl get svc --all-namespaces

 ipvsadm -ln

 

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐