利用阿里云搭建WordPress网站 – 服务器横向扩展

本文涉及的产品
应用型负载均衡 ALB,每月750个小时 15LCU
传统型负载均衡 CLB,每月750个小时 15LCU
公网NAT网关,每月750个小时 15CU
简介: WordPress是一种非常流行的博客网站平台,也可以当作一个内容管理系统(CMS)来使用, 是世界上使用最广泛的博客系统之一。WordPress有非常多优秀的插件,使得这个开源产品变得非常容易扩展,满足不同的需求。

WordPress是一种非常流行的博客网站平台,也可以当作一个内容管理系统(CMS)来使用, 是世界上使用最广泛的博客系统之一。WordPress有非常多优秀的插件,使得这个开源产品变得非常容易扩展,满足不同的需求。
我准备利用一个系列的文章,来展示如果利用阿里云的各种产品(弹性计算,数据库,安全等等),搭建一个完整的WordPress网站。内容包括:

五、服务器横向扩展

针对数据库增加了缓存和只读实例这些配套组件之后,在很长一段时间之内,网站都不再会因为数据库性能出现问题(毕竟网站读多写少,业务场景比较单一),随着业务持续增加压力会出现在应用服务器上。应用服务器的扩展可以是纵向的(升级规格),也可以是横向的(增加服务器进行并行处理),在这篇文章中,我们会演示如何利用镜像进行ECS的横向扩展。为了进行横向扩展,首先需要复制ECS镜像(这当然要求应用是无状态的),并在前端增加SLB负载均衡。除此之外,当ECS数量逐渐增加之后,为了运维方便,往往可以增加一个NAT网关来作为统一的公网运维出入口,如果对安全性特别高的情况,甚至需要通过增加VPN+堡垒机的方式来进行包含鉴权和审计的运维活动。
这个部分的架构图如下,基于上一个版本增加了:

  • SLB负载均衡:对多台ECS进行流量分发,从而扩展应用系统对外的服务能力,避免单点故障
  • NAT网关:在 VPC 环境下构建一个公网流量的出入口,为多ECS提供访问公网的出口(SNAT)或统一运维入口(DNAT)
    1

利用镜像新建一台ECS

横向扩展的前提是无状态应用,文件和数据库都应该独立出来存放。前面配置的NAS和MySQL都是独立的,已经具备横向扩展的条件。横向扩展的方式是复制多个无状态的ECS实例。做法是首先打个ECS快照(https://help.aliyun.com/document_detail/25455.html)。说到ECS快照,为了保证业务数据安全,一般的系统应该进行每日快照并最少保存过去7天的快照数据。“快照不规范,亲人两行泪!”
2

快照创建好了之后,再利用这个快照创建一个自定义镜像(https://help.aliyun.com/document_detail/25460.html)。注意快照和镜像的区别,快照主要是用于数据备份,只能恢复到当前ECS实例,不可跨地域使用;镜像主要是用于数据迁移,可以更换系统盘或创建新的ECS实例,可以跨地域使用。
3

有了镜像,就可以再复制出一个新的ECS来。创建ECS的时候要注意VPC应该和老ECS的VPC一致,才能保证内网互通。另外考虑到高可用,可以把新ECS放在另外一个可用区中,即使有其中一个区的ECS宕机,还有另一个区的ECS可以用。另外,跨可用区高可用的部署要注意“雪崩效应”,即两台ECS的负载都大于50%的情况下,当一台因故宕机后,另一台也会由于过载的原因而宕机,导致高可用失效。因此,两台ECS高可用,平均负载不应超过50%;三台ECS高可用,平均负载不应超过66%;四台ECS高可用,平均负载不应超过75%;以及类推。
4
5
6
7
8

为了让新的ECS可以访问RDS和Redis,需要将其内网IP加入到RDS和Redis的白名单中,这个操作可以参考前两篇(“搭建基础网站应用”和“数据库缓存和管理”)中的设置方法,而NAS和OSS则没有这个安全要求。所有的对应的连接配置也都已经被打包进了镜像当中,一般来说无需再进行配置。
9
10

然后我们把之前绑在旧ECS上的EIP解绑,然后绑到新ECS上面试试看。由于是通过镜像复制出来的新ECS,连接的数据库是原有的,所以理论上应该和访问旧ECS应该没有什么区别。
11
12
13

绑定好之后,访问网页试试,正常应该可以成功。如果发现又到了WordPress的配置页,这表示之前配置文件没有正确加载。这个问题很可能是因为NAS加载因为某种问题失败了,可以重启一次新ECS再试试。
14

用SLB做负载均衡

有了多台ECS,为了保证流量均衡分配到多台ECS上,需要在ECS集群前面增加SLB负载均衡(https://www.aliyun.com/product/slb),这和自己用Nginx搭负载均衡类似,而优势在于能够快速搭建起一主一备的高可用架构,并且运维起来也更方便些。创建SLB的时候要注意使用私网类型,这样才能继续绑定使用之前的EIP,使得对外IP保持不变。另外还要注意使用之前创建的VPC,保证其与后端ECS的内网连通。
15

创建成功之后,开始配置后端服务器,将前面的新旧两台ECS接入。
16

前端继续监听HTTP协议,并且仍旧继续使用80端口,使得在横向扩展过程中,不影响业务的对外展现。SLB的调度算法有三种:轮询、加权轮询(WRR)、加权最小连接数(WLC),在后端服务器的处理能力不同的情况下,一般采用加权算法。在此例中,两台后端ECS设置了相同的权重,效果和轮询一样。另外WordPress需要打开保持会话功能,负载均衡监听会把来自同一客户端的访问请求分发到同一台后端ECS上。
17
18

设置完成之后,把绑在新ECS上的EIP解绑,然后绑到SLB上面来。
19

最后从前端页面试试,访问正常。在SLB的控制台上也应该可以看到相应的流量,妥!
20

NAT网关做维护口

SLB+EIP作为用户出入的“正门”没有问题,但是无法供运维人员使用来对ECS进行运维,包括SSH(或者RDP)和外网下载等。为了对ECS集群进行运维,要么给每个ECS都绑一个EIP,要么利用NAT网关(https://www.aliyun.com/product/nat)作为运维的出入口。第一种方法安全性较低,也不太容易管理,所以一般都会采用NAT网关的方案,利用DNAT提供SSH(或者RDP)端口映射供运维人员远程控制,利用SNAT提供外网下载的能力。另外,由于NAT网关没有鉴权能力,如果需要更安全的运维方式,还应该利用堡垒机(https://www.aliyun.com/product/bastionhost)来代替NAT网关的DNAT功能。
首先需要购买一个NAT网关和两个EIP(一个供DNAT使用,一个供SNAT使用),然后把EIP绑定到NAT上。
21
22

然后配置DNAT,将后端ECS的22端口(SSH)映射到外网来(本例用了10221和10222端口来分别对应旧新两台ECS的22端口)。
23
24
25

从外网试试利用映射端口10221来控制旧ECS,没问题。
26
27

再来配置SNAT,这个很简单,只需要绑定到相应的交换机上就好了。
28
29
30

利用刚刚的SSH试试从ECS进行下载,毫无压力。
31

相关实践学习
快速体验PolarDB开源数据库
本实验环境已内置PostgreSQL数据库以及PolarDB开源数据库:PolarDB PostgreSQL版和PolarDB分布式版,支持一键拉起使用,方便各位开发者学习使用。
7天玩转云服务器
云服务器ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,可降低 IT 成本,提升运维效率。本课程手把手带你了解ECS、掌握基本操作、动手实操快照管理、镜像管理等。了解产品详情: https://www.aliyun.com/product/ecs
相关文章
|
4天前
|
弹性计算 关系型数据库 Apache
阿里云实验基于ECS搭建云上博客
实验网址https://developer.aliyun.com/adc/scenario/fdecd528be6145dcbe747f0206e361f3?spm=a2c6h.13858375.devcloud-scene-list.4.d1a04090jMEG9j
60 26
|
3天前
|
缓存 搜索推荐 数据库
使用SiteGround搭建WordPress网站的方法
以上就是在SiteGround上搭建WordPress网站的步骤。这个过程可能需要一些时间和耐心,但只要你按照步骤操作,你就可以成功搭建自己的WordPress网站。
41 23
|
9天前
|
安全 Linux
阿里云linux服务器使用脚本通过安全组屏蔽异常海外访问ip
公网网站可能会遭受黑客攻击导致访问异常,使用此脚本可以屏蔽掉异常IP 恢复访问。也可自行设置定时任务定期检测屏蔽。
107 28
|
2天前
|
存储 缓存 弹性计算
阿里云经济型e实例云服务器评测:企业官网搭建的性价比之选
阿里云服务器经济型e实例可以用来搭建企业网站吗?云服务器作为搭建企业官网的基础设施,其性能、稳定性、成本等因素直接影响着官网的运营效果。阿里云经济型e实例云服务器作为一款性价比较高的产品,备受用户关注。许多企业在选择云服务器搭建官网时,都会将其纳入考虑范围。本文将详细探讨阿里云经济型e实例云服务器的特点、性能表现、稳定性与可靠性,以及成本考量,最终解答是否适合用它来搭建企业官网。
|
3天前
|
存储 开发框架 安全
阿里云轻量应用服务器38元与云服务器99元和199元区别及选择参考
2025年,阿里云推出了多款价格比较实惠的轻量应用服务器和云服务器,这些产品以其卓越的性能和亲民的价格,吸引了众多个人开发者、小型网站以及中小企业的关注。本文将对这几款轻量应用服务器和云服务器进行详细对比和测评,分析其性能和适用场景,以供大家在选择时参考。
|
10天前
|
存储 机器学习/深度学习 人工智能
阿里云第八代云服务器c8i与g8i深度解析:技术对比、场景适配与选购指南
阿里云服务器计算型c8i与通用型g8i实例属于阿里云的第八代云服务器实例规格,是除了计算型c7与c8y和通用型g7与g8y之外同样深受用户喜欢的云服务器实例规格。本文将详细解析计算型c8i与通用型g8i实例的技术特性、适用场景、性能优势,以及最新的活动价格情况,并为用户提供购买建议。
|
9天前
|
运维 网络安全 PHP
2025年面板安装 Wordpress 网站教程
本文对比了2025年国内主流服务器运维面板(宝塔、1Panel、Websoft9、AMH、旗鱼云梯)的核心特点与适用场景,并详细介绍了各面板安装WordPress的教程。内容涵盖环境配置、数据库创建及源码部署等步骤,同时提供了通用注意事项与选择建议。新手可优先考虑操作直观的宝塔面板或云端管理工具旗鱼云梯,技术爱好者和企业用户则可根据需求选择更专业或定制化的方案。
39 2
|
15天前
|
自然语言处理 大数据 云计算
「轻」启未来:阿里云轻量应用服务器用户交流会
扫描海报二维码报名,赢取百元代金券!
|
18天前
|
自然语言处理 云计算 开发者
「轻」启未来:阿里云轻量应用服务器用户交流会
为助力中小企业与开发者轻松上云,阿里云举办「「轻」启未来:轻量应用服务器用户交流会」。活动聚焦最新产品迭代、游戏自建服实战及智能问答系统解析,助您降低选型门槛,快速找到适合业务需求的云服务器。扫描海报二维码报名,赢取百元代金券!
|
19天前
|
缓存 PHP 数据库
WordPress网站服务器性能优化方法,站长必备。
最后,当你将这些方法组合起来并实施时,您将发现你的WordPress网站性能有了显著的提高。别忘了,这不是一次性的任务,要定期执行,保持你的车(网站)始终在轨道上飞驰。
63 21
下一篇
oss创建bucket