华为云企业网站上云实战|从零搭建高可用WordPress(ECS+RDS+ELB+弹性伸缩+云监控全流程落地)
很多中小企业、个人站长搭建WordPress网站,习惯用单台ECS搭全站、本地装MySQL。
这种架构看似简单,上线后全是隐患:单节点挂站、数据库和网站抢资源、流量暴涨直接崩站、无法扩容、故障恢复慢、完全不具备企业可用性。
今天这篇博客,我带大家从零复刻企业标准高可用架构,彻底告别单机裸奔:
VPC私有网络打底 + ECS部署Web服务 + RDS独立数据库 + ELB负载均衡分流 + AS弹性伸缩自动扩缩容 + CES云监控告警兜底
全程纯实战、无废话、可直接上线商用、适配企业官网、博客、资讯站、营销站,完美解决单点故障、流量波动、运维无监控三大痛点。
一、先看懂:传统单机架构 VS 云上高可用架构
1.1 老旧单机架构(不推荐)
单台ECS:Nginx+PHP+MySQL全部装在一起
致命问题:
-
ECS宕机、重启、升级,网站直接全站瘫痪
-
数据库和Web抢CPU/内存,访问量大直接卡死
-
无法横向扩容,流量暴涨只能硬扛
-
无监控、无告警、出问题只能被动发现
1.2 华为云企业高可用架构(本次实战落地)
分层解耦核心思想:Web和数据库彻底分离、流量统一入口、资源弹性伸缩、全程监控兜底
完整拓扑链路:
用户公网访问 → ELB负载均衡(统一入口、流量分发) → 多台ECS Web节点(WordPress站点) → RDS云数据库(独立MySQL) → 云监控实时守护
配合弹性伸缩AS,实现:流量高峰自动加机器、流量低谷自动减机器,7×24小时高可用,兼顾稳定性和低成本。
二、整体资源规划(企业标准化配置)
本次实战全部采用生产级最小可用规格,小站、企业官网完全够用:
-
VPC:自定义私有网络,独立网段,资源隔离
-
ECS Web节点:2核4G,CentOS 7.9,部署LAMP+WordPress
-
RDS MySQL:2核4G,MySQL 8.0,独立数据库,高可用版
-
ELB共享型负载均衡:公网入口,分发流量、故障自动剔除节点
-
弹性伸缩AS:基于CPU负载自动扩缩容,应对流量波动
-
云监控CES:监控CPU、内存、端口、站点状态,异常短信告警
三、第一步:搭建云上网络底座(VPC+安全组)
所有高可用架构,地基一定是VPC。先搭网络,再部署业务。
3.1 创建VPC私有网络
-
华为云控制台搜索「虚拟私有云VPC」
-
新建VPC,自定义网段:
192.168.0.0/16 -
新建业务子网:
192.168.10.0/24 -
关闭自动分配公网IP,所有机器内网部署,通过ELB对外暴露
3.2 配置网站专用安全组(生产必严)
安全组相当于云上防火墙,只放通必要端口:
-
入方向:80、443端口(网站访问)、22端口(远程运维)
-
RDS安全组放通3306端口,仅允许Web子网网段访问,禁止公网连数据库
-
拒绝所有多余端口,减少攻击面
四、第二步:部署独立RDS MySQL数据库(核心解耦)
高可用的关键就是数据库独立部署,不占用Web服务器资源,支持自动备份、故障切换,数据更安全。
4.1 购买RDS实例
-
选择MySQL 8.0版本,高可用版(主备架构)
-
规格2核4G,存储40G,跟随VPC子网
-
设置数据库root密码,开启自动备份(每日凌晨备份)
4.2 初始化WordPress专用数据库
-
RDS控制台进入「数据库管理」,新建数据库:
-
数据库名:
wordpress -
字符集:utf8mb4(完美兼容中文、表情、特殊符号)
-
新建专用账号:
wp_user,授予wordpress库全部权限 -
添加白名单:填入ECS内网网段,允许Web节点访问数据库
生产规范:绝对不用root账号跑业务,单独创建业务账号,权限最小化。
五、第三步:ECS搭建WordPress站点(制作业务模板机)
弹性伸缩需要统一的业务模板,我们先搭建一台完整可用的WordPress ECS,后续直接复制扩容。
5.1 ECS基础环境部署
创建2核4G ECS,绑定刚才的VPC和安全组,无需公网IP。
远程连接ECS,搭建LAMP环境(Apache+PHP+MySQL客户端)
bash
# 安装基础环境
yum install httpd php php-mysqlnd wget unzip -y
# 启动开机自启
systemctl start httpd
systemctl enable httpd
5.2 部署WordPress程序
bash
# 下载官方源码
wget https://cn.wordpress.org/latest-zh_CN.zip
# 解压到网站根目录
unzip latest-zh_CN.zip
mv wordpress/* /var/www/html/
# 授权站点目录权限
chmod -R 755 /var/www/html
chown -R apache:apache /var/www/html
5.3 连接RDS数据库初始化网站
浏览器访问ECS内网IP,进入WordPress安装界面:
-
数据库地址:填写RDS内网地址
-
数据库名:wordpress
-
用户名:wp_user
-
密码:自建数据库密码
填写网站名称、管理员账号密码,完成安装,此时单机WordPress + 独立RDS数据库环境搭建完成。
5.4 制作自定义镜像(伸缩核心模板)
这一步是弹性伸缩的关键:把已部署好环境、配置完成的ECS打成私有镜像,后续扩容机器无需重复搭环境。
-
控制台进入ECS详情,选择「创建私有镜像」
-
等待镜像制作完成,状态变为可用
-
关机保留模板机,不用于线上业务
六、第四步:部署ELB负载均衡(统一高可用入口)
有了多节点模板,就需要ELB做流量统一分发,实现单节点故障自动切换、流量负载分担。
6.1 创建公网ELB
-
选择共享型负载均衡、按需计费、绑定VPC
-
分配公网EIP,作为网站唯一对外入口
6.2 配置监听器与后端组
-
创建HTTP 80端口监听器
-
新建后端服务器组,协议HTTP,开启健康检查
-
检查路径默认/,超时正常200判定节点存活
-
加入两台初始化完成的WordPress ECS节点
高可用效果:任意一台ECS宕机,ELB自动剔除故障节点,流量全部切到正常节点,网站不中断。
七、第五步:配置弹性伸缩AS(自动抗压、自动省钱)
固定机器无法应对突发流量,AS弹性伸缩就是用来解决「忙时不够、闲时浪费」的问题,也是企业网站智能化运维的核心。
7.1 创建伸缩配置(扩容模板)
选择刚才制作的WordPress私有镜像,配置统一规格、VPC、安全组,生成伸缩配置文件。
7.2 创建伸缩组并关联ELB
-
绑定业务VPC子网
-
设置最小实例2台(保障基础高可用)、最大实例5台(防突发流量打爆资源)
-
关联ELB后端组,新增实例自动加入负载均衡集群
-
设置冷却时间300秒,避免频繁伸缩抖动
7.3 配置伸缩触发策略(生产标准阈值)
-
扩容策略:CPU使用率连续5分钟>70%,自动新增1台ECS
-
缩容策略:CPU使用率连续5分钟<30%,自动释放多余ECS
完美适配企业网站:推广活动流量暴涨自动扩容,夜间低峰自动缩容节省成本。
八、第六步:云监控CES+告警兜底(7×24小时值守)
架构再稳,没有监控就是裸奔。最后配置云监控,实现故障提前预警、异常秒感知。
8.1 配置核心监控指标
针对ECS、RDS、ELB配置全方位监控:
-
ECS:CPU、内存、磁盘使用率、端口存活
-
RDS:数据库连接数、CPU、磁盘空间
-
ELB:QPS、异常响应、连接失败数
8.2 联动SMN短信告警
创建SMN消息主题,绑定运维手机和邮箱,资源超标、节点宕机、数据库异常、网站端口断开,立刻推送告警,无需人工值守。
九、最终架构能力复盘(为什么这是企业级方案)
搭建完成后,你的WordPress网站彻底摆脱单机缺陷,拥有四大企业级能力:
-
高可用不宕机:多ECS集群+ELB故障剔除,单节点挂掉不影响全站
-
数据绝对安全:RDS独立主备架构+自动备份,不怕数据丢失
-
弹性智能抗压:流量暴涨自动加机器,闲时自动缩容,省钱又稳
-
全程可视化监控:故障提前预警,告别被动救火运维
十、新手常见踩坑汇总
-
RDS无法连接:未放通ECS网段白名单、安全组3306端口未放行
-
伸缩新增机器无法访问站点:镜像未授权目录权限、未开机自启httpd
-
ELB健康检查异常:服务器防火墙拦截、80端口未监听
-
伸缩频繁抖动:未设置冷却时间,阈值设置过低
十一、总结
真正的企业网站上云,从来不是简单装个WordPress,而是网络隔离、软硬件解耦、集群高可用、弹性伸缩、监控告警的整套体系落地。
本次实战搭建的ECS+RDS+ELB+AS+CES架构,是华为云标准中小企业Web高可用方案,可直接用于企业官网、品牌站点、资讯博客、营销落地页,兼顾稳定性、扩展性和成本可控,是云上Web业务的最优入门架构。