1) 下载安装的版本建议是Keepalived v1.1.20 以及之前的版本,Keepalived v1.1.20之后的版本在编译时可能会有未知错误。
2) 编辑过程中需要用到openssl-devel这个依赖包,使用yum -y install openssl-devel来安装,如果yum安装失败,可以通过yum update来更新yum,再安装。
3) 如果yum update失败,可以通过修改/etc/yum.repos.d/CentOS-Media.repo中的yum源,寻找可用的源,如163,sohu等国内的镜像源。
4) 查看var/log/messages,如果看到都是MASTER STATUS,或者ip add list都可以看到VIP,基本上可以说明VRRP通信有问题,可以用tcpdump –ni any vrrp,看到主备2个LVS都在发VRRP包,正常情况下只有MASTER发送VRRP,检查iptables防火墙,需要在2台LVS上都加入以下2条:
-A RH-Firewall-1-INPUT -s $LVS1(IP) -j ACCEPT
-A RH-Firewall-1-INPUT -s $LVS2 (IP)-j ACCEPT
5) 如果还是无法正常访问,可以尝试停掉iptables再访问,如果可以则调整iptables条目
Centos默认需要在RH链上加入 -A RH-Firewall-1-INPUT -p tcp -m tcp --dport 80 -j ACCEPT
6) 默认情况下lvs的DR模式只修改目标MAC地址,其他都无法修改,包括Real Serverd的端口,可以通过在real server上的iptables来实现端口的重定向,添加记录
-A PREROUTING -d VIP -i eth0 -p tcp -m tcp --dport 80 -j REDIRECT --to-ports 8080