磁盘可以是用于在计算实例上启动和运行操作系统的启动磁盘,也可以是仅供实例用于存储数据的非启动磁盘。
您可以使用快照通过以下方式备份和恢复磁盘数据:
创建启动磁盘或非启动磁盘的快照后,根据快照创建新磁盘。
创建启动磁盘的快照后,根据启动磁盘快照创建新的实例。
创建非启动磁盘的快照后,根据快照创建具有新的非启动磁盘的新实例。
准备工作
-
如果您尚未设置身份验证,请进行设置。身份验证是通过其进行身份验证以访问 Google Cloud 服务和 API 的过程。如需从本地开发环境运行代码或示例,您可以选择以下任一选项向 Compute Engine 进行身份验证:
Select the tab for how you plan to use the samples on this page:
Console
When you use the Google Cloud console to access Google Cloud services and APIs, you don't need to set up authentication.
gcloud
-
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
- Set a default region and zone.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
- Install the Google Cloud CLI.
-
To initialize the gcloud CLI, run the following command:
gcloud init
-
If you're using a local shell, then create local authentication credentials for your user account:
gcloud auth application-default login
You don't need to do this if you're using Cloud Shell.
-
如需通过快照创建磁盘,需要以下权限:
-
针对项目的
compute.disks.create
权限 -
针对实例的
compute.instances.attachDisk
权限 -
针对要挂接的磁盘的
compute.disks.use
权限 -
针对项目的
compute.snapshots.useReadOnly
、compute.snapshots.create
或compute.disks.createSnapshot
权限
-
针对项目的
-
如需通过启动磁盘和非启动磁盘快照创建实例,您至少需要拥有以下权限:
-
针对项目的
compute.instances.create
权限 -
快照的
compute.snapshots.useReadOnly
权限 -
针对项目的
compute.disks.create
权限 -
针对磁盘的
compute.disks.use
权限 -
针对实例的
compute.instances.attachDisk
权限
-
针对项目的
新磁盘的大小至少应与快照最初的来源磁盘的大小相同。如果您创建的磁盘容量大于快照最初的来源磁盘,则必须调整该磁盘上的文件系统大小才能添加额外的磁盘空间。您可能需要使用其他文件系统大小调整工具,具体取决于您的操作系统和文件系统类型。如需了解详情,请参阅操作系统文档。
您可以通过给定快照创建新的可用区磁盘或地区磁盘(每十分钟最多创建一次)。如果您想要发出大量截取磁盘快照的请求,可以在 60 分钟内发出最多 6 个请求。通过快照创建区域磁盘时,此限制不适用。如需了解详情,请参阅快照频率限制。
在 Google Cloud 控制台中,转到快照页面。
找到要恢复的快照的名称。
转到磁盘页面。
点击创建新磁盘。
指定以下配置参数:
- 磁盘的名称。
- 磁盘的类型。
- (可选)您可以覆盖所选的默认区域和地区。 您可以选择任何区域和地区,无论来源快照存储在什么位置。
在来源类型下方,点击快照。
选择要恢复的快照的名称。
选择新磁盘的大小(以 GB 为单位)。此数字必须等于或大于快照最初的来源磁盘大小。
点击创建以创建磁盘。
使用
gcloud compute snapshots list
命令查找要恢复的快照的名称:gcloud compute snapshots list
使用
gcloud compute snapshots describe
命令查找要恢复的快照的大小:gcloud compute snapshots describe SNAPSHOT_NAME
将 SNAPSHOT_NAME 替换为要恢复的快照的名称。
使用
gcloud compute disks create
命令基于快照创建新的区域或可用区磁盘。您可以添加--type
标志来指定要创建的磁盘类型。如需创建可用区磁盘,请执行以下操作:
gcloud compute disks create DISK_NAME \ --size=DISK_SIZE \ --source-snapshot=SNAPSHOT_NAME \ --type=DISK_TYPE
如需创建区域级磁盘,请执行以下操作:
gcloud compute disks create DISK_NAME \ --size=DISK_SIZE \ --source-snapshot=SNAPSHOT_NAME \ --type=DISK_TYPE \ --region=REGION \ --replica-zones=ZONE1,ZONE2
替换以下内容:
- DISK_NAME:新磁盘的名称
- DISK_SIZE:新磁盘的大小(以吉比字节 [GiB] 为单位)。此数字必须等于或大于快照最初的来源磁盘大小。
- SNAPSHOT_NAME:要恢复的快照的名称
- DISK_TYPE:磁盘的类型,例如
pd-ssd
、hyperdisk-throughput
或hyperdisk-balanced-high-availability
- REGION:区域级磁盘所在的区域,例如
europe-west1
- ZONE1,ZONE2:两个磁盘副本所在区域内的可用区,例如
europe-west1-b
和europe-west1-c
可选:使用
gcloud compute instances attach-disk
命令将新磁盘挂接到现有实例:gcloud compute instances attach-disk INSTANCE_NAME \ --disk DISK_NAME
替换以下内容:
- INSTANCE_NAME:实例的名称
- DISK_NAME:根据快照创建的磁盘的名称
构建对
snapshots.list
的GET
请求,以在您的项目中显示快照列表。GET https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/global/snapshots
将 PROJECT_ID 替换为您的项目 ID。
构建
POST
请求以使用相应的disks.insert
方法创建可用区级磁盘或区域级磁盘:- 对于可用区级磁盘:
disks.insert
- 对于区域级磁盘:
regionDisks.insert
请求应包含
name
、sizeGb
和type
属性。如需使用快照恢复磁盘,您必须添加sourceSnapshot
属性。如需创建可用区磁盘,请执行以下操作:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/disks { "name": "DISK_NAME", "sourceSnapshot": "SNAPSHOT_NAME", "sizeGb": "DISK_SIZE", "type": "zones/ZONE/diskTypes/DISK_TYPE" }
如需创建区域级磁盘,请执行以下操作:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/regions/REGION/disks { "name": "DISK_NAME", "sourceSnapshot": "SNAPSHOT_NAME", "region": "projects/PROJECT_ID/regions/REGION", "replicaZones": [ "projects/PROJECT_ID/zones/ZONE1", "projects/PROJECT_ID/zones/ZONE2" ], "sizeGb": "DISK_SIZE", "type": "zones/ZONE/diskTypes/DISK_TYPE" }
替换以下内容:
- PROJECT_ID:您的项目 ID
- ZONE:您的实例和新磁盘所在的地区
- DISK_NAME:新磁盘的名称
- SNAPSHOT_NAME:要恢复的磁盘的来源快照
- REGION:区域级磁盘所在的区域,例如
europe-west1
- ZONE1 和 ZONE2:新磁盘副本应位于的地区
- DISK_SIZE:新磁盘的大小(以吉比字节 [GiB] 为单位)。此数字必须等于或大于快照最初的来源磁盘大小。
- DISK_TYPE:磁盘类型的完整或部分网址,例如
PROJECT_ID/zones/ZONE/diskTypes/pd-ssd
、PROJECT_ID/zones/ZONE/diskTypes/hyperdisk-balanced
或PROJECT_ID/zones/ZONE/diskTypes/hyperdisk-balanced-high-availability
- 对于可用区级磁盘:
可选。将新磁盘挂接到现有实例。
构建一个对
instances.attachDisk
方法的POST
请求,并在其中添加您刚刚基于快照创建的磁盘的网址。对于可用区级磁盘:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/attachDisk { "source": "/compute/v1/projects/PROJECT_ID/zones/ZONE/disks/DISK_NAME" }
对于区域级磁盘:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances/INSTANCE_NAME/attachDisk { "source": "/compute/v1/projects/PROJECT_ID/regions/REGION/disks/DISK_NAME" }
替换以下内容:
- PROJECT_ID:您的项目 ID
- ZONE:您的实例和新磁盘所在的可用区
- REGION:区域级磁盘所在的区域。此值必须与计算实例所在的区域相同。
- INSTANCE_NAME:您要向其中添加新磁盘的实例的名称
- DISK_NAME:新磁盘的名称
在 Google Cloud 控制台中,转到虚拟机实例页面。
选择您的项目并点击继续。
点击创建实例。
为您的实例指定名称。如需了解详情,请参阅资源命名惯例。
可选操作:更改此实例的可用区。如果您选择任意,Google Cloud 会根据机器类型和可用性为您自动选择可用区。
为您的虚拟机选择机器配置。
在启动磁盘部分,点击更改,然后执行以下操作:
- 点击快照标签页。
- 在快照列表中,点击一个快照。
- 指定启动磁盘类型和大小。
- 可选:对于高级配置选项,点击显示高级配置。
- 如需确认您的启动磁盘选项,请点击选择。
在防火墙部分中,如需允许 HTTP 或 HTTPS 流量流向实例,请选择允许 HTTP 流量或允许 HTTPS 流量。
Google Cloud 控制台会向您的实例中添加网络标记,并创建对应的入站防火墙规则,该规则允许
tcp:80
(HTTP) 或tcp:443
(HTTPS) 上的所有传入流量。网络标记可将防火墙规则与实例相关联。如需了解详情,请参阅虚拟私有云文档中的防火墙规则概览。要创建并启动该实例,请点击创建。
- 只能将一个磁盘用作启动磁盘。
- 必须将启动磁盘作为该实例的第一个磁盘挂接。
- 如果您指定了
source
属性,则不能同时指定initializeParams
属性。提供source
表示启动磁盘已存在,但initializeParams
属性指示 Compute Engine 应创建新的启动磁盘。 PROJECT_ID
:您的项目 IDZONE
:您要在其中创建新实例的可用区INSTANCE_NAME
:您要将快照恢复到的虚拟机的名称MACHINE_TYPE
:实例的机器类型BOOT_SNAPSHOT_NAME
:您要用于创建新实例启动磁盘的快照的名称BOOT_DISK_SIZE
(可选):新启动磁盘的大小(以吉比字节 [GiB] 为单位)该大小必须等于或大于用于创建快照的来源磁盘的大小。
BOOT_DISK_TYPE
(可选):启动磁盘的类型,例如PROJECT_ID/zones/ZONE/diskTypes/pd-ssd
或PROJECT_ID/zones/ZONE/diskTypes/hyperdisk-balanced
PROJECT_ID
:您的项目 IDZONE
:要在其中创建实例的可用区的名称INSTANCE_NAME
:实例的名称BOOT_SNAPSHOT_NAME
:启动磁盘快照的名称REMOTE_ZONE
:区域磁盘的远程可用区BOOT_DISK_TYPE
(可选):启动磁盘的类型,例如PROJECT_ID/zones/ZONE/diskTypes/pd-ssd
或PROJECT_ID/zones/ZONE/diskTypes/hyperdisk-balanced-high-availability
将每个非启动快照恢复到新磁盘。
在 Google Cloud 控制台中,转到磁盘页面。
点击创建磁盘。
指定磁盘的名称。如需了解详情,请参阅资源命名惯例。
选择此磁盘的区域和地区。 对于可用区级磁盘,磁盘和实例必须位于同一可用区;对于区域级磁盘,磁盘和实例必须位于同一区域。
选择磁盘类型。
在来源类型下,选择快照。
在新的来源快照字段下,选择要恢复到新磁盘的非启动快照。
如需创建磁盘,请点击创建。
重复上述步骤,根据要恢复的每个快照创建磁盘。
在 Google Cloud 控制台中,前往虚拟机实例页面。
选择您的项目并点击继续。
点击创建实例。
为您的实例指定名称。如需了解详情,请参阅资源命名惯例。
为此实例选择区域和可用区。对于可用区级磁盘,磁盘和实例必须位于同一可用区;对于区域级磁盘,磁盘和实例必须位于同一区域。
为您的实例选择机器类型。
如果要允许传入的外部流量,请更改实例的防火墙规则。
如需将磁盘挂接到实例,请展开高级选项部分,然后执行以下操作:
- 展开磁盘部分。
- 点击挂接现有磁盘。
- 在磁盘列表中,选择要挂接到此实例的磁盘。
- 在挂接设置部分中,选择磁盘的挂接模式和删除规则。如需详细了解如何添加新磁盘,请参阅 添加永久性磁盘或 添加 Hyperdisk。
- 点击保存。
针对您要挂接的每个磁盘,重复上述步骤。
要创建并启动该实例,请点击创建。
- 启动磁盘只能有一个。
- 必须将启动磁盘作为该实例的第一个磁盘挂接。
- 如果您指定了
source
属性,则不能同时指定initializeParams
属性。提供source
表示启动磁盘已存在,但initializeParams
属性指示 Compute Engine 应创建新的启动磁盘。 PROJECT_ID
:您的项目 IDZONE
:您要创建实例的区域INSTANCE_NAME
:新实例的名称MACHINE_TYPE
:实例的机器类型DISK_SIZE
(可选):相应磁盘的大小(以吉比字节 [GiB] 为单位)如果提供此属性,则它必须等于或大于用于创建快照的来源磁盘的大小。
DISK_TYPE
(可选):相应磁盘的类型的完整或部分网址,例如PROJECT_ID/zones/ZONE/diskTypes/pd-ssd
或PROJECT_ID/zones/ZONE/diskTypes/hyperdisk-balanced
IMAGE_PROJECT
:包含映像的项目。例如:debian-cloud
IMAGE_FAMILY
:映像系列。此项会通过该系列中最新的未弃用的操作系统映像创建实例。例如,如果您指定"sourceImage": "projects/debian-cloud/global/images/family/debian-11"
,则 Compute Engine 会使用 Debian 11 映像系列中最新版本的操作系统映像创建实例。DEVICE_NAME
:可选:实例的客机操作系统中显示的设备名称SNAPSHOT_NAME
:您要恢复到实例上新磁盘的相应非启动磁盘快照的名称
Go
如需在本地开发环境中使用本页面上的 Go 示例,请安装并初始化 gcloud CLI,然后使用您的用户凭据设置应用默认凭据。
如需了解详情,请参阅 Set up authentication for a local development environment。
Java
如需在本地开发环境中使用本页面上的 Java 示例,请安装并初始化 gcloud CLI,然后使用您的用户凭据设置应用默认凭据。
如需了解详情,请参阅 Set up authentication for a local development environment。
Node.js
如需在本地开发环境中使用本页面上的 Node.js 示例,请安装并初始化 gcloud CLI,然后使用您的用户凭据设置应用默认凭据。
如需了解详情,请参阅 Set up authentication for a local development environment。
Python
如需在本地开发环境中使用本页面上的 Python 示例,请安装并初始化 gcloud CLI,然后使用您的用户凭据设置应用默认凭据。
如需了解详情,请参阅 Set up authentication for a local development environment。
REST
如需在本地开发环境中使用本页面上的 REST API 示例,请使用您提供给 gcloud CLI 的凭据。
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
如需了解详情,请参阅 Google Cloud 身份验证文档中的使用 REST 时进行身份验证。
所需的角色
如需获得从快照进行恢复所需的权限,请让您的管理员为您授予项目的 Compute Instance Admin (v1) (
roles/compute.instanceAdmin.v1
) IAM 角色。如需详细了解如何授予角色,请参阅管理对项目、文件夹和组织的访问权限。此预定义角色可提供从快照进行恢复所需的权限。如需查看所需的确切权限,请展开所需权限部分:
所需权限
使用快照进行恢复需要以下权限:
限制
根据快照创建磁盘,(可选)并将其挂接到实例
如果您使用快照备份了启动磁盘或非启动磁盘,则可以根据该快照创建新磁盘。
控制台
(可选)然后,您可以将非启动磁盘挂接到实例。
gcloud
Go
Go
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Go 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Go API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Java
Java
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Java 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Java API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
Node.js
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Node.js 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Node.js API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
Python
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Python 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Python API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
REST
创建新磁盘并将其挂接到实例后,您必须装载该磁盘,以便操作系统可以使用可用的存储空间。
通过现有磁盘创建实例
您可以通过快照创建启动磁盘和数据磁盘,然后将这些磁盘挂接到新的计算实例。
Go
Go
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Go 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Go API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Java
Java
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Java 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Java API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
Node.js
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Node.js 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Node.js API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
Python
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Python 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Python API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
通过启动磁盘快照创建实例
如果您创建了计算实例启动磁盘的快照,则可以使用该快照创建新实例。
如需创建具有通过快照创建的区域级启动磁盘的计算实例,请使用 Google Cloud CLI 或 REST。
控制台
gcloud
可用区启动磁盘
使用
gcloud compute instances create
命令并添加--source-snapshot
标志:gcloud compute instances create INSTANCE_NAME
--source-snapshot=BOOT_SNAPSHOT_NAME
--boot-disk-size=BOOT_DISK_SIZE
--boot-disk-type=BOOT_DISK_TYPE
--boot-disk-device-name=BOOT_DISK_NAME替换以下内容:
区域启动磁盘
使用
gcloud compute instances create
命令并在source-snapshot
、replica-zones
和boot
属性中添加--create-disk
标志。gcloud compute instances create INSTANCE_NAME
--zone=ZONE
--create-disk=^:^name=DISK_NAME:source-snapshot=BOOT_SNAPSHOT_NAME:boot=true:type=BOOT_DISK_TYPE:replica-zones=ZONE,REMOTE_ZONE字符
^:^
指定使用英文冒号:
作为各个磁盘属性之间的分隔符。这是必需的,以便您在为replica-zones
指定可用区时使用英文逗号,
。替换以下内容:
Go
Go
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Go 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Go API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Java
Java
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Java 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Java API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Node.js
Node.js
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Node.js 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Node.js API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
Python
Python
试用此示例之前,请按照《Compute Engine 快速入门:使用客户端库》中的 Python 设置说明进行操作。 如需了解详情,请参阅 Compute Engine Python API 参考文档。
如需向 Compute Engine 进行身份验证,请设置应用默认凭据。 如需了解详情,请参阅为本地开发环境设置身份验证。
REST
当您使用 API 根据快照创建实例时,需要遵循以下限制:
可用区启动磁盘
如需根据启动磁盘快照创建实例,请使用instances.insert
方法,并在disks
属性下指定sourceSnapshot
字段。您可以选择为新启动磁盘指定diskSizeGb
和diskType
属性。 替换以下内容:POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "INSTANCE_NAME", "machineType": "machineTypes/MACHINE_TYPE", "disks": [{ "boot": true, "initializeParams": { "sourceSnapshot": "global/snapshots/BOOT_SNAPSHOT_NAME", "diskSizeGb": "BOOT_DISK_SIZE", "diskType": "BOOT_DISK_TYPE" } }], "networkInterfaces": [ { "nicType": "GVNIC" } ] }
区域启动磁盘
如需使用启动磁盘快照作为来源创建具有区域级启动磁盘的计算实例,请使用instances.insert
方法,并在disks
属性中指定sourceSnapshot
和replicaZones
字段。POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "INSTANCE_NAME", "disks": [ { "boot": true, "initializeParams": { "sourceSnapshot": "global/snapshots/BOOT_SNAPSHOT_NAME", "replicaZones": [ "projects/PROJECT_ID/zones/ZONE", "projects/PROJECT_ID/zones/REMOTE_ZONE" ], "diskType": "BOOT_DISK_TYPE" } } ], "networkInterfaces": [ { "nicType": "GVNIC" } ] }
替换以下内容:
通过非启动磁盘快照创建计算实例
如果您使用快照备份了非启动磁盘,则可以根据该快照创建具有额外非启动磁盘的实例。
控制台
从控制台将非启动快照恢复到新实例时,首根据每个快照创建一个磁盘。然后,在创建实例时挂接新磁盘。
gcloud
使用
gcloud compute instances create
命令创建实例。对于要恢复的每个非启动快照,请添加--create-disk
标志并指定source-snapshot
。例如,如需将两个非启动磁盘的快照恢复到新实例,请使用以下命令:
gcloud compute instances create INSTANCE_NAME \ --create-disk source-snapshot=SNAPSHOT_1_NAME,name=DISK_1_NAME,size=DISK_1_SIZE,type=DISK_1_TYPE \ --create-disk source-snapshot=SNAPSHOT_2_NAME,name=DISK_2_NAME,size=DISK_2_SIZE,type=DISK_2_TYPE
替换以下内容:
REST
使用 REST 将非启动快照恢复到新实例时,需要遵循以下限制:
创建一个向
instances.insert
方法发出的POST
请求,并在initializeParams
属性下指定sourceSnapshot
字段。通过为要创建的每个非启动磁盘重复initializeParams
属性,您可以添加多个非启动磁盘。对于您创建的任何磁盘,您可以选择指定diskSizeGb
和diskType
属性。例如,如需将两个非启动磁盘快照恢复到新实例,请发出以下请求:
POST https://compute.googleapis.com/compute/v1/projects/PROJECT_ID/zones/ZONE/instances { "name": "INSTANCE_NAME", "machineType": "machineTypes/MACHINE_TYPE", "networkInterfaces": [ { "nicType": "GVNIC" } ], "disks": [ { "autoDelete": "true", "boot": "true", "diskSizeGb": "BOOT_DISK_SIZE", "diskType": "BOOT_DISK_TYPE", "initializeParams": { "sourceImage": "projects/IMAGE_PROJECT/global/images/family/IMAGE_FAMILY" } }, { "deviceName": "DEVICE_1_NAME", "initializeParams": { "sourceSnapshot": "global/snapshots/SNAPSHOT_1_NAME", "diskSizeGb": "DISK_1_SIZE", "diskType": "DISK_1_TYPE" } }, { "deviceName": "DEVICE_2_NAME", "initializeParams": { "sourceSnapshot": "global/snapshots/SNAPSHOT_2_NAME", "diskSizeGb": "DISK_2_SIZE", "diskType": "DISK_2_TYPE" } } ] }
替换以下内容:
如未另行说明,那么本页面中的内容已根据知识共享署名 4.0 许可获得了许可,并且代码示例已根据 Apache 2.0 许可获得了许可。有关详情,请参阅 Google 开发者网站政策。Java 是 Oracle 和/或其关联公司的注册商标。
最后更新时间 (UTC):2024-12-22。
-