Я работаю в среде с голым железом, пытаясь настроить балансировку нагрузки HA с помощью keepalived. Когда я пытаюсь пропинговать VIP, который я указал в конфигурационном файле keepalived, с других машин в той же сети, он недоступен, но когда я прекращаю 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
на нынешнем хозяине
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
на нынешнем хозяине
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
любая помощь будет оценена ..!
я думаю что
ip addr show | grep global
покажет, что ваш виртуальный адрес
192.167.3.54/32
/ 32 обычно не является желаемым результатом, поэтому вам следует добавить, например, / 24:
virtual_ipaddress {
192.167.3.54/24
}