如何创建位于亚洲、欧盟、美国地区的磁盘映像?

如何创建位于亚洲、欧盟、美国地区的磁盘映像?

Google Cloud Platform 的多个预构建磁盘映像的位置设置为亚洲、欧盟、美国

预先构建了包含亚洲、欧盟、美国位置的图像

但是,我无法将位置设置为亚洲、欧盟、美国用于我自己的磁盘映像

文档gcloud compute images create说:

--storage-location=LOCATION

指定要存储图片内容的 Cloud Storage 位置(区域或多区域)。如果未指定,则会自动选择最靠近源的多区域位置。

但是,使用该--storage-location=标志,我只能将其设置为单个多区域,例如我们

语境

我想避免洲际出口每次我使用在美国地区创作的磁盘映像启动欧洲或亚洲的虚拟机时,我都会支付费用。相反,我希望在创作磁盘映像时支付一次洲际出口费用,然后每次启动虚拟机时享受相同区域/相同区域出口定价。

答案1

一个好的解决方法是创建磁盘快照并将其保存在不同区域,然后您可以使用它们从快照启动新的虚拟机。因此,本质上,您需要对现有虚拟机进行快照并将其保存在不同区域。完成后,您可以转到保存在不同区域的快照并从快照创建实例,从而消除跨区域出口。请查看此文档以获取进一步的说明[1]

[1]https://cloud.google.com/compute/docs/disks/create-snapshots

答案2

不可以。图像位于 GCS 存储桶中,其位置仅限于存储桶可分配到的区域和多区域。

创建自定义图像

选择图像存储位置

创建自定义镜像时,您可以指定镜像的云储存位置,不包括双区域位置。通过指定镜像存储位置,您可以满足数据本地性的法规和合规性要求,并通过确保跨区域冗余来满足高可用性需求。

存储位置功能是可选的。如果您不选择位置,Compute Engine 会将您的图片存储在距离图片源最近的多区域中。

答案3

Google 计算图像创建 API端点接受字符串列表,但经过验证仅允许 1 个项目。如果您尝试传递多个位置,则会收到 400 响应并显示以下错误消息。

{
  "message": "Value for field 'resource.storageLocations' is too large: maximum size 1 element(s); actual size 2.",
  "domain": "global",
  "reason": "fieldSizeTooLarge"
}

相关内容