【问题标题】:Wordpress site on Apache and AWS crashes without obvious leadsApache 和 AWS 上的 Wordpress 网站在没有明显线索的情况下崩溃
【发布时间】:2018-05-06 22:38:33
【问题描述】:

我最近将我的 Wordpress 网站迁移到 AWS,以练习在云上进行自托管。我在应用程序负载均衡器后面的自动缩放组中有一个 EC2 实例,我的 Wordpress 数据在 EFS 上,当实例被预置时会挂载,并且我将 RDS 用于我的数据库(MySQL)。该站点的流量最小,除了我,每周可能有 2-3 位访客,这真的是一个非常个人化的项目。

直到上周我的网站下线之前,一切都运行良好。尝试访问该 url 我收到了 504 错误,我无法通过 ssh 进入服务器,并且在重新启动后,我能够看到有大量 httpd 实例正在运行。在服务器停止响应之前,该站点会保持运行大约 10 分钟。查看重启时的日志,我看到了很多内存不足的错误,特别是:

无法分配内存:AH00481: fork: Unable to fork new process

我更新了我的 httpd 配置以包含自定义 prefork 设置,如下所述: Problems with Apache servers and A LOT of httpd processes

还有:https://arstechnica.com/civis/viewtopic.php?t=1185478 我也认为这可能与代码有关,但在此问题发生之前的一个多星期内没有任何代码发生变化。

我还将实例类型从 t2.micro 扩展到 t2.small,因此我的实例从 1 gig 的 RAM 增加到大约 2 gig。

过去,我曾因暴力攻击导致网站宕机,因此我检查了访问日志是否有任何异常情况。我看到一些请求发布到 xmlrpc.php,所以我更新了我的 .htaccess 以阻止对该文件的访问,如:https://wordpress.stackexchange.com/questions/156522/restrict-access-to-xmlrpc-php

我还注意到来自以下网站的健康流量:

  • ELB 运行状况检查
  • JetPack 插件
  • Wp-Cron
  • Bots(bingbot,我验证了 IP 是合法的) - 这很有趣,因为在 bingbot 爬取我的网站后,我注意到几次它会占用服务器,并出现更多内存不足错误。不过,这可能只是巧合。

我还在日志中看到我认为是端口扫描的条目,以及:

- - [06/May/2018:19:18:32 +0000] "POST /user/register?element_parents=account/mail/%23value&ajax_form=1&_wrapper_format=drupal_ajax HTTP/1.1" 404 20630 "-" "Mozilla /5.0(Windows NT 10.0;Win64;x64)"

- - [06/May/2018:19:14:02 +0000] "GET /jmx-console/HtmlAdaptor?action=inspectMBean&name=jboss.system%3Aservice%3DMainDeployer HTTP/1.1" 404 20630 "-" " Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/63.0.3239.132 Safari/537.36"

鉴于这些请求的返回码是 404,我认为它们无需担心。

我想知道我的 Wordpress 配置或 EFS 性能是否与该问题有关,但几乎所有东西都是开箱即用的。

是否有人对我可以尝试的其他故障排除步骤有任何想法,或者我可能忽略或做错了什么?

【问题讨论】:

    标签: php wordpress apache amazon-web-services


    【解决方案1】:

    如果您的 wordpress 安装在 EFS 上,那么您的 EFS 信用可能会用完 - 您拥有的 I/O 总量与 EFS 卷的大小直接相关,小型安装不会获得大量 EFS I/O - 事实上,仅靠运行状况检查就可能导致您的站点宕机。

    查看您的 EFS 卷的 BurstCreditBalance 指标以确认。

    AWS 最近更新了 Wordpress 的参考架构 - v2 版本有一个积分触发器,如果​​积分低于某个阈值,则会向 EFS 添加一个 1GB 的虚拟文件。

    【讨论】:

    • 感谢您提供此信息。目前我将我的 Wordpress 安装移动到本地文件系统。作为这个个人项目的一部分,我将进一步试验 EFS。我还记录了更新后的 Wordpress 参考架构,以便进一步优化。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2022-10-13
    • 2022-01-27
    • 2018-06-22
    • 2016-03-19
    • 2015-12-08
    相关资源
    最近更新 更多