我使用 RHEL 6.8 通过 LVS 直接路由进行负载平衡。出于某种原因,我不得不重新启动我的 LVS 路由器。重新启动后,LVS 服务无法正常工作
我已经做了以下事情,但仍然没有效果
/sbin/chkconfig --level 0123456 iptables on
/sbin/chkconfig --level 0123456 piranha-gui on
/sbin/chkconfig --level 0123456 pulse on
/sbin/chkconfig --level 0123456 sshd on
service httpd restart
service piranha-gui restart
service pulse restart
ipvsadm -A -t 10.209.104.60:80 -s rr
ipvsadm -a -t 10.209.104.60:80 -r 10.209.104.7:80 -g
ipvsadm -a -t 10.209.104.60:80 -r 10.209.104.5:80 -g
ifconfig 命令是不显示 VIP 作为 eth0 的别名(我认为应该从 /etc/sysconfig/ha/lvs.cf 文件自动配置)
日志文件条目
lvsprimary pulse[3143]: 主机启动脉冲
lvsprimary pulse[3143]:伙伴死亡:激活lvs
lvsprimary lvsd[3147]: 正在启动虚拟服务负载均衡器活动:80
lvsprimary 内核:IPVS:__ip_vs_del_service:输入
lvsprimary 内核:IPVS:__ip_vs_del_service:输入
lvsprimary lvsd[3147]: 为作为 pid 3151 运行的 loadbalancer/server1 创建监控程序
lvsprimary lvsd[3147]: 为作为 pid 3152 运行的 loadbalancer/server2 创建监控程序
lvsprimary nanny[3152]: 启动 LVS 客户端监控器 10.###.###.##:80 -> 10.2##.###.7:0
lvsprimary nanny[3151]: 启动 LVS 客户端监控器 10.###.###.##:80 -> 10.2##.###.5:0
lvsprimary pulse[3154]: 免费 lvs arps 已完成
答案1
您可以在日志文件中看到,所有服务都配置正常。正如我在其中一条评论中提到的那样,所有配置都正常,但问题在于数据包转发,即使 ipvsadm 规则正确陈述。
问题
防火墙规则在启动时配置为默认规则
解决方案
运行以下命令刷新所有防火墙规则
iptables -F
我们可以在启动时实现这一点,只需在文件中添加此命令/etc/rc.d/rc.local