七、华为云综合实践:企业网站上云部署实践
本实验基于华为云平台完成WordPress 企业网站上云部署实现 VPC 网络搭建、LAMP 网站环境、RDS 云数据库、弹性负载均衡 ELB、弹性伸缩 AS、云监控 CES 整套云架构实现网站高可用、弹性扩缩容能力实验区域为华东‑上海一。一、整体方案架构使用云服务组件VPC 虚拟私有云构建隔离私有网络包含子网安全组访问控制管控实例进出流量ECS 弹性云服务器Web 业务计算载体EIP 弹性公网 IP公网访问地址RDS 云数据库 MySQL8.0网站后端数据库主备架构IMS 镜像服务将配置完成 WordPress 环境的 ECS 制作私有镜像供弹性伸缩快速复制业务节点ELB 弹性负载均衡公网入口将访问流量分发多台后端 ECSAS 弹性伸缩依据 CPU 监控指标自动增加 / 减少 Web 服务器实例实现弹性伸缩CES 云监控监控资源 CPU 等指标、产生告警观测业务运行状态。业务流程用户公网请求→EIP→ELB 负载均衡→多台 AS 伸缩出来的 ECS 业务节点→ECS 访问 RDS 内网数据库云监控采集全平台资源运行数据。注意业务 ECS 节点不再绑定 EIP全部经由 ELB 对外提供服务提升安全性与高可用。二、完整实验操作步骤阶段 1基础网络资源创建登录华为云控制台切换区域至华东‑上海一。创建 VPC 与子网自定义 VPC 名称使用默认网段创建对应子网。创建安全组实验环境放通全部端口生产环境需要最小权限放行后续 ECS、RDS 都绑定该安全组。阶段 2创建基础云资源 ECS 与 RDS 数据库购买 ECS 弹性云服务器计费按需计费规格 2vCPU/4GB镜像 CentOS7.6系统盘 40G 高 IO网络选择自建 VPC、安全组绑定 EIP带宽 2M设置 root 登录密码。购买 RDS MySQL8.0 主备实例按需计费2 核 4GBSSD 云盘选用自建 VPC、安全组设置数据库 root 密码创建等待 6‑10 分钟记录 RDS内网 IP 地址WordPress 配置需要该内网地址。阶段 3ECS 搭建 LAMP 环境部署 WordPress 网站CloudShell 远程登录 ECSroot 账号。yum 命令安装 LAMP 组件Apache (httpd)、PHP7.4、php‑mysql 组件。修改 httpd 配置文件补充ServerName localhost:80保存退出。上传 WordPress 安装压缩包解压到/var/www/html目录修改目录读写权限。启动 httpd、php‑fpm 服务设置开机自启浏览器访问 ECS 的 EIP出现 Apache 测试页面代表 LAMP 部署成功。在 RDS 的 DAS 管理控制台新建名为wordpress的数据库。浏览器访问http://ECS‑EIP/wordpress完成 WordPress 初始化数据库参数数据库名 wordpress、用户名 root、RDS 内网 IP、数据库密码设置网站标题、后台管理员账号 admin 与密码完成 WordPress 安装并登录后台。解绑该台 ECS 的 EIP后续公网访问全部交给 ELB 负载均衡。阶段 4制作业务私有镜像 IMS将已经部署好 WordPress 网站的 ECS 关机。使用镜像服务 IMS创建系统盘私有镜像来源选择该关机 ECS 实例镜像制作完成后重新开机 ECS。作用弹性伸缩创建新业务服务器时直接复用该镜像不用重复部署 LAMPWordPress 环境。阶段 5配置弹性负载均衡 ELB创建共享型公网 ELB 实例使用之前解绑下来的 EIP 作为公网 IP归属自建 VPC。添加 HTTP 80 端口监听器后端分配策略选用加权轮询算法开启 TCP 健康检查后端服务器组暂时不添加服务器交由弹性伸缩自动挂载。阶段 6配置弹性伸缩 AS核心高可用能力创建伸缩配置选择刚刚制作的私有 IMS 镜像规格和原始 ECS 保持一致不分配 EIP使用自建安全组设置 root 密码。创建弹性伸缩组设置最小、期望、最大实例数量关联 VPC 与子网绑定前面建好的 ELB 实例和后端服务器组伸缩组生成的 ECS 会自动加入 ELB 后端。创建两条告警伸缩策略基于 CPU 使用率扩容CPU 最大值≥60%增加 1 台 ECS 实例冷却 300s缩容CPU 平均值≤20%减少 1 台 ECS 实例冷却 300s。伸缩组自动生成 ECS 实例实例自动加入 ELB 后端服务器组。浏览器访问ELB 的 EIPWordPress 网站正常打开验证负载均衡 弹性伸缩业务可用。阶段 7云监控 CES 观测资源状态进入云监控控制台查看资源总览大屏查看告警记录监控 CPU、内存等主机指标可以查看单台 ECS 详细监控图表观察伸缩实例资源负载。阶段 8实验结束资源清理按需计费避免扣费按照顺序删除资源弹性伸缩→ECS 云服务器→RDS 数据库→私有镜像 IMS→ELB 负载均衡→VPC 虚拟私有云→安全组。三、关键技术要点总结架构设计Web 业务层使用弹性伸缩实现水平扩展数据库使用 RDS 主备实现数据库高可用Web 节点不直接暴露公网 IP由 ELB 统一作为公网入口。镜像价值把已经部署完业务的 ECS 制作私有镜像弹性伸缩新建实例直接复用省去重复部署网站环境实现业务快速复制。伸缩逻辑依靠云监控 CPU 指标做告警策略负载高自动增加 Web 服务器负载低自动释放服务器节约资源成本。网络要点RDS 只走内网和 ECS 通信不开启公网访问提升数据库安全实验安全组全开仅为练习生产环境遵循最小开放原则。访问验证逻辑原始 ECS 解绑 EIP全部业务流量经过 ELB 公网 IP 访问网站验证整套高可用架构而不是访问单台 ECS。四、实验现象验证点访问 ECS 公网 IP 出现 Apache 测试页面LAMP 环境部署成功WordPress 安装完成可以登录后台AS 伸缩组自动生成 ECS 实例实例自动加入 ELB 后端服务器组浏览器访问 ELB 的 EIPWordPress 网站正常访问云监控能够查看各台伸缩实例 CPU、内存监控曲线。企业网站上云部署实践实验报告一、实验目的熟悉华为云 VPC、安全组、ECS、RDS、ELB、AS、IMS、CES 等主流云服务的基本功能与操作流程。掌握在弹性云服务器上搭建 LAMPLinuxApacheMySQLPHP环境完成 WordPress 网站部署。掌握私有镜像制作方法实现业务环境快速复制。理解弹性负载均衡 ELB 流量分发原理掌握公网负载均衡配置。掌握弹性伸缩 AS 配置实现基于 CPU 负载指标自动扩缩容 Web 业务节点实现网站业务高可用。学会使用云监控 CES 查看资源运行指标、告警信息了解云上资源清理流程避免按需计费产生额外费用。二、实验环境实验平台华为云平台操作区域华东‑上海一操作系统镜像CentOS 7.6 64bit数据库华为云 RDS MySQL 8.0主备实例网站程序WordPress‑5.2.3‑zh_CN网络环境自建虚拟私有云 VPC实验安全组放通全部端口生产环境应最小化开放端口三、实验原理VPC 虚拟私有云构建逻辑隔离私有网络自定义网段与子网实现云上资源网络隔离。安全组为实例访问控制管控进出实例流量。ECS 弹性云服务器提供计算资源作为 Web 网站业务运行载体。RDS 云数据库托管型 MySQL 数据库主备架构保障数据库高可用业务服务器通过内网访问数据库不暴露公网提升安全性。IMS 镜像服务将已经部署完成业务环境的 ECS 制作私有系统盘镜像弹性伸缩创建实例直接复用镜像无需重复部署业务。ELB 弹性负载均衡作为业务统一公网入口将用户访问流量分发至多台后端 ECS 服务器分担业务压力提升并发访问能力。AS 弹性伸缩结合云监控告警指标当 CPU 负载高自动新增业务服务器负载低自动释放服务器实现水平弹性扩缩容兼顾业务可用性与资源成本。CES 云监控服务采集云服务器 CPU、内存等性能指标支持指标查看与告警实时监控业务运行状态。整体业务访问流程用户公网请求→弹性公网 EIP→弹性负载均衡 ELB→弹性伸缩组内多台 ECS 业务节点→内网访问 RDS 云数据库。四、实验步骤4.1 创建基础网络资源登录华为云官网进入控制台切换区域为华东‑上海一。创建虚拟私有云 VPC 与对应子网网段使用默认配置自定义资源名称。创建安全组实验环境放通全部入、出方向规则后续 ECS、RDS 实例绑定该安全组。4.2 创建 ECS 弹性云服务器与 RDS 云数据库创建 ECS 实例计费模式按需计费规格 2vCPU 4GB镜像 CentOS7.6系统盘 40G 高 IO网络选择自建 VPC 与安全组购买弹性公网 EIP带宽 2M设置 root 登录密码。创建 RDS MySQL8.0 主备实例按需计费2 核 4GBSSD 云盘选择自建 VPC、安全组设置数据库 root 管理员密码。提交后等待 6‑10 分钟实例创建完成记录 RDS 内网 IP 地址。4.3 部署 LAMP 环境与 WordPress 网站使用 CloudShell 远程登录 ECSroot 账号。使用 yum 工具安装 epel、remi 源安装 httpd、php7.4、php‑mysql 等 LAMP 全套组件。修改 Apache 配置文件/etc/httpd/conf/httpd.conf末尾添加ServerName localhost:80保存退出。上传 WordPress 压缩包解压至/var/www/html目录修改目录读写权限。启动 httpd、php‑fpm 服务设置开机自启。浏览器访问 ECS 的 EIP出现 Apache 测试页面代表 LAMP 环境部署成功。通过 RDS 的 DAS 数据管理服务登录数据库新建数据库命名为wordpress。浏览器访问http://ECS公网IP/wordpress进行 WordPress 安装配置填写数据库名、数据库用户名、数据库密码、RDS 内网 IP设置网站标题、管理员账号 admin 及密码完成网站安装并登录后台。将该 ECS 实例的弹性公网 EIP 解绑后续业务统一由负载均衡对外提供访问。4.4 制作业务私有镜像将部署完 WordPress 网站的 ECS 关机。进入镜像服务 IMS创建系统盘私有镜像镜像源选择已关机的 ECS 实例自定义镜像名称。镜像制作完成后重新开启 ECS 实例。4.5 配置弹性负载均衡 ELB创建共享型公网 ELB 实例使用前面解绑的 EIP归属自建 VPC。添加监听器协议 HTTP端口 80后端分配策略采用加权轮询算法开启 TCP 健康检查后端服务器组暂不手动添加服务器交由弹性伸缩自动挂载。4.6 配置弹性伸缩 AS创建伸缩配置选择自制私有镜像实例规格与原 ECS 保持一致不分配弹性公网 IP选择自建安全组设置 root 登录密码。创建弹性伸缩组设置最小、期望、最大实例数关联 VPC、子网绑定已创建的 ELB 实例以及后端服务器组伸缩组生成实例将自动加入 ELB 后端。创建两条告警伸缩策略扩容策略CPU 使用率最大值≥60%增加 1 台实例冷却时间 300s缩容策略CPU 使用率平均值≤20%减少 1 台实例冷却时间 300s。等待伸缩组自动创建 ECS 实例实例自动加入 ELB 后端服务器组浏览器访问 ELB 绑定的 EIP验证 WordPress 网站可以正常访问。4.7 云监控资源观测打开云监控 CES 服务查看资源总览大屏。查看告警记录进入主机监控查看各个 ECS 实例 CPU、内存等性能指标查看单台服务器详细监控曲线。4.8 实验资源清理避免按需计费扣费按顺序释放全部实验资源弹性伸缩→ECS 云服务器→RDS 数据库→私有镜像→弹性负载均衡 ELB→虚拟私有云 VPC→安全组。五、实验结果LAMP 环境部署成功访问 ECS 公网 IP 可以打开 Apache 测试页面。WordPress 网站部署完成能够使用 admin 账号成功登录网站后台。IMS 私有镜像创建成功可以用于弹性伸缩生成业务节点。弹性伸缩组可以自动创建 ECS 实例实例自动注册到 ELB 后端服务器组。通过 ELB 弹性公网 IP 访问WordPress 网站正常访问负载均衡分发业务流量生效。云监控 CES 能够采集、查看 ECS 的 CPU、内存监控数据。伸缩告警策略配置完成可依据 CPU 负载实现实例自动扩容、缩容。六、实验分析与思考镜像的作用通过私有镜像保存完整 WordPress 业务环境弹性伸缩新增实例直接复用镜像省去重复部署 LAMP、网站的工作快速复制业务节点。网络安全思考实验中将安全组全部端口开放仅为方便练习真实生产环境安全组应当遵循最小权限原则仅开放业务必需端口。RDS 数据库使用内网访问不配置公网 IP降低数据库被攻击风险。架构优势Web 业务层采用弹性伸缩水平扩展数据库采用 RDS 主备架构Web 服务器不直接绑定公网 IPELB 作为统一入口ELB 作为统一入口提升整体系统并发能力与可用性。业务压力大自动扩容业务空闲自动释放实例节约云上资源成本。故障点分析网站无法连接 RDS 数据库排查安全组规则、数据库内网 IP、数据库账号密码、数据库名称配置是否正确。ELB 访问网站失败检查监听器配置、后端 ECS 安全组 80 端口是否放行、后端实例健康检查状态。弹性伸缩实例没有自动加入 ELB 后端确认伸缩组配置中正确绑定负载均衡器与后端服务器组。6.1 实验遇到的报错案例、现象、原因、解决方案案例 1CloudShell 无法远程登录 ECS现象输入密码点击连接提示连接失败、超时。原因①安全组未开放 22 端口 SSH 登录 ②ECS 公网 EIP 未正常绑定 ③输入 root 登录密码错误。解决1修改安全组入方向放行 22 端口 2检查 ECS 实例是否绑定 EIP 3ECS 控制台重置实例密码使用新密码登录。案例 2访问 ECS 公网 IP打不开 Apache 测试页面现象浏览器访问 EIP页面无法访问、连接超时。原因①httpd 服务没有启动 ②安全组没有放行 80 端口 ③httpd 配置缺少ServerName参数服务启动异常。解决1执行systemctl start httpd启动服务systemctl status httpd确认状态为active(running) 2安全组入方向放行 TCP 80 端口 3修改/etc/httpd/conf/httpd.conf末尾添加ServerName localhost:80保存后重启 httpd。案例 3WordPress 安装提示无法连接数据库报错提示Error establishing a database connection现象WordPress 填写数据库信息提交报数据库连接失败。原因①填写 RDS 数据库内网 IP 地址错误 ②数据库名不是wordpress或者账号密码填写错误 ③安全组没有放通 RDS 的 3306 端口ECS 无法内网访问 RDS ④RDS 实例还在创建中实例未就绪。解决1复制 RDS 实例详情页面真实内网 IP不要手动输入 2确认 DAS 中已经创建名字为wordpress数据库核对 root 账号密码 3安全组入方向开放 3306 端口 4等待 RDS 实例状态变为正常再进行 WordPress 配置。案例 4制作私有镜像 IMS 失败现象点击创建私有镜像提交失败镜像任务一直处于创建中 / 失败。原因①源 ECS 实例处于开机运行状态制作系统盘镜像要求实例关机 ②实例正在执行其他操作重装系统、变更规格资源被占用。解决1进入 ECS 控制台将源服务器关机 2等待实例状态变为 “关机” 后再提交创建私有镜像 3不要在镜像制作过程中操作源 ECS。案例 5弹性伸缩 AS 创建实例成功但实例不在 ELB 后端服务器组现象伸缩组显示期望实例数为 2已经生成两台 ECS打开 ELB 后端服务器组看不到新生成的服务器。原因①创建弹性伸缩组时未选择后端服务器组只选了 ELB 实例 ②伸缩配置中勾选了 “使用弹性公网 IP”本实验业务节点不能分配 EIP ③VPC、子网选错伸缩实例和 ELB 不在同一个网络。解决1修改伸缩组不仅选择 ELB 实例同时指定对应的后端服务器组后端端口填写 80 2伸缩配置设置弹性公网 IP 为不使用 3确认伸缩组、ELB、ECS 全部使用同一个 VPC 和子网。案例 6浏览器访问 ELB 的 EIP网站打不开健康检查异常现象ELB 后端服务器健康检查状态显示异常红色不健康。原因①后端 ECS 内部 httpd 服务未正常运行 ②安全组没有放行 80 端口ELB 无法访问后端 80 业务端口 ③健康检查协议端口配置错误。解决1登录后端 ECS确认httpd、php‑fpm处于 running 状态 2安全组入方向开放 80 端口 3确认 ELB 健康检查端口为后端业务 80 端口。案例 7弹性伸缩告警策略不触发CPU 高不会自动扩容现象服务器 CPU 持续超过 60%但弹性伸缩没有新增实例。原因①伸缩冷却时间 300s 未结束冷却周期不执行伸缩动作 ②监控周期、连续触发次数未满足条件 ③云监控 Agent 未安装采集不到 CPU 指标 ④告警策略被停用。解决1等待冷却时间结束 2确认策略条件监控周期 5 分钟连续 3 次指标满足条件才触发 3安装云监控 Agent检查告警策略状态为启用。案例 8实验删除资源的时候VPC 无法删除现象删除 VPC 提示 “该 VPC 下还有关联资源删除失败”。原因VPC 还关联安全组、RDS、ECS、ELB 等资源删除顺序颠倒没有先删除内部资源。解决严格按照删除顺序执行弹性伸缩 → ECS → RDS → IMS 镜像 → ELB → 安全组 → VPC。必须把 VPC 内部全部关联资源全部清理完成才可以删除 VPC。七、实验总结本次实验完成企业 WordPress 网站完整上云部署熟练掌握华为云 VPC、ECS、RDS、IMS、ELB、AS、CES 服务配置流程。理解云上高可用网站架构实现负载均衡流量分发、基于 CPU 指标弹性扩缩容学会云上业务部署、监控观测以及资源清理。理解云计算弹性伸缩核心思想按需分配计算资源在保障业务稳定运行的同时控制资源使用成本。说明实验环境安全组全量放行仅用于教学练习实际生产环境需要收紧安全组访问策略。