无法从同一网络中的其他机器访问 keepalived VIP

无法从同一网络中的其他机器访问 keepalived VIP

我在裸机环境中工作,尝试使用 keepalived 设置 HA 负载平衡。当我尝试从同一网络中的其他计算机 ping 我在 keepalived 配置文件中提供的 VIP 时,无法访问,但当我在其中一台计算机上停止 keepalived 时,另一台计算机将成为主计算机并自动分配 IP 地址。

keepalived configuration

vrrp_instance VI_PUB
{
        interface ens34
        state MASTER
        virtual_router_id 52
        priority 101
        virtual_ipaddress
        {
                192.167.3.54
        }
        track_interface
        {
                ens34
        }
}
virtual_server 192.167.3.54 8081
{
        delay_loop 4
        lb_algo sh # source hash
        lb_kind NAT
        protocol TCP
        real_server 172.16.3.23 8080
        {
                weight 1
                TCP_CHECK
                {
                        connect_timeout 15
                        nb_get_retry 3
                        delay_before_retry 2
                }
        }
        real_server 172.16.3.24 8080
        {
                weight 1
                TCP_CHECK
                {
                        connect_timeout 15
                        nb_get_retry 3
                        delay_before_retry 2
                }
        }
}

ip addr show ens32在当前 master 上

ens32: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000
link/ether 00:0c:29:43:c2:9c brd ff:ff:ff:ff:ff:ff
inet 172.16.3.24/23 brd 172.16.3.255 scope global ens32
   valid_lft forever preferred_lft forever
inet 192.167.3.54/32 scope global ens32
   valid_lft forever preferred_lft forever
inet6 fe80::20c:29ff:fe43:c29c/64 scope link
   valid_lft forever preferred_lft forever

route -n在当前 master 上

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         172.16.2.1      0.0.0.0         UG    0      0        0 ens32
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 ens32
172.16.2.0      0.0.0.0         255.255.254.0   U     0      0        0 ens32

route -n在当前网络中的一个主机上

Destination     Gateway         Genmask         Flags Metric Ref    Use Iface
0.0.0.0         172.16.2.1      0.0.0.0         UG    0      0        0 ens34
169.254.0.0     0.0.0.0         255.255.0.0     U     1002   0        0 ens34
172.16.2.0      0.0.0.0         255.255.254.0   U     0      0        0 ens34

任何帮助,将不胜感激..!

答案1

我猜可能是

ip addr show | grep global

将显示你的虚拟地址是

192.167.3.54/32

/32 通常不是所需的结果,因此您应该添加例如/24:

virtual_ipaddress {
  192.167.3.54/24
}

相关内容