0

在新的 GKE 集群上安装 Kubeflow 0.7 后(通过https://deploy.kubeflow.cloud),我已经根据各自的教程配置了 OAuth 和 Workload Identity。

在我的管道上,我必须从同一个项目访问 GCS 存储桶,而且我似乎无权访问此操作。

但是,集群确实有权访问 GCR,并且存储权限确实下载和挂载 Docker 映像并运行代码。当代码请求时,它无法从其他存储桶下载,即使这些存储桶在同一个项目中也是如此。

该代码使用默认的身份验证方法:

storage_client = storage.Client(project_id)
bucket = storage_client.get_bucket(bucket)

有没有人知道如何通过访问 BigQuery 来解决和防止这种情况发生(将在下载这些文件后访问)

google.api_core.exceptions.Forbidden: 403 GET https://storage.googleapis.com/storage/v1/b/$BUCKET?projection=noAcl Primary: /namespaces/$PROJECT_ID.svc.id.goog with additional claims does not have storage.buckets.get access to $BUCKET.
4

1 回答 1

0

好的,所以对于任何有类似问题的人。我忘了在代码中添加以下代码段step.apply(gcp.use_gcp_secret('user-gcp-sa'))

这甚至适用于kfp.components.load_component_from_file()

多亏了 kubeflow slack 频道的出色人员,才知道这一点!

于 2020-03-17T11:53:25.003 回答