在app.yaml中为没有vm_settings的google cloud compute node.js app设置f1-micro资源限制

时间:2015-07-07 16:04:43

标签: google-app-engine google-compute-engine

不使用已弃用的vm_settings -> machine_type设置,我的Google托管虚拟机部署为g1-small。使用Node.js app.yaml作为模板,除了memory_gb以外,还需要更改哪些内容作为f1-micro机器类型进行部署?目前,我有

resources:
  cpu: .5
  memory_gb: .6
  disk_size_gb: 10

并使用

进行部署
gcloud preview app deploy app.yaml --set-default

操作

vm_settings:
  machine_type: f1-micro

......有效,但我警告说这个设置很快就会消失。

2 个答案:

答案 0 :(得分:21)

正如Jeff和Greg都回答的那样,“在选择机器类型之前,Google在VM上增加了一点开销。这大约是400mb的内存。所以他们告诉我你是否想要f​​1-micro尝试请求.2或更低的内存正如格雷格所说。“

我不得不降低到.18才能将其部署为f1-micro,但谷歌增加开销的一般想法是可靠的。

答案 1 :(得分:7)

只想更新这篇文章。现在无法将内存设置为0.18,因为Google已记录了如何计算这些设置。

<强> CPU

对于 cpu ,您现在只能设置1或偶数2到32(即2,4,6,8 ...... 32)

<强>内存

对于 memory_gb ,Google表示每个核心的最小内存为0.9GB,其中包括Google进程所需的约0.4GB的开销。因此,您可以请求0.5GB及以上的内存来满足该要求。 0.18不再适用,部署期间会抛出错误。

所以我的app.yaml目前看起来像这样:

# [START app_yaml]
runtime: nodejs
env: flex

resources:
  cpu: 1
  memory_gb: 0.5
  disk_size_gb: 10

我知道问题是设置f1-micro资源限制,但根据当前的文档,似乎不可能。

有关计算的详细信息,请参阅Resource settings。 甚至还有一个你可以遵循的公式。