
keepalived
我設定了綁定網路接口,以便為兩台 Ubuntu 20.04.1 LTS 伺服器上的HaProxy(HaProxy 是 Linux 負載平衡器)設定提供更高的 HA 。使用 netplan 設定的綁定網路介面運作正常,並且使用 進行設定keepalived
。但是,keepalived
沒有keepalived
正確對待叢集的主節點和備份節點,並且都顯示為Master。
# 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
在嘗試了解決方案(需要將 mac 位址新增至 netplan 設定中)後,我發現 keepalived 也出現了相同的問題,即兩台電腦都顯示為主機。進一步調查發現,兩台伺服器上綁定介面使用的 MAC 位址是相同的,這最終成為問題所在。
透過將第二台伺服器上的netplan 中的綁定介面的名稱變更為bond1(而不是bond0),然後在keepalived 設定檔中使用該名稱解決了該問題,因為兩個綁定介面都有唯一的MAC地址。 Keepalived 可以正確判斷哪一台伺服器是主伺服器,哪一台伺服器是備份伺服器。
感謝大家的幫助,
獅子座