k8s集群部署-配置ipvs功能

说明

在Kubernetes中Service有两种带来模型:

  • 基于iptables的
  • 基于ipvs的

两者比较,ipvs的性能明显要高一些,但是如果要使用它,需要手动载入ipvs模块

master 服务器

安装ipset和ipvsadm

yum install ipset ipvsadm -y

添加需要加载的模块

创建 /etc/sysconfig/modules/ipvs.modules 文件并加上内容:

cat <<EOF> /etc/sysconfig/modules/ipvs.modules
#!/bin/bash
modprobe -- ip_vs
modprobe -- ip_vs_rr
modprobe -- ip_vs_wrr
modprobe -- ip_vs_sh
modprobe -- nf_conntrack_ipv4
EOF

为脚本添加执行权限

chmod 777 /etc/sysconfig/modules/ipvs.modules

执行脚本文件

/bin/bash /etc/sysconfig/modules/ipvs.modules

查看模块是否加载成功

lsmod | grep -e ip_vs -e nf_conntrack_ipv4

看到下面提示,说明成功:

nf_conntrack_ipv4      15053  0
nf_defrag_ipv4         12729  1 nf_conntrack_ipv4
ip_vs_sh               12688  0
ip_vs_wrr              12697  0
ip_vs_rr               12600  0
ip_vs                 141092  6 ip_vs_rr,ip_vs_sh,ip_vs_wrr
nf_conntrack          133387  2 ip_vs,nf_conntrack_ipv4
libcrc32c              12644  3 xfs,ip_vs,nf_conntrack

node1 服务器

按照上面操作

node2 服务器

按照上面操作

重启服务器

必须重启3台服务器

reboot now

原文出处:/show_1IX6JPpyer2n.html