【问题标题】:GCP Dataflow There was a problem refreshing your credentialsGCP 数据流刷新您的凭据时出现问题
【发布时间】:2020-04-15 18:27:54
【问题描述】:

我正在尝试使用 Gradle 在 Java 中创建数据流。我创建了一个 gradle 任务,通过 DataflowRunner 将作业上传到 GCP,并通过 environment "GOOGLE_APPLICATION_CREDENTIALS", "....json" 设置我的凭据,但是当我查看作业时,我看到的只是:

Workflow failed. Causes: There was a problem refreshing your credentials. Please check: 
1. Dataflow API is enabled for your project. 
2. There is a robot service account for your project: 
service-[project number]@dataflow-service-producer-prod.iam.gserviceaccount.com 
should have access to your project. 
If this account does not appear in the permissions tab for your project, contact Dataflow support.

我已经确保为我的项目启用了数据流 API,并且服务帐户存在并且具有 editor 和 Cloud Dataflow Service Agent 角色。我已经用我的代码和getting started 页面上的示例代码进行了测试,同样的问题。

【问题讨论】:

  • 嗨,Ben,很高兴见到你。你寻求关于失败的毕业工作的建议?在您的问题中包含您使用的来源(显然没有凭据),您获得答案的机会就会增加
  • gradle 任务成功,但作业在 GCP Dataflow 上开始运行时失败。我只是按照数据流上的代码和步骤quickstart

标签: java google-cloud-platform google-cloud-dataflow apache-beam


【解决方案1】:

如果 Google Cloud 项目中的 Compute Engine 默认服务帐号被禁用,则会触发此问题:

状态应显示绿色勾号。

【讨论】:

    【解决方案2】:

    当您在新的 GCP 项目中首次使用 Dataflow 时,您需要启用 API(快速入门中的第 3 步),这可能需要几分钟时间。在此步骤中,会创建几个 service accounts:

    Cloud Dataflow 服务帐号: service-<project-number>@dataflow-service-producer-prod.iam.gserviceaccount.com。

    控制器服务帐号: <project-number>-compute@developer.gserviceaccount.com.

    第一个帐户是错误中的帐户。我认为您尚未启用 Dataflow API,或者您在启用 API 时执行了作业。正如您所提到的,您验证了这一点,下一步是检查默认服务帐户是否已修改,例如,它们是否已重新创建或默认权限已更改。这些修订也适用于 Controller 服务帐号。

    另外,请不要忘记将the proper permissions 分配给执行数据流作业的帐户。

    更新:

    如果问题仍然存在,则可能是服务帐户以某种方式损坏,在这种情况下,建议使用新的服务帐户或Contact Cloud Support创建一个新的 GCP 项目。

    【讨论】:

    • 感谢您的帮助!嗯,我看到了Cloud Dataflow service account,但是我没有看到Controller service account
    • 您能否检查Compute Engine API 是否已启用(链接中的第 3 步)?默认情况下,当您启用 Compute Engine API 时会创建默认 Controller 服务帐号。有没有可能被删了?
    • 是的,Compute Engine API 已启用。我想我看到了,它的模式是service-<project-number>@compute-system.iam.gserviceaccount.com
    • 我是否缺少 Dataflow 服务帐户的任何权限?我有Compute Viewer、Dataflow Admin、Dataflow Developer、Cloud Dataflow Service Agent、Owner、Pub/Sub Admin、Storage Admin 和 Storage Object Admin
    • 您提到您正在关注QuickStart 并且您遇到了同样的问题,在新项目中遵循相同的指南的结果是什么?由于即使在上述验证之后问题仍然存在,我认为服务帐户发生了一些事情,通过此测试,我们将能够缩小问题范围。在一个新项目中,我能够执行快速入门中描述的作业示例。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-08-01
    • 2019-06-08
    • 2021-06-13
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多