ashchen 发表于 2018-06-04 13:13

keepalived+lvs+路由模式,只有两台既做主备又做均衡怎么搞?

看到有坛友说会造成死循环,实测中也的确出现死循环的问题,这个到底怎么能搞好呢?
例如
192.168.0.1
192.168.0.2

这两台既做均衡又做主备,如果路由模式貌似没有好的办法,双网卡做nat/tunnel应该是可以的
但是不知道有没有人搞成功路由模式

ashchen 发表于 2018-06-04 14:15

自己搜到一片文章

https://blog.csdn.net/wzyzzu/article/details/47277533

用iptables做标记,不让转发数据包进入死循环

ashchen 发表于 2018-06-04 14:46

DR模式的缺陷
1:Realserver和 lvs的vip提供服务的端口必须一致。
也就是说:vip的端口对外端口为 80,但后端服务的真实端口为8080,通过lvs的DR模式是实现不了的。
2:Realserver和LVS不能在同一台机器上
3: Realserver 和LVS需要在同一个vlan或者局域网下。

ashchen 发表于 2018-06-04 16:23

经过不放弃的搜查资料,终于解决了个这问题,不用iptables设mark就可以完美实现只有两台服务器就能实现高可用和均衡

ashchen 发表于 2018-06-04 16:33

本帖最后由 ashchen 于 2018-06-04 16:59 编辑

为了防止遗忘和后续有人碰到同样的问题,备份一下解决方案:
1 进入主模式下,停掉lo:0 网口,进入备机要up, lo:0的realserver配置这个应该谁都知道
2 进入备机模式要停掉本机ipvs,这是重点,停掉ipvs以后就不会造成死循环了
对应的keepalived.conf配置项分别是
notify_master /etc/keepalived/master.sh
notify_backup /etc/keepalived/backup.sh

如果用主备机非对等方案,备机不开启负载均衡即可,因为主机一旦挂了,提供的服务肯定也没了,备机的负载均衡没有意义,直接提供服务即可。如果有多台服务器可以把备机的realserver 去掉即可。一旦主机恢复会拿回转发权,这样不会造成转发包死循环
页: [1]
查看完整版本: keepalived+lvs+路由模式,只有两台既做主备又做均衡怎么搞?