Kubernetes

k8s开启ipvs

2022-01-05  本文已影响0人  rushui

在所有节点安装ipset和ipvsadm(可选)包

 yum install ipset -y
 yum install ipvsadm -y

在所有的Kubernetes节点执行以下脚本:

cat > /etc/sysconfig/modules/ipvs.modules <<EOF
#!/bin/bash
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
EOF
# 使用lsmod | grep -e ip_vs -e nf_conntrack_ipv4命令查看是否已经正确加载所需的内核模块。
chmod 755 /etc/sysconfig/modules/ipvs.modules && bash /etc/sysconfig/modules/ipvs.modules && lsmod | grep -e ip_vs -e nf_conntrack_ipv4

修改配置

修改ConfigMap的kube-system/kube-proxy中的config.conf,把 mode: “” 改为mode: “ipvs” 保存退出即可

kubectl edit cm kube-proxy -n kube-system

删除之前的pod

kubectl get pod -n kube-system |grep kube-proxy |awk '{system("kubectl delete pod "$1" -n kube-system")}'

查看proxy运行状态

kubectl get pod -n kube-system | grep kube-proxy

查看日志

如果有 Using ipvs Proxier. 说明kube-proxy的ipvs 开启成功!

kubectl logs -n kube-system kube-proxy-54qnw

排障

can’t set sysctl net/ipv4/vs/conn_reuse_mode, kernel version must be at least 4.1
说明内核太旧,要升级centos内核版本
https://www.jianshu.com/p/7aa31da955ac

上一篇下一篇

猜你喜欢

热点阅读