2021年,我制作了一个共六部分的系列教程,讲解如何创建高可用性的WordPress网站。目标是:
- 即使虚拟专用服务器 (VPS) 发生故障,网站仍将继续运行。
- 任何故障对最终用户来说都是透明的。如果我访问 example.com,发现其中一个节点宕机了,我不会察觉到任何不同。
- 节点间的数据不会过时。每个用户看到的信息都相同。
当时我们使用 DRBD、MariaDB 复制和 OCFS2 创建了一个持久且能抵抗单点故障的双节点环境。
现在是2026年,是时候进行更新了。2021年的架构仍然运行良好,但这次我们将采用不同的方法,利用一些不同的技术。我们还将使用Ansible来实现自动化。
以下是我们的技术栈:
- Nginx 和 php-fpm
- 使用 GlusterFS 作为文件系统(而不是 DRBD/OCFS2)
- MariaDB Galera 实现数据库高可用性
- 再次使用循环 DNS
- Let's Encrypt 用于 https
- Ansible 可以简化部署。
这就是我们完工后的样子:
上次我用的是 Linode,但由于他们已经不存在了(我的意思是,他们还在,只是改了品牌),所以在本教程中,我将使用 Hetzner 在俄勒冈州希尔斯伯勒的 VPS。
以下是我们将遵循的概要:
第一部分——引言、考虑因素和架构(本文)
第二部分 – 订购虚拟专用服务器
第三部分 – Ansible
第四部分——集群
第五部分 – WordPress 安装
第六部分 – MariaDB 多主数据库
第七部分 – 轮询 DNS、Let's Encrypt 和结论
我们每天都会发布一个教程,所以明天再来开始吧!