keepalived 是基于 VRRP(虚拟路由冗余协议)的开源高可用方案,通过虚拟 IP(VIP)在主备节点间漂移,是 Nginx、HAProxy 等入口组件主备切换的经典搭配。
核心优点
- 配置简单:一个配置文件即可定义 VIP、优先级与健康检查。
- 秒级切换:VRRP 心跳机制,故障后 VIP 快速漂移到备机。
- 健康检查脚本:可自定义脚本探测服务状态,服务异常才切换。
- 无需额外硬件:纯软件方案,任意两台 Linux 即可搭建。
快速上手
# 安装
apt install keepalived
# /etc/keepalived/keepalived.conf 主节点示例
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
priority 100
virtual_ipaddress {
192.168.1.200/24
}
track_script {
chk_nginx
}
}
常用操作
systemctl restart keepalived
ip addr show eth0 # 确认 VIP 是否在本机
journalctl -u keepalived # 查看切换日志
适用场景
Nginx/HAProxy 入口高可用、数据库 VIP、双机热备的任何「入口 IP 漂移」场景。
下载地址
- 官方网站:https://www.keepalived.org/
- GitHub 仓库:https://github.com/acassen/keepalived