【问题标题】:Google Cloud Scheduler - Automating all projectsGoogle Cloud Scheduler - 自动化所有项目
【发布时间】:2020-01-17 05:07:57
【问题描述】:

为了降低 GCP 的成本,我想在人们离开办公室时关闭当前正在运行的虚拟机。这在单个项目中很容易做到,但我的问题是,是否可以将其扩展到我可用的所有项目?

例如,我可以定义这些函数来启动和停止项目中的虚拟机,并使用云调度程序来实现我想要的。但是在我的组织中,有很多项目一直被创建和删除,所以单独这样做似乎是一种浪费。

感谢任何帮助。

【问题讨论】:

  • 是的,您可以这样做。将服务帐户分配给正在关闭实例的服务(Cloud Functions?)以对每个项目拥有权限。创建每个项目的列表。如果这些项目在同一个组织下,您可以扫描组织中的所有项目。
  • 是的,您还可以将服务帐户角色授予组织级别或文件夹级别。像这样,您的函数可以查看(列出 VM)和关闭所有项目中的所有内容。请注意,如果您有生产项目,请在搜索要排除的 VM 时使用排除某些项目的标签。

标签: google-cloud-platform


【解决方案1】:

是的,您可以使用 Cloud Scheduler 轻松做到这一点。

您可以在 Cloud Scheduler 中使用目标 HTTP Method 来执行此操作,您可以使用具有完整功能的特定或特定服务帐户添加 Auth Header(添加 OAuth 令牌)访问权限。

然后你可以使用 Compute Engine API 来做。

例子:

用您的计算引擎值参数替换下面的换行文本

  • 停止 Compute Engine:

目标:HTTP
HTTP 方法:POST
网址:https://compute.googleapis.com/compute/v1/projects/**your-project-name**/zones/**your-instance-zone**/instances/**your-instance-name**/stop

  • 启动 Compute Engine:

目标:HTTP
HTTP 方法:POST
网址:https://compute.googleapis.com/compute/v1/projects/**your-project-name**/zones/**your-instance-zone**/instances/**your-instance-name**/start


您可以在此处阅读完整示例 https://www.nuslab.com/2020/07/start-shutdown-compute-engine-with-cloud-scheduler-gcp.html

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2014-10-31
    • 1970-01-01
    • 2019-04-10
    • 2021-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多