GitHub Runner 占用 2 倍物理 RAM - 如何处理?

GitHub Runner 占用 2 倍物理 RAM - 如何处理?

我现在已经遇到过 4 次 AWS ERP 服务器崩溃,原因是内存显然已达到最大限额,并且系统基本上因 100% CPU 和没有 [少量] 可用 RAM 而死机。

Ubuntu 18.04.5 LTS(GNU/Linux 5.4.0-1060-aws x86_64)(AWS AMI)

这种情况在 GitHub 操作过程中发生了三次。操作是执行数据库导入,然后是 slack 通知。因此,您会认为是这些步骤之一导致了问题,但奇怪的是,这些步骤都正常完成。数据库没有问题,slack 通知已推送。

GitHub 本身与运行者失去了连接,即使在操作完成后,虚拟内存仍然急剧增加。

第四次发生这种情况时,没有任何程序在运行。实际上,服务器处于空闲状态,没有任何程序在运行。不过,我没有任何日志或“顶部”屏幕截图,但我确实有一次在运行过程中捕捉到了它:

TOP 显示图像

因此,该系统是具有 4G RAM 的 AWS VM。请注意,我相信设置此系统的 SI 配置为无交换空间。对于服务器来说,这可以说是正确的 [非常有争议],因为如果发生内存泄漏,您希望系统报告内存不足并采取纠正措施,因为内存泄漏最终会导致服务器死亡。

在短期内,我被要求将 RAM 增加一倍。这有点不必要,因为它是一个负载很轻的系统(在执行繁重的批处理作业时,通常只使用大约 2G 的 RAM),坦率地说,如果 GitHub Runner.Worker 在 4GB 系统上的最大 RAM 为 7GB,那么为什么它不会在 8GB VM 上的最大 RAM 为 16GB,但我们会看看它是否会再次崩溃。我并不反对更改 TFG 的交换配置,但我不确定这是否是一个解决方案

我已经向 GitHub 报告了这个问题,但是经过 3 周的无所作为之后,我想在这里检查一下是否有人有任何想法或解决方法。

谢谢你,

== 约翰 ==

相关内容