【发布时间】:2022-01-03 05:40:07
【问题描述】:
我有一个运行 Ubuntu 20.04 的 f1-micro gcloud vm 实例。 它有 0,2 vcpus 和 600mb 内存。
我写的是冻结/崩溃,它代表不再响应任何事情。
从我的监控中,我可以看到 CPU 的使用率达到了 40% 的峰值(通常稳定在 1% 以下),而内存始终在 60% 左右(这两个统计数据都是在我的 (nodejs) 服务器运行时)。
当我打开到我的实例的 ssh 连接并在后台运行我的 (nodejs) 服务器时,只要我保持 ssh 连接处于活动状态,一切都会正常工作。一旦我关闭连接,就需要几分钟,直到实例冻结/崩溃。在不关闭 ssh 连接的情况下,我可以让它运行几个小时而没有任何问题。
我没有从 gcloud 本身收到任何崩溃或冻结信息。该实例有一个绿色复选标记,并且仍在运行。我只是无法打开一个新的 ssh 连接,而且对这个实例再次做某事的唯一方法是重新启动它。
我已启用云日志记录,但其中也没有消息。
因此,有了这些知识,我的问题是 gcloud 是否会以某种方式增强 ssh 连接的 vm 以保持它们的活力? 因为我不知道还有什么可能导致这种行为。
我的(nodejs)服务器使用大约 120mb,另一个服务使用 80mb,gcp 监控代理使用 30mb。实例上的 linux free 命令显示可用内存在 60mb 到 100mb 之间。
【问题讨论】:
-
SSH 消耗资源(少量),这意味着如果问题是资源可用性(CPU、内存、网络),SSH 连接不会提高 Compute Engine 实例的正常运行时间。 F1-micro 是一个很小的实例。通常,系统挂起(抖动)是由资源匮乏引起的。 40% 等相对数字对于小实例大小意义不大。
标签: node.js google-cloud-platform ssh virtual-machine google-compute-engine