构建高可用架构应用集群:轻量级负载均衡实战
本文介绍了一种利用轻量应用负载均衡构建高可用架构应用集群的方法,通过将公网流量分发到多台轻量应用服务器上,增强了应用的吞吐能力和稳定性。具体步骤包括创建和配置数据库服务器、应用服务器、负载均衡器以及域名解析等。
通过轻量应用负载均衡,您可以构建高可用架构应用集群,以实现业务分发和弹性扩展,从而保障应用的稳定性和可用性。本文将指导您完成这一过程。
前提条件
- 确保您已拥有一个域名。如果尚未注册,可通过阿里云域名服务购买。更多详情,请参考阿里云域名服务。
背景信息
高可用架构应用集群具有以下特点:
- 负载均衡:轻量应用负载均衡可将公网流量分发到多台轻量应用服务器,增强应用吞吐能力,同时消除单点故障。
- 弹性扩展:通过自定义镜像功能,快速创建部署相同应用的轻量应用服务器,并将其添加到负载均衡中,实现业务的弹性扩展。
示例架构
架构概述
本示例将通过轻量应用负载均衡、轻量应用服务器、域名以及云解析DNS来部署高可用架构应用集群。架构示意图如下:
架构组件
- 地域:轻量应用负载均衡仅支持添加同一地域内的后端实例。本示例在华东1(杭州)创建负载均衡和服务器。
- 轻量应用服务器:应用服务器和数据库服务器分离,提升应用吞吐能力和数据安全性。本示例创建两台应用服务器(服务器A和B)和一台数据库服务器(服务器C)。
- 轻量应用负载均衡:默认采用HTTP协议监听80端口,转发规则为轮询模式。本示例创建一台负载均衡,并将两台应用服务器作为后端实例。
- 域名与云解析DNS:轻量应用负载均衡需要绑定域名以实现访问后端实例的功能。通过云解析DNS将域名解析至负载均衡公网服务地址。
注意事项
- 本示例基于Nginx、PHP搭建应用服务器环境,并选择WordPress博客网站作为应用示例。使用宝塔面板安装配置软件。
- 如果您的域名需要备案,则轻量应用服务器购买时长需大于或等于三个月。
- 高可用架构集群中,需要保证多台应用服务器之间的数据同步。本示例不涉及数据同步操作。
实施步骤
步骤一:创建并配置数据库服务器C
- 创建轻量应用服务器:作为数据库服务器(服务器C)。配置如下:
- 实例类型:服务器实例
- 地域和可用区:华东1(杭州)
- 镜像:宝塔Linux面板 7.5.1
- 套餐配置:60元/月
- 数据盘:不挂载
- 购买时长:3个月
- 购买数量:1台
- 防火墙设置:放行MySQL默认占用的3306端口及宝塔面板占用的8888端口。
添加防火墙规则的具体操作,请参见防火墙设置。
-
登录宝塔面板:获取登录信息并登录。
-
安装MySQL数据库:通过宝塔面板安装MySQL 5.7。
-
配置MySQL数据库:创建数据库、用户,并设置访问权限。
步骤二:创建并配置应用服务器A
-
创建轻量应用服务器:作为应用服务器(服务器A)。配置同数据库服务器C。
-
防火墙设置:放行宝塔面板占用的8888端口。
参见防火墙设置
-
登录宝塔面板:获取登录信息并登录。
请参见登录宝塔面板。。
-
安装Nginx 1.21和PHP 7.2:通过宝塔面板安装。
-
一键部署WordPress博客网站:通过宝塔面板一键部署。
-
安装WordPress:配置数据库连接信息,完成安装。
步骤三:通过自定义镜像创建应用服务器B
-
创建快照:为服务器A创建快照。 请参见创建快照
-
创建自定义镜像:基于快照创建自定义镜像。 参见使用自定义镜像创建服务器
-
创建应用服务器B:使用自定义镜像创建服务器B,配置与服务器A保持一致。
-
防火墙设置:放行宝塔面板占用的8888端口。
参见防火墙设置。
-
配置网站信息:登录宝塔面板,修改网站对应的域名设置。
步骤四:修改数据库服务器中数据库的权限
- 登录宝塔面板:登录数据库服务器C的宝塔面板。
- 修改数据库权限:将MySQL访问权限从“所有人”改为“指定IP”,并指向两台应用服务器的内网IP。
步骤五:创建轻量应用负载均衡并添加后端实例
- 创建轻量应用负载均衡:配置与服务器A和C相同。 参见创建轻量应用负载均衡
- 添加后端实例:将应用服务器A与B添加为后端实例。 参见添加后端实例
步骤六:解析并绑定域名
-
通过云解析DNS解析域名:将域名通过CNAME记录解析至轻量应用负载均衡的公网服务地址。
具体操作请参见添加CNAME记录
-
绑定域名:将域名绑定至轻量应用负载均衡。 请参见绑定域名
步骤七:测试访问WordPress博客网站
- 正常访问:在本地物理主机通过浏览器访问域名,成功访问WordPress博客首页。
-
模拟服务器A宕机:手动停止服务器A,验证高可用架构是否生效。