

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 使用恢复虚拟机 AWS Backup
<a name="restoring-vm"></a>

您可以将虚拟机还原到 VMware Cloud on VMware AWS、C VMware loud on AWS Outposts、Amazon EBS 卷或 [Amazon EC2 实例](https://docs.aws.amazon.com/aws-backup/latest/devguide/restoring-ec2.html)。将虚拟机还原（或迁移）到 EC2 需要具有许可证。默认情况下， AWS 将包括许可证（收费）。有关更多信息，请参阅《*虚拟机 Import/Export 用户指南*》中的[许可选项](https://docs.aws.amazon.com/vm-import/latest/userguide/licensing.html)。

您可以使用 AWS Backup 控制台或通过恢复 VMware 虚拟机 AWS CLI。恢复虚拟机时，不包括 VMware 工具文件夹。请参阅 VMware文档以重新安装 T VMware ools。

AWS Backup 虚拟机的恢复是非破坏性的，这意味着在还原期间 AWS Backup 不会覆盖现有的虚拟机。还原作业会部署新的虚拟机。

**Topics**
+ [将虚拟机还原到 Amazon EC2 实例时的注意事项](#vm-restore-ec2)
+ [使用 AWS Backup 控制台恢复虚拟机恢复点](#vm-restore-console)
+ [用于 AWS CLI 恢复虚拟机恢复点](#vm-restore-cli)

## 将虚拟机还原到 Amazon EC2 实例时的注意事项
<a name="vm-restore-ec2"></a>
+ 将虚拟机还原（或迁移）到 EC2 需要具有许可证。默认情况下， AWS 将包括许可证（收费）。有关更多信息，请参阅《*虚拟机 Import/Export 用户指南*》中的[许可选项](https://docs.aws.amazon.com/vm-import/latest/userguide/licensing.html)。
+ 每个虚拟机磁盘的最大限制为 5 TB（太字节）。
+ 将虚拟机还原到实例时，无法指定密钥对。您可以在启动期间（通过实例用户数据）或启动后向 `authorized_keys` 添加密钥对（如《Amazon EC2 用户指南》中的[此故障排除部分](https://docs.aws.amazon.com/AWSEC2/latest/UserGuide/TroubleshootingInstancesConnecting.html#replacing-lost-key-pair)所述）。
+ 在*虚拟机 Import/Export 用户指南中确认您的[操作系统支持](https://docs.aws.amazon.com/vm-import/latest/userguide/prerequisites.html#vmimport-operating-systems)从 Amazon EC2 导入和导*出。
+ 在虚拟机* Import/Export 用户指南*中查看[将虚拟机导入到 Amazon EC2](https://docs.aws.amazon.com/vm-import/latest/userguide/prerequisites.html#limitations-image) 所涉及的限制。
+ 使用恢复到 Amazon EC2 实例时 AWS CLI，必须指定`"RestoreTo":"EC2Instance"`。所有其他属性均有默认值。
+ 亚马逊 EC2 提供 [EC2 允许 AMIs](https://docs.aws.amazon.com//AWSEC2/latest/UserGuide/ec2-allowed-amis.html)。如果您的账户启用了此设置，请将别名 `aws-backup-vault` 添加到您的允许列表中。否则，将虚拟机恢复点还原到 EC2 实例的操作将失败，并显示一条错误消息，例如“在区域中找不到源 AMI”。
+ 不支持 VMware 恢复到 EC2 中涉及超过 21 个磁盘。解决方法是，使用 “还[VMware 原到 EBS](https://docs.aws.amazon.com//aws-backup/latest/devguide/restoring-vm.html#restore-vm-ebs)” 将每个磁盘单独还原为 EBS 卷，然后将 EBS 卷连接到 EC2 实例。

## 使用 AWS Backup 控制台恢复虚拟机恢复点
<a name="vm-restore-console"></a>

您可以在控制台的左侧导航窗格中从多个位置恢复虚拟 AWS Backup 机：
+ 选择**管理程序**可查看由连接到 AWS Backup的管理程序管理的虚拟机的恢复点。
+ 选择**虚拟机**可查看连接到 AWS Backup的所有管理程序中的虚拟机的恢复点。
+ 选择 **Backup Vaul** ts 可查看存储在特定保 AWS Backup 管库中的恢复点。
+ 选择 “**受保护的资源**”，查看所有 AWS Backup 受保护资源的恢复点。

如果您需要还原不再与 Backup Gateway 有连接的虚拟机，请选择**备份保管库**或**受保护的资源**以查找恢复点。

**选项**
+ [还原到 VMware](#restore-vm-vmware)
+ [还原到 Amazon EBS 卷](#restore-vm-ebs)
+ [还原到 Amazon EC2 实例](#restore-vm-ec2)<a name="restore-vm-vmware"></a>

**要将虚拟机还原到 VMware，请开 VMware 启云端 AWS，开 VMware 启云端 AWS Outposts**

1. 在**管理程序**或**虚拟机**视图中，选择要还原的**虚拟机名称**。在**受保护的资源**视图中，选择要还原的虚拟机**资源 ID**。

1. 选择要还原的**恢复点 ID** 旁边的单选按钮。

1. 选择**还原**。

1. 选择**还原类型**。

   1. **完整还原**还原所有虚拟机的磁盘。

   1. **磁盘级还原**还原用户定义的一个或多个磁盘。使用下拉菜单选择要还原的磁盘。

1. 选择**还原位置**。选项是 **VMware**“**VMware 云开启” AWS** 和 “**VMware 云开启” AWS Outposts**。

1. 如果您要进行完整还原，请跳到下一步。如果您要执行磁盘级还原，则在**虚拟机磁盘**下会有一个下拉菜单。选择要还原的一个或多个可启动卷。

1. 从下拉菜单中选择**管理程序**以管理还原后的虚拟机。

1. 对于还原后的虚拟机，请使用贵组织的虚拟机最佳实践指定其：

   1. **名称**

   1. **路径**（例如 `/datacenter/vm`）

   1. **计算资源名称**（例如 VMHost 或集群）

      如果主机是集群的一部分，则无法还原到该主机，只能还原到给定的集群。

   1. **数据存储**

1. 对于**还原角色**，使用下拉菜单选择**默认角色**（推荐）或**选择 IAM 角色**。

1. 选择**还原备份**。

1. *可选*：检查您的还原作业何时处于状态 `Completed`。在左导航窗格中，选择**作业**。<a name="restore-vm-ebs"></a>

**将虚拟机还原到 Amazon EBS 卷**

1. 在**管理程序**或**虚拟机**视图中，选择要还原的**虚拟机名称**。在**受保护的资源**视图中，选择要还原的虚拟机**资源 ID**。

1. 选择要还原的**恢复点 ID** 旁边的单选按钮。

1. 选择**还原**。

1. 选择**还原类型**。

   1. **磁盘还原**可还原用户定义的一个磁盘。使用下拉菜单选择要还原的磁盘。

1. 选择**还原位置**为 **Amazon EBS**。

1. 在**虚拟机磁盘**下拉菜单下，选择要还原的可启动卷。

1. 在 **EBS 卷类型**下，选择卷类型。

1. 选择您的可用区。

1. 加密（可选）。如果您选择加密 EBS 卷，请选中该复选框。

1. 从菜单中选择您的 KMS 密钥。

1. 对于**还原角色**，选择**默认角色**（推荐）或**选择 IAM 角色**。

1. 选择**还原备份**。

1. *可选*：检查您的还原作业何时处于状态 `Completed`。在左导航窗格中，选择**作业**。

1. *可选*：访问[如何使用 LVM 在 EBS 卷的分区上创建逻辑卷？](https://repost.aws/knowledge-center/create-lv-on-ebs-partition)，详细了解如何挂载托管卷和访问还原的 Amazon EBS 卷上的数据。<a name="restore-vm-ec2"></a>

**将虚拟机还原到 Amazon EC2 实例**

1. 在**管理程序**或**虚拟机**视图中，选择要还原的**虚拟机名称**。在**受保护的资源**视图中，选择要还原的虚拟机**资源 ID**。

1. 选择要还原的**恢复点 ID** 旁边的单选按钮。

1. 选择**还原**。

1. 选择**还原类型**。

   1. **完整还原**可完全还原文件系统，包括根级别文件夹和文件。

1. 选择**还原位置**为 **Amazon EC2**。

1. 对于**实例类型**，选择在新实例上运行应用程序所需的计算和内存组合。
**提示**  
选择匹配或超出原始虚拟机规格的实例类型。有关更多信息，请参阅 [Amazon EC2 实例类型指南](https://docs.aws.amazon.com/ec2/latest/instancetypes/)。

1. 对于**虚拟私有云（VPC）**，选择一个虚拟私有云（VPC），该云用于定义实例的网络环境。

1. 对于**子网**，在 VPC 中选择其中一个子网。您的实例会收到一个来自子网地址范围的私有 IP 地址。

1. 对于**安全组**，选择一个安全组，该组用作实例流量的防火墙。

1. 对于**还原角色**，选择**默认角色**（推荐）或**选择 IAM 角色**。

1. *可选*：要在启动时在实例上运行一个脚本，请展开**高级设置**并在**用户数据**中输入该脚本。

1. 选择**还原备份**。

1. *可选*：检查您的还原作业何时处于状态 `Completed`。在左导航窗格中，选择**作业**。

## 用于 AWS CLI 恢复虚拟机恢复点
<a name="vm-restore-cli"></a>

使用 `[StartRestoreJob](https://docs.aws.amazon.com/aws-backup/latest/devguide/API_StartRestoreJob.html)`。

您可以指定以下元数据以便虚拟机还原到 Amazon EC2 和 Amazon EBS：

```
RestoreTo
InstanceType
VpcId
SubnetId
SecurityGroupIds
IamInstanceProfileName
InstanceInitiatedShutdownBehavior
HibernationOptions
DisableApiTermination
Placement
CreditSpecification
RamdiskId
KernelId
UserData
EbsOptimized
LicenseSpecifications
KmsKeyId
AvailabilityZone
EbsVolumeType
IsEncrypted
ItemsToRestore
RequireIMDSv2
NetworkInterfaces
```

AWS Backup 支持对 Amazon EBS 的部分恢复和对亚马逊 EC2 的完全恢复。对于部分恢复，使用`ItemsToRestore`来指定要将哪个磁盘恢复到指定的 EBS 卷。恢复到 Amazon EC2 时，`ItemsToRestore`可以将该参数留空，因为该参数会被忽略并恢复磁盘的完整列表。

您可以为虚拟机还原到 VMware、 VMware Cloud on 和 AWS Outpost 上的 AWS VMware 云端指定以下元数据：

```
RestoreTo
HypervisorArn
VMName
VMPath
ComputeResourceName
VMDatastore
DisksToRestore
ItemsToRestore
```

AWS Backup 支持对本地虚拟机的部分恢复和完全恢复。您可以选择恢复所有磁盘或仅恢复部分磁盘。执行部分还原时，请在中指定您的磁盘选择`ItemsToRestore`。执行完全恢复时，必须同时省略`DisksToRestore`和`ItemsToRestore`，或者在中`DisksToRestore`指定所有磁盘。该`DisksToRestore`参数不支持磁盘子集。

此示例说明如何对以下内容进行完全恢复 VMware：

```
'{"RestoreTo":"VMware","HypervisorArn":"arn:aws:backup-gateway:us-east-1:209870788375:hypervisor/hype-9B1AB1F1","VMName":"name","VMPath":"/Labster/vm","ComputeResourceName":"Cluster","VMDatastore":"vsanDatastore","DisksToRestore":"[{\"DiskId\":\"2000\",\"Label\":\"Hard disk 1\"}]","vmId":"vm-101"}'
```