【问题标题】:Access buckets across projects in gcp using hive使用 hive 在 gcp 中跨项目访问存储桶
【发布时间】:2019-04-25 21:03:52
【问题描述】:

我的 gcp 帐户上有两个项目,它们都有存储桶。 在其中一个项目中,我有一个运行 hive 的 dataproc 集群。 从这个配置单元,我想访问另一个项目的存储桶。 我已经尝试为我的存储桶授予 ACL 权限,但是当我从 hive 执行 create table 命令时仍然收到错误消息:

失败:执行错误,从 org.apache.hadoop.hive.ql.exec.DDLTask 返回代码 1。 MetaException(message:Got exception: java.io.IOException Error access: bucket: bucketname, object: folder/filename.

如何使用 hive 访问我的存储桶?

【问题讨论】:

  • 你看过文档了吗?它可能有你要找的东西:cloud.google.com/dataproc/docs/concepts/connectors/…
  • Dataproc 服务帐号名称@[YOUR_PROJECT_ID].iam.gserviceaccount.com 是否对该存储分区具有正确的权限?
  • @MonicaPC 我必须将存储桶中的准确权限授予我的服务帐户。
  • @Sneha K 我很高兴它成功了。您能否发布您的问题的答案,以造福社区?

标签: hadoop hive google-cloud-platform google-cloud-storage


【解决方案1】:

按照建议,我使用了预装在 dataproc 集群中的谷歌云连接器。

https://cloud.google.com/dataproc/docs/concepts/connectors/install-storage-connector

步骤很精确,但除此之外,我还必须将存储桶中的 apt 角色添加到我的服务帐户。

https://cloud.google.com/storage/docs/access-control/iam-roles

然后它起作用了。

【讨论】:

  • 您能否具体说明您添加了哪些角色?即使我的服务帐户处于 Storage Admin 角色,我也面临同样的问题。
  • 我赋予了存储阅读器的角色。此外,请确保将 VM 配置为可以访问 Cloud Storage 范围。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2020-12-18
  • 2017-08-15
  • 1970-01-01
  • 2021-06-28
  • 1970-01-01
  • 1970-01-01
  • 2017-02-12
相关资源
最近更新 更多