1.安装kernel-devel包,需要与当前kernel版本一致
yum install kernel-devel
yum update kernel
2.由于update内核后,需要重启系统使其生效
3.获取toa源码
cd /usr/local/src/
git clone https://github.com/huaweicloud/elb-toa.git
cd elb-toa/src
make
4.正常的话应该会生成toa.ko,加载测试下
insmod toa.ko
lsmod |grep toa
- 部署个nginx测试下
- 添加开机自加载
cd /lib/modules/uname -r
/kernel/net/
cp /usr/local/src/elb-toa/src/toa.ko .
把下面这句加入rc.local
insmod /lib/modules/3.10.0-957.21.3.el7.x86_64/kernel/net/toa.ko
确保/etc/rc.d/rc.local 有执行权限,否则rc.local不生效
参考:https://support.huaweicloud.com/eu-west-0-usermanual-elb/zh_cn_elb_06_0001.html
toa模块是为了让后端的realserver能够看到真实的clientip而不是lvs的dip。
1、下载http://kb.linuxvirtualserver.org … 86_64.rs.src.tar.gz
2、解压
3、编辑.config,将CONFIG_IPV6=M改成CONFIG_IPV6=y
测试的时候发现如果不改会遇到报错,可以看下这个帖子:http://bbs.linuxtone.org/forum.p … 1631&pid=111599
4、编辑Makefile,可以在EXTRAVERSION =处加上自定义的一些说明,将会在uname -r中显示。比如-shanks.e11.x86_64
5、make -jn
6、make modules_install
7、make install
8、修改/boot/grub/grub.conf 用第一个内核启动
9、reboot
10、装个nginx,试试看能不能看见真实的clientip。
参考:http://kb.linuxvirtualserver.org/wiki/IPVS_FULLNAT_and_SYNPROXY
转载请注明:SuperIT » centos7 编译加载toa模块