fuse
(Geoff Hughes)
1
我收到了一个美国东部时间晚上 9:09 的 AWS CloudWatch 警报,我的朋友们也给我发短信说“嘿,Discourse 宕机了吗?”
我无法 SSH 登录到 AWS Lightsail 实例,并且所有指标都已冻结/未报告。
最终我放弃了,停止/重启了 Lightsail 实例。
服务已恢复。
服务恢复后,我查看了日志,希望能从中学习。
我运行的是单实例 Discourse,所以 9:05 关于 Redis 网络连接的错误让我感到困惑。
我无法弄清楚发生了什么,除了“某事”因为“某个原因”而冻结/失败了。
任何能解释或提供线索的人都将不胜感激。
谢谢!
MarcP
(MarcP)
2
服务器规格是什么?听起来像是资源不足?很可能是 CPU。也许当时有什么日常任务在运行?
fuse
(Geoff Hughes)
3
这是一个 1 vCPU、1GB RAM、40 GB SSD 的 Lightsail 实例。
存储空间已消耗约 60%,进行清理后会下降不少。
AWS 显示我已用完突发 CPU 积分,这很奇怪,因为其他指标并不支持这一点。
这是一个相当小的社区(20-30 名活跃参与者),所以我很惊讶是否真的存在 CPU 或 RAM 限制。
据我所知,除了 Discourse 可能默认安排的任何任务之外,没有其他日常任务。
Stephen
(Stephen)
4
1GB 内存加交换空间是运行 discourse 的绝对最低要求。
此实例已运行多久?数据库有多大?
3 个赞
fuse
(Geoff Hughes)
5
我将检查数据库大小,预计不会很大(备份都在 57 MB 左右)。
实例的正常运行时间至今不到十个小时,因为恢复需要停止并重新启动虚拟服务器——我无法获得 shell 或控制台连接。
自构建以来,该实例类型一直运行良好(大概是 2021 年 2 月)。
Falco
(Falco)
6
这听起来像是 AWS 将您的虚拟机从一个主机迁移到另一个主机时发生的情况,并且由于该操作导致虚拟机处于一种奇怪的状态。通常重启可以解决这个问题。
5 个赞
fuse
(Geoff Hughes)
7
数据库总大小为 423MB。
最大的表是
Posts 66MB
Post_timings 60MB
fuse
(Geoff Hughes)
8
发生了第二次类似的“高负载”故障。
我猜是资源争用。
有人尝试过使用 Lightsail 快照来快照实例,并将其恢复到更大的实例作为升级方法吗?
您可以尝试重启 AWS 实例,这可以解决许多问题。
fuse
(Geoff Hughes)
10
我使用 Lightsail 快照从 1 CPU、1GB RAM、40GB SSD 迁移到了 2 CPU、4GB RAM、80GB SSD。\n\n除了分离公共 IP 和重新附加(这相当直接)之外,我剩下的担忧是“我错过了什么”?\n\n是否有任何内容(备份、电子邮件、S3 存储桶配置等)我应该检查,或者我需要重新运行任何初始安装参数才能利用升级后的资源?
fuse
(Geoff Hughes)
11
我想根据这个链接,可以将 db_shared_buffer 提高到至少 1GB。
当前的 app.yml 显示为 128MB,并且指示在启动时自动调整。
Stephen
(Stephen)
12
1GB 对于 4GB 系统来说足够了。请确保还将 unicorn_workers 更新为 4。
如果您要在服务器之间迁移,通常的建议是重新运行 discourse-setup,它会自动处理上述问题。
1 个赞
fuse
(Geoff Hughes)
13
谢谢。我现在要深入研究 Prometheus 了。
很棒的内容。