Skip to content

VRRP 高可用部署(Keepalived)

HAProxy 本身不具备高可用能力,需要配合 Keepalived 实现 VIP 漂移,确保故障时自动切换。

架构说明

Client → VIP (Keepalived) → HAProxy-1 / HAProxy-2 → Backend Servers

Keepalived 安装

bash
# CentOS/RHEL
dnf install keepalived
# Debian/Ubuntu
apt install keepalived

主节点配置

bash
# /etc/keepalived/keepalived.conf
vrrp_script chk_haproxy {
    script "/bin/killall -0 haproxy"
    interval 2
    weight 2
}

vrrp_instance VI_1 {
    state MASTER
    interface eth0
    virtual_router_id 51
    priority 100
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass securepass123
    }
    virtual_ipaddress {
        1.1.1.1/24 dev eth0
    }
    track_script {
        chk_haproxy
    }
}

备节点配置

bash
# 备节点 priority 改为 90,state 改为 BACKUP

启动服务

bash
systemctl enable keepalived
systemctl start keepalived

# 验证 VIP 漂移
ip addr show eth0 | grep 1.1.1.1