文档首页/ 弹性云服务器 ECS/ 最佳实践/ 云服务器安全/ 使用虚拟IP和Keepalived搭建高可用Web集群
更新时间:2025-07-30 GMT+08:00

使用虚拟IP和Keepalived搭建高可用Web集群

应用场景

虚拟IP(Virtual IP Address)是从VPC子网网段中划分的一个内网IP地址,通常搭配高可用软件(比如Keepalived)使用,主要用来搭建高可用的主备集群。多个云服务器形成主备集群,当主云服务器发生故障无法对外提供服务时,系统动态将虚拟IP切换到备云服务器,通过备云服务器继续对外提供服务。本文档为您详细介绍使用虚拟IP和Keepalived搭建高可用Web集群的方法。

方案架构

本示例中,高可用Web集群架构如图1所示,将虚拟IP同时绑定至ECS-HA1和ECS-HA2,使用Keepalived搭建一个高可用集群。同时,为虚拟IP绑定EIP,该集群具备公网访问能力,可以面向公网提供Web访问服务。实现原理如下:
  1. ECS-HA1作为主云服务器,通过与虚拟IP绑定的EIP对外提供服务,ECS-HA2作为备云服务器不承载实际业务。
  2. 当ECS-HA1发生故障时,此时会自动启用ECS-HA2,ECS-HA2将会接管业务并对外提供服务,实现业务不中断的高可用需求。
图1 使用虚拟IP和Keepalived搭建高可用Web集群

方案优势

基于虚拟IP和Keepalived能力,采用“一主一备”或“一主多备”的方法组合使用云服务器,这些云服务器对外呈现为一个虚拟IP。当主云服务器故障时,备云服务器可以转为主云服务器并继续对外提供服务,以此达到高可用性HA(High Availability)的目的,可以解决用户由于云服务器故障导致的对外服务中断问题。

约束与限制

使用虚拟IP搭建的高可用集群,所有服务器必须位于同一个虚拟私有云的子网内。

资源规划说明

本示例中,虚拟私有云VPC和子网、虚拟IP、弹性公网IP以及弹性云服务器ECS等资源只要位于同一个区域内即可,可用区可以任意选择,无需保持一致。

以下资源规划详情仅为示例,您可以根据需要自行修改。

表1 使用虚拟IP和Keepalived搭建高可用Web集群资源规划总体说明

资源类型

资源数量

说明

虚拟私有云VPC和子网

1

  • VPC名称:请根据实际情况填写,本示例为VPC-A。
  • IPv4网段:请根据实际情况填写,本示例为192.168.0.0/16。
  • 子网名称:请根据实际情况填写,本示例为Subnet-A01。
  • 子网IPv4网段:请根据实际情况填写,本示例为192.168.0.0/24。

弹性云服务器ECS

2

本示例中,需要两个ECS作为主备倒换,配置说明如下:

  • 名称:根据实际情况填写,本示例分别为ECS-HA1和ECS-HA2。
  • 镜像:请根据实际情况选择,本示例为公共镜像(CentOS 7.8 64bit)。
  • 系统盘:通用型SSD盘,40GB。
  • 数据盘:本示例未选购数据盘,请您根据实际业务需求选购数据盘,并切实考虑两个ECS节点之间的业务数据一致性问题。
  • 网络:
    • 虚拟私有云:选择您的虚拟私有云,本示例为VPC-A。
    • 子网:选择子网,本示例为Subnet-A01。
  • 安全组:请根据实际情况选择,本示例中ECS-HA1和ECS-HA2使用同一个安全组,安全组名称为Sg-A。
  • 私有IP地址:ECS-HA1为192.168.0.195,ECS-HA2为192.168.0.233

虚拟IP

1

在子网Subnet-A01中申请虚拟IP地址:

  • 创建方式:根据实际情况填写,本示例为自动分配。
  • 虚拟IP地址:本示例为192.168.0.177。
  • 绑定实例:将虚拟IP绑定至ECS-HA1和ECS-HA2。
  • 绑定弹性公网IP:将虚拟IP绑定至EIP-A。

弹性公网IP

1

  • 计费模式:请根据情况选择计费模式,本示例为按需计费。
  • EIP名称:请根据实际情况填写,本示例为EIP-A。
  • EIP地址:EIP地址系统随机分配,本示例为124.X.X.187。

操作流程

使用虚拟IP和Keepalived搭建高可用Web集群,流程如图2所示。

图2 使用虚拟IP和Keepalived搭建高可用Web集群