CentOS8安装keepalived和lvs遇到的坑

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS8安装keepalived和lvs遇到的坑相关的知识,希望对你有一定的参考价值。

CentOS8 最小化安装。关闭selinux。
两个负载yum 安装keepalived 和ipvsadm。
一/ 没有配置ip_forward,lvs用DR模式不用。
二/没有配置虚拟IP(只在keepalived配置中写的)
前期是没有会配置虚拟接口,后来发现配置了也没啥用。
如果想配置可以复制配置文件,只能保留最基本的几个参数,并且重启生效。vim /etc/sysconfig/network-scripts/ifcfg-ens32:0.bak
TYPE=Ethernet
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=no
NAME=ens32:0
DEVICE=ens32:0
ONBOOT=yes
IPADDR=192.168.99.100
PREFIX=24
GATEWAY=192.168.99.2

在CentOS8由NetworkManager接管网络配置了,很多网络配置命令和方法都不好使。
CentOS8下由nmcli和nmtui配置网络。nmcli里主要有连接和设备,多对一关系。连接就是配置,设备就是网络设备。

三/最大的坑yum安装keepalived后不好使,通过keepalived可以启用虚拟IP,也自动生成了LVS的配置,但是客户端就是访问不了。不通过keepalived,手动设置lvs是好用的。
229 ipvsadm -A -t 192.168.99.100:80 -s rr
230 ipvsadm -a -t 192.168.99.100:80 -r 192.168.99.121:80 -g
231 ipvsadm -a -t 192.168.99.100:80 -r 192.168.99.122:80 -g
最终解决方法,到官网下载keepalived编译安装,覆盖现有keepalived,好用了!配置文件都没有修改就可以了。先安装libnl3,再默认编译安装就行了。
291 ./configure
292 make && make install

关于安装的历史命令
6 yum -y install vim
7 yum update -y
11 yum install gcc gcc-c++ lrzsz
24 yum install perl
30 yum -y install ipvsadm keepalived
92 yum install telnet wget curl
117 yum install tcpdump
227 yum -y install openssl-devel gcc libnl3-devel

四/网上找的防火墙规则都没有效果,就直接方向协议了
firewall-cmd --permanent --add-protocol=vrrp -j ACCEPT

两台http服务器
一/添加虚拟IP的本地回环。
ifconfig lo:0 192.168.99.100 netmask 255.255.255.255
二/ARP设置
net.ipv4.conf.lo.arp_ignore = 1
net.ipv4.conf.lo.arp_announce = 2
net.ipv4.conf.all.arp_ignore = 1
net.ipv4.conf.all.arp_announce = 2
net.ipv4.conf.default.rp_filter = 1
#end of ipvs
重启服务器回环地址消失,可以写个启动脚本。
防火墙开端口就行。

另外,如果发现客户端没有轮询http服务器,只在一台服务器上跑。先看看是不是keepalived配置文件是不是开了 会话保持!!!
ipvsadm -lnc干净了再开第二个连接。

以上是关于CentOS8安装keepalived和lvs遇到的坑的主要内容,如果未能解决你的问题,请参考以下文章

lvs+keepalived实战

通过LVS+Keepalived实现exchagne2016访问高可用问题

LVS+Nginx(LVS + Keepalived + Nginx安装及配置)

Lvs+keepalived+Nginx双机热备实现Nginx高可用

keepalived lvs

Keepalived+LVS DR