本页介绍了如何增加 build 的 vCPU。
默认情况下,Cloud Build 会在标准虚拟机 (VM) 上运行 build。除了标准虚拟机外,Cloud Build 还提供多种高 CPU 虚拟机类型来运行构建。如需加快构建速度,请选择具有更高 vCPU 的机器来运行 build。请注意,虽然选择高 vCPU 机器可以提高构建速度,但由于 Cloud Build 仅按需启动非标准机器,因此也可能会增加构建的启动时间。
如果您需要的 vCPU 选项比默认池提供的更多,可以选择在专用池中运行 build,该池可为 build 提供多种高 CPU 机器类型。
如需详细了解所有可用的机器类型,请参阅价格页面。
准备工作
如需使用本指南中的命令行示例,请安装并配置 Google Cloud CLI。
- 如果您之前已经安装了 gcloud CLI,请运行
gcloud components update以确保您拥有最新版本。
增加默认池的 vCPU
您可以通过以下方式增加在默认池中运行 build 的 vCPU:直接将值传递给 gcloud builds submit 命令,或在 build 配置文件中指定值。
将值直接传递给 gcloud builds submit 命令:
如需直接在 gcloud builds submit 命令中指定自定义虚拟机大小,请向该命令添加 --machine-type 实参:
gcloud builds submit --config=cloudbuild.yaml \
--machine-type=E2_HIGHCPU_8
在构建配置文件中指定值:
YAML
打开您的构建配置文件。
将
machineType字段更新为与默认池支持的机器类型之一对应的枚举值。以下示例展示了如何将machineType选项添加到 build 配置文件:steps: - name: 'gcr.io/cloud-builders/docker' args: ['build', '-t', 'gcr.io/my-project/image1', '.'] options: machineType: 'E2_HIGHCPU_8'使用 gcloud CLI 或构建触发器启动构建。
JSON
打开您的构建配置文件。
将
machineType字段更新为与默认池支持的机器类型之一对应的枚举值。以下示例展示了如何将machineType选项添加到 build 配置文件:{ "steps": [ { "name": "gcr.io/cloud-builders/docker", "args": ["build", "-t", "gcr.io/my-project/image1", "."] }, "options": { "machineType": "E2_HIGHCPU_8" } }使用 gcloud CLI 或构建触发器启动构建。
如需确保使用特定机器类型来构建 Cloud Run 服务的容器,请执行以下操作:
使用专用 Cloud Build build 构建并推送容器映像,并在
cloudbuild.yaml中配置所需的machineType。通过引用 Artifact Registry 中的映像网址,将服务部署到 Cloud Run:
gcloud run deploy SERVICE_NAME --image IMAGE_URL
增加专用池的 vCPU
控制台
在 Google Cloud 控制台中,打开工作器池页面:
选择您在其中创建了专用池的项目。
点击专用池名称。
在修改专用池侧边栏中,使用机器类型下拉菜单选择更大的机器类型。
点击保存。
gcloud
您可以通过以下两种方式增加在专用池中运行构建的 vCPU:直接将值传递给 gcloud builds worker-pools update 命令,或在专用池配置文件中指定值。
在专用池配置文件中指定值:
打开您的专用池配置文件。
将
machineType字段的值更新为支持的机器类型之一。运行以下命令,其中
PRIVATEPOOL_ID是专用池的唯一标识符,REGION是专用池所在的区域,PRIVATEPOOL_CONFIG_FILE是专用池配置文件的名称:gcloud builds worker-pools update PRIVATEPOOL_ID \ --region=REGION \ --config-from-file=PRIVATEPOOL_CONFIG_FILE
将值直接传递给 gcloud builds worker-pools update 命令:
gcloud builds worker-pools update PRIVATEPOOL_ID \
--region=REGION \
--worker-machine-type=PRIVATEPOOL_MACHINE_TYPE
将上述命令中的占位值替换为以下内容:
PRIVATEPOOL_ID:现有专用池的 ID。无法更新此值;必须指定现有专用池 ID。REGION:在其中创建了专用池的区域。PRIVATEPOOL_DISK_SIZE:更新后的磁盘大小。PRIVATEPOOL_MACHINE_TYPE是更新后的机器类型。只要您使用相应的专用池运行构建,Cloud Build 就会使用更新后的机器类型。
后续步骤
- 了解更多可加快构建速度的最佳实践。