我在裸机环境中工作,尝试使用 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
}