You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

启用constraints/compute.requireOsLogin后Dataproc批处理作业报错如何解决?

解决Dataproc批处理作业违反OS Login约束问题

问题原因

你的GCP项目已启用constraints/compute.requireOsLogin强制约束,要求所有Compute Engine实例必须启用OS Login,但Dataproc批处理作业默认创建的实例未配置该属性,因此触发约束校验失败。

可行解决方法

1. 提交作业时直接启用OS Login

在批处理提交命令中添加--properties参数,强制Dataproc实例启用OS Login:

gcloud dataproc batches submit --project <project-id> --region us-east1 pyspark \
--batch batch-123 gs://mybucket/test.py --version 2.1 --subnet test \
--properties dataproc:compute.os-login.enabled=true

2. 使用预配置OS Login的实例模板

如果需要重复使用该配置,可先创建带OS Login的实例模板,再在作业中指定:

  • 创建实例模板:
gcloud compute instance-templates create dataproc-os-login-template \
--region us-east1 \
--os-login
  • 提交作业时关联模板:
gcloud dataproc batches submit --project <project-id> --region us-east1 pyspark \
--batch batch-123 gs://mybucket/test.py --version 2.1 --subnet test \
--instance-template dataproc-os-login-template

3. 配置Dataproc集群模板(长期复用场景)

若使用自定义Dataproc集群模板,在模板中启用OS Login配置,后续批处理作业使用该模板时会自动继承设置。

验证方式

作业提交后,可通过GCP控制台查看批处理作业关联的实例详情,确认实例已启用OS Login,此时作业即可正常执行。

内容的提问来源于stack exchange,提问作者Krisztian

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.10 15:53:22