如何使用 VM Import/Export 创建基于本地服务器的 Amazon EC2 实例?

上次更新日期:2020 年 12 月 8 日

我想在 AWS 上创建本地服务器的副本作为 Amazon Elastic Compute Cloud (Amazon EC2) 实例。如何使用 VM Import/Export 执行该操作?

解决方法

您可以使用 AWS 命令行界面 (AWS CLI) 运行 VM Import/Export 作业。然后,创建服务器的副本作为 Amazon 系统映像 (AMI),并将其上传到 Amazon Simple Storage Service (Amazon S3) 存储桶。您可以启动 AMI 作为 EC2 实例。

注意:如果在运行 AWS CLI 命令时遇到错误,请确保您使用的是最新版本的 AWS CLI

对于大规模迁移,AWS Server Migration Service (SMS) 可以自动执行迁移过程。您可以导入在 VMware vSphere、Microsoft Hyper-V/SCVMM 和 Azure 上运行的本地虚拟机。

开始之前,请执行以下操作:

  • 确保您的 VM 符合所有的 VM Import/Export 要求
  • 检查支持的 Linux 和 Windows 操作系统、图像格式、许可选项及 VM Import/Export 的 限制
  • 如果以 AWS Identity and Access Management (IAM) 用户的身份登录以使用 VM Import/Export,请确保您的策略中具有 IAM 用户所需的权限

1.    请遵循 VM 导出的所需配置中的指南。

2.    在本地客户端上安装 AWS CLI,然后使用为 VM Import 用户生成的 AWS 凭证对其进行配置。

3.    在您计划运行 EC2 实例所在的 AWS 区域中创建新的 S3 存储桶

4.    使用信任策略 trust-policy.json 创建名为“vmimport”的 IAM 角色,以使 VM Import 服务承担该角色。

{
   "Version": "2012-10-17",
   "Statement": [
      {
         "Effect": "Allow",
         "Principal": { "Service": "vmie.amazonaws.com" },
         "Action": "sts:AssumeRole",
         "Condition": {
            "StringEquals":{
               "sts:Externalid": "vmimport"
            }
         }
      }
   ]
}

5.    将名为“vmimport”的以下 IAM 策略附加到 IAM 角色,以授予权限。

注意:disk-image-file-bucket 替换为您的 S3 存储桶名称。

{
   "Version":"2012-10-17",
   "Statement":[
      {
         "Effect":"Allow",
         "Action":[
            "s3:GetBucketLocation",
            "s3:GetObject",
            "s3:ListBucket" 
         ],
         "Resource":[
            "arn:aws:s3:::disk-image-file-bucket",
            "arn:aws:s3:::disk-image-file-bucket/*"
         ]
      },
      {
         "Effect":"Allow",
         "Action":[
            "ec2:ModifySnapshotAttribute",
            "ec2:CopySnapshot",
            "ec2:RegisterImage",
            "ec2:Describe*"
         ],
         "Resource":"*"
      }
   ]
}

6.    使用您选择的工具将映像上传到 S3 存储桶

7.    从客户端计算机中运行 AWS CLI 命令 import-image

8.    要检查导入任务状态,请运行 AWS CLI 命令 describe-import-image-tasks

9.    将映像作为 AMI 导入后,请按照使用启动实例向导启动实例 的说明进行操作。


这篇文章对您有帮助吗?


您是否需要账单或技术支持?