google-cloud-platform - 如何使用特定服务帐户在 Dataproc 集群上提交作业?
问题描述
我正在尝试在 Dataproc 集群中执行作业,这些作业访问 GCP 的多个资源,例如 Google Cloud Storage。
我担心的是通过我的作业创建的任何文件或对象都由 Dataproc 默认用户拥有/创建。
示例 - 123456789-compute@developer.gserviceaccount.com
。
有什么方法可以配置此用户/服务帐户,以便对象由给定的用户/服务帐户而不是默认帐户创建?
解决方案
--service-account
您可以在集群创建时使用标志配置服务帐号以供 Dataproc 集群使用。
Gcloud 命令如下所示:
gcloud dataproc clusters create cluster-name \
--service-account=your-service-account@project-id.iam.gserviceaccount.com
更多详细信息:https ://cloud.google.com/dataproc/docs/concepts/configuring-clusters/service-accounts https://cloud.google.com/dataproc/docs/concepts/iam/iam
注意:每个作业最好有一个 dataproc 集群,这样每个作业都可以得到隔离的环境并且不会相互影响,并且您可以更好地管理它们(在安全性方面也是如此)。
您还可以查看 GCP Composer,您可以使用它来安排作业并使其自动化。
希望这可以帮助。
推荐阅读
- angular - 如何在另一个组件中使用一个组件
- javascript - 希望获得不断变化的 LocalStorage 值
- angular - 安装“npm i angularfire2”时出错
- recharts - 如何为 Rechart 组件创建自定义组件
- hive - hive 是否有任何 api 来检查 sql 但不执行它?
- nativescript - 在 Angular Web 应用程序的同一个打字稿文件中导入 TNS 模块
- javascript - 无法在 setInterval 函数中仅返回一次输出
- mysql - 具有 LIMIT 降序排列的 MySQL 查询不起作用
- asp.net-core - Entity Framework Core:不允许新事务,因为会话中正在运行其他线程
- python - 避免在 Python 中使用尾随换行符