【问题标题】:How to set up ray project autoscaling on GCP如何在 GCP 上设置射线项目自动缩放
【发布时间】:2019-07-31 03:10:39
【问题描述】:

我在谷歌云计算上设置光线自动缩放时遇到了很大的困难。我可以让它在 AWS 上运行没问题,但是在运行 ray up 时我一直遇到以下错误:

googleapiclient.errors.HttpError: https://cloudresourcemanager.googleapis.com/v1/projects?alt=json 返回“服务帐户无法在没有父级的情况下创建项目。”

我的项目是一个组织的一部分,所以我不明白这是从哪里来的,或者为什么它首先需要创建一个项目。我已经在 yaml 文件中输入了我的项目 ID,就像我通常为 AWS 所做的那样。

非常感谢。我很感激我能得到任何帮助!

【问题讨论】:

    标签: google-cloud-platform ray


    【解决方案1】:

    引用服务帐户的错误消息以及该项目已经存在的事实表明,Ray Autoscaler 使用的 googlecloudapiclient 已针对无权访问该项目的服务帐户进行了身份验证。

    如果这是真的,那么这就是我认为会发生的事情。通常,在运行 Ray GCP Autoscaler 时,它会首先检查具有给定 id 的项目是否存在。在您的情况下,此请求返回“未找到”,因为没有具有与服务帐户关联的给定 ID 的项目。现在,由于该项目不存在,Ray 会自动尝试为您创建一个。通常,如果我们使用用户帐户(即非服务帐户)创建新的 GCP 项目,则新创建的项目将与用户帐户的默认组织相关联。但是,服务帐户必须在创建新项目时明确指定父组织。如果我们查看 ray.autoscaler.config._create_project 函数,我们会看到传递给 projects.create 方法的参数省略了“父”参数,这就解释了为什么会出现错误。

    要验证这是否属实(并希望能解决问题),您可以更改用于通过 googlecloudapiclient 进行身份验证的帐户。我相信用于 googlecloudapiclient 请求的凭据与 Google Cloud SDK 使用的凭据相同,因此您应该能够使用 gcloud auth login 命令配置帐户。

    我认为 Ray Autoscaler 可以通过允许用户在创建新项目时明确指定父组织,或者至少通过为这种特殊情况提供更详细的错误消息来改进。

    我希望这能解决您的问题。如果没有,并且您认为这是 Autoscaler 的问题,请随时向 Ray Issues page 提出问题或功能请求!

    【讨论】:

      猜你喜欢
      • 2021-06-14
      • 1970-01-01
      • 2021-01-06
      • 1970-01-01
      • 2023-02-01
      • 2017-05-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多