Keepalived 同步守护进程

Keepalived 同步守护进程

我已经启用了lvs_sync_daemon_interface选项,但同步守护进程似乎不起作用

主动节点:

[MASTER:~]# ipvsadm -Lnc
IPVS connection entries
pro expire state       source             virtual            destination
TCP 00:37  SYN_RECV    192.168.1.20:55746 192.168.1.10:80    192.168.1.15:80

被动节点:

[BACKUP:~]# ipvsadm -Lnc
IPVS connection entries
pro expire state       source             virtual            destination

配置:

! Configuration File for keepalived

global_defs {
    lvs_id lb1 #lb2 on backup server
}

vrrp_sync_group VG1 {
        group {
            LB1
        }
}

vrrp_instance LB1 {
    state BACKUP #BACKUP on backup server
    interface eth0
    lvs_sync_daemon_interface eth0
    virtual_router_id 50
    priority 2 #1 on backup server
    nopreempt
    advert_int 1
    smtp_alert
        authentication {
            auth_type PASS
            auth_pass $PASSWORD
    }
        virtual_ipaddress {
            192.168.1.10
        }
}

virtual_server 192.168.1.10 80
    delay_loop 5
    lb_algo wlc
    lb_kind DR
    protocol TCP
    ha_suspend
    sorry_server 127.0.0.1

        real_server 192.168.1.15 80 {
            weight 1
            inhibit_on_failure
                HTTP_GET {
                    url {
                 path /
                 status_code 200
                    }
                    connect_timeout 5
                    nb_get_retry 3
                    delay_before_retry 1
                    connect_port 80
                fwmark 80
                }
        }

        real_server 192.168.1.16 80 {
            weight 1
            inhibit_on_failure
                HTTP_GET {
                    url {
                         path /
                         status_code 200
                        }
                    connect_timeout 5
                    nb_get_retry 3
                    delay_before_retry 1
                    connect_port 80
                fwmark 80
                }
        }
}

系统:CentOS 6.5,Keepalived v1.2.7(2013年2月21日)

更新时间:2014 年 7 月 5 日星期六 08:44:36 BST:

[MASTER]# ps -elf | grep [i]pvs
1 S root     11207     2  0  80   0 -     0 sync_t 08:41 ?        00:00:00 [ipvs_syncmaster]

[BACKUP]# ps -elf | grep [i]pvs
1 S root      6231     2  0  80   0 -     0 sync_t 08:41 ?        00:00:00 [ipvs_syncbackup]

答案1

我已经有一段时间没有玩过 lvs 和 sync 了,但我开始在不使用 keepalived 的情况下进行故障排除,而只使用 ipvs 本身。

来自lvs 文档

在主负载均衡器上,运行

primary_director:# ipvsadm --start-daemon=master --mcast-interface=eth0

在备份负载均衡器上,运行

backup_director:# ipvsadm --start-daemon=backup --mcast-interface=eth0

要停止守护进程,请运行

director:# ipvsadm --stop-daemon

请注意,主服务器通过多播与备份服务器通信。您需要确保此流量可以从主服务器流向备份服务器。尝试允许多播通过iptables 过滤在备份上进行测试。

设置它并查看是否从ipvsadm -Lnc备份命令中获得任何输出。

另外,请注意,ipvs 本身并不存在任何进程。可以将 ipvs 视为由用户空间程序管理的内核接口ipvsadm

您还应检查主服务器和备份服务器是否配置了相同的 syncid。这可以通过--syncid上述 ipvsadm 命令的选项指定。如果设置不同,则备份服务器将忽略从主服务器收到的任何信息。

相关内容