keepalived
我设置了绑定网络接口,以便为在两个 Ubuntu 20.04.1 LTS 服务器上设置的 HaProxy(HaProxy 是 Linux 负载均衡器)提供更高的 HA 。使用 netplan 设置的绑定网络接口工作正常,使用 设置的绑定网络接口工作正常keepalived
。但是,keepalived
没有keepalived
正确处理集群的主节点和备份节点,并且都显示为主节点。
# This file is generated from information provided by the datasource. Changes
# to it will not persist across an instance reboot. To disable cloud-init's
# network configuration capabilities, write a file
# /etc/cloud/cloud.cfg.d/99-disable-network-config.cfg with the following:
# network: {config: disabled}
network:
version: 2
ethernets:
eth0:
dhcp4: true
eth1:
dhcp4: false
eth2:
dhcp4: false
bonds:
bond0:
dhcp4: false
interfaces:
- eth1
- eth2
parameters:
mode: active-backup
primary: eth1
addresses:
- 192.168.0.6/24
nameservers:
addresses:
- 192.168.0.1
vrrp_instance VI_01 {
state MASTER
interface bond0
virtual_router_id 51
priority 101
advert_int 1
virtual_ipaddress {
192.168.0.10/24
}
vrrp_instance VI_01 {
state BACKUP
interface bond0
virtual_router_id 51
priority 100
advert_int 1
virtual_ipaddress {
192.168.0.10/24
}
}
有谁知道如何解决这一问题?
谢谢,
狮子座
答案1
在尝试了一种解决方案(需要在 netplan 配置中添加 mac 地址)后,我发现 keepalived 也出现了同样的问题,即两台机器都显示为主服务器。进一步的调查显示,两台服务器上绑定接口使用的 mac 地址相同,这才是问题所在。
通过将第二台服务器上 netplan 中的绑定接口名称更改为 bond1(而不是 bond0),然后在 keepalived 配置文件中使用该名称解决了该问题,因为两个绑定接口都有唯一的 mac 地址。Keepalived 可以正确知道哪个服务器是主服务器,哪个服务器是备份服务器。
感谢大家的帮助,
狮子座