如何通过标签将快照策略附加到我的项目中的所有虚拟机?

如何通过标签将快照策略附加到我的项目中的所有虚拟机?

我已经创建了带有标签“每日”、“每周”、“每小时”的快照计划策略。但我想要一种自动化的方式,因此每当我创建虚拟机时,都应将基于标签的策略分配给虚拟机。或者

每当我创建新的虚拟机并且快照直接保存到存储桶时,是否自动将我的调度程序附加到虚拟机磁盘?

有人有这个任务的自动化脚本吗?

提前致谢 !

答案1

如果您想将快照计划策略附加到所有虚拟机,您可以运行下面提到的脚本:

#!/bin/bash
# loop through all disks within this project  and add snapshot schedule policy to all the VM’s
gcloud compute disks list | tail -n +2 | while read DISK_NAME ZONE c3 c4; do
gcloud compute disks add-resource-policies $DISK_NAME --resource-policies=ss-01 --zone $ZONE
done

但是,如果你想要自动化快照计划和快照创建操作,你可以按照文章这里。目前,如果您想将实例启动盘数据移动到 Google 云存储,您可以将启动盘映像导出到云存储作为 tar.gz 文件,该文件提到这里

答案2

您可以将快照导出到存储桶,但是您无法将快照直接导出到 gcp 存储桶。请按照以下步骤将快照导出到存储桶:

  1. 根据快照创建图像
  2. 创建存储桶并复制存储桶 URL,然后使用以下命令导出图像:
gcloud alpha compute images export --destination-uri gs://test_buk04/testimage.vmdk --image expo-test-image --export-format vmdk --project yourprojectid

相关内容