【发布时间】:2020-01-16 09:50:58
【问题描述】:
我正在尝试使用以下命令创建我的第一个 Google Cloud Dataproc 集群:
gcloud dataproc clusters create hive-cluster \
--scopes sql-admin \
--image-version 1.3 \
--initialization-actions "gs://goog-dataproc-${PROJECT}:${REGION}:hive-metastore" \
--master-machine-type n1-standard-1 \
--master-boot-disk-size 15 \
--num-workers 2 \
--worker-machine-type n1-standard-1 \
--worker-boot-disk-size 15 \
--region us-east1 \
--zone us-east1-b
但是,我收到以下错误:
Dataproc could not validate the initialization action using the service-owned service accounts. Cluster creation may still succeed if the initialization action is accessible from GCE VMs.
Reason: service-1456309104734317@dataproc-accounts.iam.gserviceaccount.com does not have storage.objects.get access to goog-dataproc-initialization-actions-us-east1/cloud-sql-proxy/cloud-sql-proxy.sh.
Waiting for cluster creation operation...done.
ERROR: (gcloud.dataproc.clusters.create) Operation [projects/traits-seater-824109/regions/us-east1/operations/5b36fb82-ade2-3d5f-a6bd-cb1a206bb54e] failed: Multiple Errors:
- Error downloading script 'gs://goog-dataproc-initialization-actions-us-east1/cloud-sql-proxy/cloud-sql-proxy.sh': 1456309104734317-compute@developer.gserviceaccount.com does not have storage.objects.get access to goog-dataproc-initialization-actions-us-east1/cloud-sql-proxy/cloud-sql-proxy.sh.
我检查了 IAM 中的权限,并将 storage->Object viewer 角色分配给了上面错误消息中提到的服务帐户,但我仍然遇到同样的错误。 有什么建议可以克服这个错误吗?
【问题讨论】:
-
您的 stackoverflow 问题中可能存在拼写错误,您删除了部分初始化操作标志并将其与 --metadata 标志混合,但我认为这只是此处发布的问题中的拼写错误由于错误消息引用了正确的 init 操作路径,因此您实际运行的命令。
-
我们已经解决了对区域存储桶的权限问题,请重试您的命令。
-
感谢@IgorDvorzhak!做到了。该文件现在具有公共访问权限,并且命令运行正常。
标签: google-cloud-platform gcloud google-cloud-dataproc google-iam