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

CentOS高可用配置实战指南(手把手教你搭建Keepalived双机热备实现Linux服务高可用)

在企业级应用中,服务的高可用性(High Availability, HA)至关重要。一旦主服务器宕机,若无备用机制,将导致业务中断、客户流失甚至经济损失。本文将带你从零开始,在CentOS系统上配置高可用服务,使用开源工具 Keepalived 实现双机热备,确保关键服务(如Web、数据库等)7×24小时稳定运行。

CentOS高可用配置实战指南(手把手教你搭建Keepalived双机热备实现Linux服务高可用) CentOS高可用配置 Keepalived安装教程 Linux服务高可用 双机热备CentOS 第1张

一、什么是高可用?为什么选择Keepalived?

高可用(HA)是指系统在出现故障时能自动切换到备用节点,从而保证服务不中断。在Linux环境中,Keepalived 是最常用的高可用解决方案之一,它基于 VRRP(Virtual Router Redundancy Protocol)协议,通过虚拟IP(VIP)实现主备切换。

本教程将围绕 CentOS高可用配置 展开,适合运维新手和有一定Linux基础的读者。

二、环境准备

你需要两台 CentOS 7/8 服务器(物理机或虚拟机均可),网络互通,并具备以下条件:

  • 主服务器(Master):IP 为 192.168.1.10
  • 备服务器(Backup):IP 为 192.168.1.11
  • 虚拟IP(VIP):192.168.1.100(对外提供服务的IP)
  • 两台服务器均能访问互联网(用于安装软件)

三、安装 Keepalived

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

# 更新系统(可选但推荐)sudo yum update -y# 安装 Keepalivedsudo yum install -y keepalived# 启动并设置开机自启sudo systemctl start keepalivedsudo systemctl enable keepalived  

四、配置 Keepalived(主服务器)

编辑主服务器的配置文件 /etc/keepalived/keepalived.conf

sudo vim /etc/keepalived/keepalived.conf  

清空原内容,粘贴以下配置(注意替换 IP):

global_defs {    router_id MASTER_NODE}vrrp_instance VI_1 {    state MASTER    interface eth0                 # 替换为你的网卡名,可用 ip a 查看    virtual_router_id 51    priority 100                  # 主服务器优先级更高    advert_int 1    authentication {        auth_type PASS        auth_pass 123456    }    virtual_ipaddress {        192.168.1.100             # 虚拟IP(VIP)    }}  

五、配置 Keepalived(备服务器)

在备服务器上,同样编辑 /etc/keepalived/keepalived.conf

global_defs {    router_id BACKUP_NODE}vrrp_instance VI_1 {    state BACKUP    interface eth0                 # 网卡名需与主服务器一致    virtual_router_id 51           # 必须与主服务器相同    priority 90                    # 优先级低于主服务器    advert_int 1    authentication {        auth_type PASS        auth_pass 123456           # 密码必须一致    }    virtual_ipaddress {        192.168.1.100    }}  

六、重启服务并测试

在两台服务器上分别重启 Keepalived:

sudo systemctl restart keepalived  

然后在主服务器上执行:

ip addr show eth0  

你应该能看到 192.168.1.100 已绑定到主服务器的网卡上。

七、模拟故障切换

关闭主服务器的 Keepalived 服务:

sudo systemctl stop keepalived  

此时在备服务器上执行 ip addr show eth0,你会发现 VIP 已自动漂移到备机!这正是 Linux服务高可用 的核心价值所在。

八、常见问题与优化建议

  • 防火墙问题:确保两台服务器之间允许 VRRP 协议通信(通常为协议号 112),可临时关闭防火墙测试:
    sudo systemctl stop firewalld
  • 网卡名称不一致:使用 ip a 确认实际网卡名(如 ens33、eth0 等)
  • 健康检查增强:可在配置中加入 track_script 监控 Nginx、MySQL 等服务状态,实现更智能的切换

九、总结

通过本教程,你已成功在 CentOS 上实现了基于 Keepalived 的 双机热备CentOS 高可用架构。无论是 Web 服务、数据库还是其他关键应用,都可以借助此方案大幅提升系统稳定性。掌握 Keepalived安装教程 和配置技巧,是你迈向专业运维的重要一步。

高可用不是奢侈品,而是现代 IT 系统的标配。动手实践,让服务永不掉线!