AWS WordPress高可用性EFS,EC2和MySQL数据库
问题描述:
我正在构建一个WordPress高可用性服务。我对Wordpress有一点了解,但不知道如何让它为HA工作和设置。我已经完成了各种文章的阅读,但不确定在一台主机发生变化时,如果容忍Wordpress,现在另一台主机会作出反应。AWS WordPress高可用性EFS,EC2和MySQL数据库
我从2个EC2实例,EFS(NFS)和RDS MySQL数据库开始。 EFS用于在两个实例上共享应用程序配置/数据/内容。 RDS MySQL数据库也将在两个实例上共享。有没有人看到这个设计有任何障碍?我想知道如何在一台主机上更新Wordpress插件,以及其他主机是否会动态地看到相同的更新。
答
我对高流量的博客使用了相同的基础设施设计,它的功能就像一个魅力。
我已经完成了从各种文章的阅读,但不知道当一台主机发生变化时,如何容忍Wordpress,现在另一台主机会作出反应。
只要你的wordpress文件存储到EFS中,所有的EC2实例都是最新的。
建议:
- 使用CloudFront的服务为您的资产。不要依靠EFS,否则你会烧掉你所有的EFS突发信用。
- 使用自动缩放组来放大/缩小实例。
- 使用CloudWatch警报严格监控EFS突发/吞吐量信用。如果您刻录所有学分,您的实例将无法从EFS存储中读取!
感谢您的信息和建议@Antonio!我计划在我们的设计中使用Cloudfront服务。很高兴你有这个设计为你工作,因为它有助于验证我们的想法。我也喜欢你已经纳入自动缩放的事实;绝对会设置。我仍然对Wordpress的改变感到好奇......你如何在HA环境中升级WordPress的“核心和/或插件”?我假设你只需要一台主机,而另一台主机的WordPress服务只需要重新启动? – Joe
您的WordPress文件将存储在EFS中。 更新/安装插件时,您的一个EC2实例将下载所需文件并将其保存到EFS中。所有其他EC2实例将自动从EFS中获取新文件。 如果您想确保所有实例使用更新的PHP文件,您可以重新加载PHP-FPM进程(或者只是清除操作码缓存)。 – Antonio