有没有办法在 Google Cloud Builds 中请求其他机器尺寸?

有没有办法在 Google Cloud Builds 中请求其他机器尺寸?

Google Cloud Builds 似乎提供了三种不同的机器尺寸来运行构建,具体如下:这里

我们可以看到这些映射到三种可用的计算机器类型这里

因此我们的选择是:

  • 1 个 CPU,3.75GB 内存
  • 8 个 CPU,7.2 GB 内存
  • 32 个 CPU,28.8 GB 内存

我想将 Cypress 测试作为构建管道的一部分运行,这是 Google 认可并提供的模式,我的要求是大约 8-16GB 的内存。为了满足最低要求,我需要申请 32 CPU 的巨型机器并支付相应费用。这对我们来说是不可行的,因为额外的 ~30 个 CPU 的成本非常高。

理想情况下,我希望请求n1-highmem-2机器运行这些测试;我认为这很好地满足了我的需求,但它似乎不是 Cloud Builds 中的一个选项。我尝试在 Cloud Builds 选项中指定它,但它被视为无效。

我是不是理解错了?我感觉很奇怪,为什么我们拥有这么多 CPU,却只有这么少的内存。我为什么要这样做?为什么 Google 如此确定我会想要这个,以至于他们甚至不提供像 highmem 这样的不同形状?

答案1

对于 2022 年遇到类似问题的人:
Cloud Build 现在还提供私人泳池另外还有 15 种机器类型:

  • e2-中等
  • e2-标准-2
  • e2-标准-4
  • e2-标准-8
  • e2-标准-16
  • e2-标准-32
  • e2-高 CPU-2
  • e2-高 CPU-4
  • e2-高 CPU-8
  • e2-高 CPU-16
  • e2-高 CPU-32
  • e2-高内存-2
  • e2-高内存-4
  • e2-高内存-8
  • e2-高内存-16

在@Goldstein场景中,e2-高内存-216GB RAM 的使用成本为每分钟 0.01306 美元,而使用e2-高 CPU-32

答案2

您可以使用 gCloud cli 工具构建 N1 自定义图像。

单个 N1 实例类型每个 vCPU 的内存限制为 6.5GB,因此要获得更多内存,您需要启用扩展内存,但需支付额外费用。

我已链接相关的 GCP 文档供您参考。

使用自定义机器类型创建虚拟机实例

为机器类型添加扩展内存

希望有所帮助。

答案3

编辑

截至 2021 年 4 月,Cloud Build 有 4 种机器类型可供选择,如下所述文档

N1_HIGHCPU_8    Highcpu machine with 8 CPUs.
N1_HIGHCPU_32   Highcpu machine with 32 CPUs.
E2_HIGHCPU_8    Highcpu e2 machine with 8 CPUs.
E2_HIGHCPU_32   Highcpu e2 machine with 32 CPUs.

原始答案

Cloud Build 提供两种高 CPU 虚拟机类型来运行您的构建:8 个 CPU 和 32 个 CPU。默认机器类型为 1 个 CPU。请求高 CPU 虚拟机可能会增加构建的启动时间。添加 machineType 选项以请求具有更高 CPU 的虚拟机。

https://cloud.google.com/cloud-build/docs/build-config#options

所以不,只有这三个选项可用。

相关内容