使用脚本在GCP中拍摄快照

时间:2017-12-07 13:31:18

标签: google-compute-engine

我需要在GCP的所有项目中从脚本中获取所有服务器的快照。

项目数:10

每个项目的服务器:05

将脚本写入服务器:自动化服务器

脚本有:

gcloud compute --project $PROJECT_ID disks snapshot ${DEVICE_NAME} --snapshot-names gcp-${DEVICE_NAME}-${DATE} --zone ${INSTANCE_ZONE})

截至目前,我已在服务器X中配置了我的电子邮件 ID 与gcloud auth (我的电子邮件ID可以访问我的所有项目,以便我能够拍摄所有服务器的快照) 所以我可以通过脚本来做同样的事情。

我希望不要通过用户身份验证(提及电子邮件ID)来执行此操作。

是否有可能通过任何应用程序或使用任何api-key等进行上述操作.., 通过授予对应用程序或api-key的所有项目的访问权限并使用它,从脚本中获取快照

这将用于:

如果用户X可以访问5个项目,并且用户Y可以访问另一组5个项目。

需要使用脚本为所有10个项目拍摄快照 此时如果gcloud auth是通过应用程序或api-key等完成的,

是否可能或以任何其他方式处理上述情况

1 个答案:

答案 0 :(得分:1)

这是可能的:

  1. 在云项目中创建service account
  2. 转到您的10个项目中的每个项目,并授予服务帐户“Editor”,“compute.instanceAdmin”或“compute.storageAdmin”IAM权限。
  3. 在脚本中使用gcloud auth activate-service-account让脚本作为服务帐户运行。
  4. 您还可以为不同的项目使用多个服务帐户,并在。

    之间切换