当前位置:首页 > Ubuntu > 正文

Ubuntu Keepalived高可用配置(手把手教你搭建Keepalived双机热备实现Linux高可用集群)

在现代 IT 架构中,服务的高可用性(High Availability, HA)至关重要。本文将详细介绍如何在 Ubuntu 系统上使用 Keepalived 实现高可用配置,即使你是 Linux 新手,也能轻松完成部署。

什么是 Keepalived?

Keepalived 是一个基于 VRRP(Virtual Router Redundancy Protocol)协议的开源软件,用于实现服务器之间的故障转移和负载均衡。通过 Keepalived,我们可以构建一个双机热备架构:当主服务器宕机时,备用服务器会自动接管虚拟 IP(VIP),确保服务不中断。

Ubuntu Keepalived高可用配置(手把手教你搭建Keepalived双机热备实现Linux高可用集群) Keepalived高可用配置 Keepalived双机热备 Linux高可用集群 Keepalived安装与配置 第1张

实验环境准备

  • 两台 Ubuntu 22.04 服务器(可使用虚拟机)
  • 主节点 IP:192.168.1.10
  • 备节点 IP:192.168.1.11
  • 虚拟 IP(VIP):192.168.1.100(对外提供服务的浮动 IP)
  • 两台服务器需能互相通信,且关闭防火墙或开放 VRRP 协议端口(通常为协议号 112)

第一步:安装 Keepalived

在两台 Ubuntu 服务器上分别执行以下命令安装 Keepalived:

sudo apt updatesudo apt install keepalived -y

第二步:配置 Keepalived(主节点)

编辑主节点的配置文件 /etc/keepalived/keepalived.conf

sudo nano /etc/keepalived/keepalived.conf

输入以下内容(注意替换 interface 为你实际的网卡名,如 eth0、ens33 等):

global_defs {    router_id ubuntu_master}vrrp_instance VI_1 {    state MASTER    interface ens33    virtual_router_id 51    priority 100    advert_int 1    authentication {        auth_type PASS        auth_pass 123456    }    virtual_ipaddress {        192.168.1.100/24    }}

第三步:配置 Keepalived(备节点)

在备节点上同样编辑 /etc/keepalived/keepalived.conf 文件:

global_defs {    router_id ubuntu_backup}vrrp_instance VI_1 {    state BACKUP    interface ens33    virtual_router_id 51    priority 90    advert_int 1    authentication {        auth_type PASS        auth_pass 123456    }    virtual_ipaddress {        192.168.1.100/24    }}
注意: 主备节点的 virtual_router_idauth_pass 必须一致,否则无法组成高可用组。

第四步:启动并启用 Keepalived 服务

在两台服务器上分别执行:

sudo systemctl start keepalivedsudo systemctl enable keepalived

第五步:验证高可用效果

1. 在主节点上查看 VIP 是否绑定:

ip addr show ens33

你应该能看到 192.168.1.100 出现在主节点的网卡上。

2. 停止主节点的 Keepalived 服务:

sudo systemctl stop keepalived

此时再在备节点执行 ip addr show ens33,你会发现 VIP 已自动漂移到备节点!

3. 重新启动主节点的 Keepalived,VIP 又会切回主节点(因为主节点优先级更高)。

常见问题排查

  • 防火墙阻止 VRRP 包:确保两台服务器之间允许协议号 112(VRRP)通信。
  • 网卡名称错误:使用 ip a 命令确认正确的网卡名(如 ens33、eth0)。
  • 日志查看:使用 journalctl -u keepalived -f 实时查看 Keepalived 日志。

总结

通过本教程,你已经成功在 Ubuntu 上完成了 Keepalived 高可用配置,实现了双机热备功能。这种架构广泛应用于 Web 服务器、数据库、API 网关等关键服务,是构建 Linux 高可用集群 的基础技能。掌握 Keepalived 安装与配置,将大大提升你运维系统的稳定性与可靠性。

赶快动手试试吧!如有疑问,欢迎在评论区交流。