AWS Server Migration Service
用户指南
AWS 文档中描述的 AWS 服务或功能可能因区域而异。要查看适用于中国区域的差异,请参阅中国的 AWS 服务入门

Server Migration Service (SMS) 要求

要借助 Server Migration Service 将本地虚拟化服务器迁移到 Amazon EC2,您的 VMware vSphere、Microsoft Hyper-V/SCVMM 或 Microsoft Azure 环境必须满足以下要求。

一般要求

在设置 AWS SMS 之前,请根据需要采取措施以满足以下所有要求。

所有 VMs

  • 在您要迁移的 VM 上禁用任何反病毒软件或入侵检测软件。可在迁移过程完成后重新启用上述服务。

  • 断开连接到该 VM 的任何 CD-ROM 驱动器 (包括虚拟及物理驱动器)。

Windows VM

  • 启用 Remote Desktop (RDP) 以进行远程访问。

  • 在 VM 上安装适当的 .NET Framework 版本。请注意,如果需要,系统会自动在您的 VM 上安装 .NET Framework 4.5 或更高版本。

    Windows 版本 .NET Framework 版本
    Windows Server 2008 或早期版本 3.5 或更高版本
    Windows Server 2008 R2 或更高版本 4.5 或更高版本
    Windows 8 或更早版本 3.5 或更高版本
    Windows 8.1 或更高版本 4.5 或更高版本
  • 在准备要迁移的 Microsoft Windows VM 时,请配置固定的分页文件大小并确保根卷上至少有 6 GiB 可用空间。这是成功安装驱动程序所必需的。

  • 确保您的主机防火墙 (例如 Windows 防火墙) 允许访问 RDP。否则,在迁移完成后,您将无法访问您的实例。

  • 应用以下修补程序:

Linux VM

  • 启用安全外壳 (SSH) 以进行远程访问。

  • 确保您的主机防火墙(例如 iptables)允许访问 SSH。否则,在迁移完成后,您将无法访问您的实例。

  • 确保您的 Linux VM 将 GRUB(传统 GRUB)或 GRUB 2 作为其启动加载程序。

  • 确保您的 Linux VM 的根卷使用以下文件系统之一:

    • EXT2

    • EXT3

    • EXT4

    • Btrfs

    • JFS

    • XFS

对 VM 进行程序修改

在导入 VM 时,AWS 会修改文件系统,使导入的 VM 可供客户访问。可以进行以下操作:

  • [Linux] 在 OS 中直接安装 Citrix PV 驱动程序或修改 initrd/initramfs 以包含它们。

  • [Linux] 修改网络脚本以使用动态 IP 替换静态 IP。

  • [Linux] 修改 /etc/fstab、注释掉无效的条目并使用 UUID 替换设备名称。如果找不到设备的匹配 UUID,会在设备描述中添加 nofail 选项。导入后,我们需要更正设备名称并删除 nofail。最佳实践做法是,在准备要导入的 VM 时,建议您使用 UUID 而非设备名称来指定 VM 磁盘设备。

    /etc/fstab 中包含分布式文件系统类型(nfs、cifs、smbfs、vboxsf、sshfs 等)的条目将被禁用。

  • [Linux] 修改默认条目和超时等 GRUB 启动加载程序设置。

  • [Windows] 修改注册表设置以使 VM 可启动。

在写入修改后的文件时,AWS 会在新名称下的同一位置保留原始文件。

AWS 服务器迁移连接器 要求

服务器迁移连接器 是您在本地虚拟化环境中安装的一种 FreeBSD VM。其硬件和软件要求如下:

VMware 连接器要求

  • vCenter 5.1 或更高版本(经验证最高支持 6.7 版本)

  • ESXi 5.1 或更高版本(经验证最高支持 6.7 版本)

  • 最低 8 GiB RAM

  • 最低可用磁盘存储容量为 20 GiB (精简配置) 或 250 GiB (完全配置)

  • 支持以下网络服务。请注意,您可能需要重新配置防火墙以允许从连接器到这些服务的有状态出站连接。

    • DNS — 允许连接器发起到端口 53 的连接,以便进行名称解析。

    • vCenter 上的 HTTPS - 允许连接器向 vCenter 的端口 443 发起安全 Web 连接。您也可以自行配置非默认端口。

      注意

      如果您将 vCenter Server 配置为使用非默认端口,请在 Connector setup 的“vCenter Service Account”页面中输入 vCenter 的主机名和端口,并以冒号分隔 (例如,HOSTNAME:PORTIP:PORT)。

    • ESXi 上的 HTTPS - 允许连接器发起到 ESXi 主机(包含您要迁移的 VM)的端口 443 的安全 Web 连接。

    • NTP –(可选)允许连接在端口 123 上访问 ntp.org。如果连接器将其时钟与 ESXi 主机同步,则无需此选项。

  • 允许从连接器到以下 URL 范围的出站连接:

    • *.amazonaws.com

    • *.aws.amazon.com

    • *.ntp.org(可选;只用于验证连接器时间是否与 NTP 同步)。

Hyper-V 连接器要求

  • Windows Server 2012 R2 或 Windows Server 2016 上的 Hyper-V 角色

  • Active Directory 2012 或更高版本

  • [可选] SCVMM 2012 SP1 或 SCVMM 2016

  • 最低 8 GiB RAM

  • 最小可用磁盘存储 300 GiB

  • 支持以下网络服务。请注意,您可能需要重新配置防火墙以允许从连接器到这些服务的有状态出站连接。

    • DNS — 允许连接器发起到端口 53 的连接,以便进行名称解析。

    • 您的 SCVMM 或独立 Hyper-V 主机的 WinRM 端口 5986 上的 HTTPS

    • 连接器端口 443 上的入站 HTTPS - 允许连接器从包含您要迁移的 VM 的 Hyper-V 主机上的端口 443 接收安全 Web 连接。

    • NTP –(可选)允许连接在端口 123 上访问 ntp.org。如果连接器将其时钟与 ESXi 主机同步,则无需此选项。

  • 允许从连接器到以下 URL 范围的出站连接:

    • *.amazonaws.com

    • *.aws.amazon.com

    • *.ntp.org(可选;只用于验证连接器时间是否与 NTP 同步。)

Azure 连接器的要求

  • Azure 连接器的建议 VM 大小为 F4s - 4 个 vCPU 和 8 GB RAM。确保在部署连接器的区域中有足够的 Azure CPU 配额。

  • 可用于部署连接器的标准存储账户(不能是 Premium)。

  • 可在其中部署连接器的虚拟网络。

  • 端口 443 (HTTPS) 上的入站访问(建议从连接器的虚拟网络中访问或向公众开放(不推荐)),用于连接器注册和查看连接器控制面板。

  • 用于访问 AWS 服务、访问 Azure 服务、执行连接器操作系统更新等操作的出站 Internet 访问。

AWS SMS 支持的操作系统

可以使用 SMS 将以下 操作系统迁移到 EC2:

Windows (32 和 64 位)

  • 含 Service Pack 1 (SP1) 的 Microsoft Windows Server 2003 (标准版、数据中心版、企业版) 或更高版本 (32 位和 64 位)

  • Microsoft Windows Server 2003 R2 (标准版、数据中心版、企业版) (32 位和 64 位)

  • Microsoft Windows Server 2008 (标准版、数据中心版、企业版) (32 位和 64 位)

  • Microsoft Windows Server 2008 R2(标准版、Web 服务器、数据中心版、企业版)(仅限 64 位)

  • Microsoft Windows Server 2012 (标准版、数据中心版) (仅限 64 位)

  • Microsoft Windows Server 2012 R2 (标准版、数据中心版) (仅限 64 位) (不支持 Nano Server 安装)

  • Microsoft Windows Server 2016 (标准版、数据中心版) (仅限 64 位)

  • Microsoft Windows Server 1709 (标准版、数据中心版) (仅限 64 位)

  • Microsoft Windows Server 1803 (标准版、数据中心版) (仅限 64 位)

  • Microsoft Windows 7(家庭版、专业版、企业版、旗舰版)(美国英语)(32 位和 64 位)

  • Microsoft Windows 8(家庭版、专业版、企业版)(美国英语)(32 位和 64 位)

  • Microsoft Windows 8.1 (专业版、企业版) (美国英语) (仅 64 位)

  • Microsoft Windows 10(家庭版、专业版、企业版、教育版)(美国英语)(仅 64 位)

Linux/Unix (64 位)

  • Ubuntu 12.04、12.10、13.04、13.10、14.04、14.10、15.04、16.04、16.10、17.04、18.04

  • Red Hat Enterprise Linux (RHEL) 5.1-5.11、6.1-6.9、7.0-7.6(6.0 缺少必要的驱动程序)

  • 含 Service Pack 1 和内核 2.6.32.12-0.7 的 SUSE Linux Enterprise Server 11

  • 含 Service Pack 2 和内核 3.0.13-0.27 的 SUSE Linux Enterprise Server 11

  • 含 Service Pack 3 和内核 3.0.76-0.11、3.0.101-0.8 或 3.0.101-0.15 的 SUSE Linux Enterprise Server 11

  • 含 Service Pack 4 和内核 3.0.101-63 的 SUSE Linux Enterprise Server 11

  • 含内核 3.12.28-4 的 SUSE Linux Enterprise Server 12

  • 含 Service Pack 1 和内核 3.12.49-11 的 SUSE Linux Enterprise Server 12

  • 含 Service Pack 2 和内核 4.4 的 SUSE Linux Enterprise Server 12

  • 含 Service Pack 3 和内核 4.4 的 SUSE Linux Enterprise Server 12

  • CentOS 5.1-5.11、6.1-6.6、7.0-7.6(6.0 缺少必要的驱动程序)

  • Debian 6.0.0-6.0.8、7.0.0-7.8.0、8.0.0

  • 具有 el5uek 内核后缀的 Oracle Linux 5.10-5.11

  • 使用 RHEL 兼容的内核 2.6.32 或 UEK 内核 3.8.13、4.1.12 的 Oracle Linux 6.1-6.10

  • 使用 RHEL 兼容的内核 3.10.0 或 UEK 内核 3.8.13、4.1.12、4.14.35 的 Oracle Linux 7.0-7.6

  • Fedora Server 19-21

AWS SMS 支持的卷类型和文件系统

AWS Server Migration Service 支持迁移使用以下文件系统的 Windows 和 Linux 实例:

操作系统 文件系统 架构 分区表 支持的数据卷 支持的启动卷
Windows NTFS 32 位 MBR
GPT
64 位 MBR
GPT ✔(仅限于 VHDX)
Linux/Unix ext2、ext3、ext4、Btrfs、JFS、XFS 64 位 MBR
GPT

不支持具有使用 EBS 加密的卷的 AMI。

许可选项

当您创建新的复制任务时,AWS Server Migration Service 控制台会提供 License type (许可证类型) 选项。可能值包括:

  • Auto (默认)

    检测源系统操作系统 (OS),并针对已迁移的虚拟机 (VM) 应用相应的许可证。

  • AWS

    如果适用,在已迁移的 VM 上利用 AWS 许可证替换源系统许可证。

  • BYOL

    如果适用,在已迁移的 VM 上保留源系统许可证。

注意

如果您选择了与 VM 不兼容的许可证类型,复制任务将失败,并提供一条错误消息。有关更多信息,请参阅以下的操作系统特定信息。

可通过 AWS SMS API 和 CLI 使用相同的许可选项。例如:

aws sms create-replication-job --license-type <value>

--license-type 参数的值可以是 AWS 或 BYOL。保留该参数不设置与在控制台中选择 Auto 的效果相同。

Linux 许可

Linux 操作系统仅支持 BYOL 许可证。选择 Auto (自动)(默认值)表示 AWS SMS 使用 BYOL 许可证。

迁移的 Red Hat Enterprise Linux (RHEL) VM 必须使用 Cloud Access (BYOL) 许可证。有关更多信息,请参阅 Red Hat 网站上的 Red Hat Cloud Access

已迁移的 SUSE Linux Enterprise Server VM 必须使用 SUSE 公有云程序 (BYOS) 许可证。有关更多信息,请参阅 SUSE 公有云程序—自带订阅

Windows 许可

Windows 服务器操作系统支持 BYOL 或 AWS 许可证。Windows 客户端操作系统 (例如 Windows 10) 只支持 BYOL 许可证。

如果您选择 Auto (自动)(默认值),而 VM 具有服务器操作系统,则 AWS SMS 将使用 AWS 许可证。否则将使用 BYOL 许可证。

如果您通过 MSDN 或每用户 Windows 软件保障使用 BYOL Microsoft 许可证,则适用以下规则:

  • 您的 BYOL 实例将以现行的 Amazon EC2 Linux 实例定价进行定价,前提是您满足以下条件:

    • 在专用主机上运行(专用主机

    • 使用 AWS SMS 从源自您提供的软件二进制文件的 VM 中启动,这将受 AWS SMS 当时有效的条款和功能的限制

    • 将实例指定为 BYOL 实例

    • 在您指定的 AWS 区域内以及 AWS 提供 BYOL 模式的区域内运行实例

    • 使用您提供的或您的密钥管理系统中使用的 Microsoft 密钥进行激活

  • 您必须考虑的一个实际情况是,在启动某个 Amazon EC2 实例时,该实例可在可用区内的多台服务器中的任一服务器上运行。这意味着,每次启动 Amazon EC2 实例(包括停止/启动)时,该实例可在可用区内的不同服务器上运行。您必须根据许可协议中提供的 Microsoft 批量许可产品条款中所述的许可重新分配的限制来考虑这一事实,或者查看您的特定使用权利来确定您的权利是否与此使用保持一致。

  • 您必须有资格在您与 Microsoft 签订的协议下 (例如,在您的 MSDN 用户权利下或您的每用户 Windows 软件保障权利下) 使用针对合适的 Microsoft 软件的 BYOL 计划。您单独负责获得所有所需的许可证并遵守所有适用的 Microsoft 许可要求,包括 PUR/PT。此外,您必须已接受 Microsoft 的最终用户许可协议 (Microsoft EULA),并且一旦使用 BYOL 计划下的 Microsoft 软件,即表示您同意 Microsoft EULA。

  • AWS 建议您咨询您自己的法律顾问和其他顾问以了解并遵守适用的 Microsoft 许可要求。不授权也不允许在违反您与 Microsoft 签订的协议的情况下使用服务 (包括使用 licenseType 参数和 BYOL 标志)。

限制

映像格式

  • 在迁移由 Hyper-V/SCVMM 托管的 VM 时,SMS 支持第 1 代 VM(使用 VHD 或 VHDX 磁盘格式)和第 2 代 VM(仅限 VHDX)。

  • AWS SMS 不支持在运行任何版本的 RHEL 5(如果由 VHDX 磁盘支持)的 Hyper-V 上的 VM。我们建议您将此格式的磁盘转换为 VHD 以便迁移。

  • AWS SMS 不支持混合使用 VHD 和 VHDX 磁盘文件的 VM。

  • 在 VMware 上,AWS SMS 不支持使用原始设备映射 (RDM) 的 VM。仅支持 VMDK 磁盘映像。

文件系统

  • 迁移的 Linux VM 必须使用 64 位映像。不支持迁移 32 位 Linux 映像。

  • 迁移的 Linux VM 应使用默认内核以获得最佳结果。使用自定义 Linux 内核的 VM 无法成功迁移。

  • 在准备要迁移的 Amazon EC2 Linux VM 时,请确保根卷上至少有 250 MiB 的磁盘空间用于安装驱动程序和其他软件。对于 Microsoft Windows VM,请配置固定的页面文件大小并确保根卷上至少有 6 GiB 可用空间。

正在启动

  • UEFI/EFI 启动分区仅支持采用 VHDX 映像格式的 Windows 启动卷。否则,VM 的启动卷必须使用主启动记录 (MBR) 分区。在任一情况下,由于 MBR 的限制,启动卷都不能超过 2 TiB(未压缩)。

    注意

    当 AWS 检测到带有 UEFI 启动分区的 Windows GPT 启动卷,它会即时将其转换成为带有 BIOS 启动分区的 MBR 启动卷。这是因为 EC2 不直接支持 GPT 启动卷。

  • 如果根分区与 MBR 位于不同的虚拟硬盘驱动器,已导入的 VM 可能无法启动。

  • 如果根分区与 MBR 位于不同的虚拟硬盘上,已迁移的 VM 可能无法启动。

  • 不支持迁移具有双启动配置的 VM。

联网

  • 目前不支持多个网络接口。您的 VM 在迁移后会拥有一个使用 DHCP 分配地址的虚拟网络接口。您的实例会收到一个私有 IP 地址。

  • 即使子网采用自动分配公有 IP 地址的设置,迁移到 VPC 中的 VM 也不会收到公有 IP 地址。但您可以向自己的账户分配一个弹性 IP 地址并将其关联到您的实例。

  • 不支持 Internet 协议版本 6 (IPv6) IP 地址。

从 Migration Hub 进行应用程序导入

  • 只有当 SMS 服务器目录中存在这些应用程序时,SMS 才从 AWS Migration Hub 导入应用程序相关的服务器。因此,一些应用程序可能仅部分迁移。

  • 如果 Migration Hub 应用程序中的服务器都不在 SMS 服务器目录中,则导入将无提示失败,应用程序在 SMS 中不可见。

  • 导入的应用程序可以迁移,但不能在 SMS 中编辑。不过,这些应用程序可在 Migration Hub 中编辑。

其他

  • 对于附加有 22 个以上卷的 VM,SMS 复制任务将会失败。

  • 不支持具有使用 EBS 加密的卷的 AMI。

  • AWS SMS 创建使用硬件虚拟机 (HVM) 虚拟化的 AMI。它无法创建使用半虚拟化 (PV) 的 AMI。迁移的 VM 内支持 Linux PVHVM 驱动程序。

  • 作为 P2V 转换的结果而创建的 VM 不受支持。通过在物理设备上执行 Linux 或 Windows 安装进程,然后将 Linux 或 Windows 安装副本导入虚拟机,从而创建磁盘映像,则会发生 P2V 转换。

  • AWS SMS 不会安装单个根 I/O 虚拟化 (SR-IOV) 驱动程序,除非导入 Microsoft Windows Server 2012 R2 VM。除非您计划使用提供更高性能 (每秒数据包)、更短延迟和更低抖动的增强联网,否则不需要这些驱动程序。对于 Microsoft Windows Server 2012 R2 VM,会在迁移过程中自动安装 SR-IOV 驱动程序。

  • 由于独立磁盘不受快照影响,AWS SMS 不支持在独立模式下对 VMDK 进行间隔复制。

  • 不支持导入使用 UTF-16 (或非 ASCII ) 字符的 Windows 语言包。在导入 Windows Server 2003、Windows Server 2008 和 Windows Server 2012 R1 VM 时,建议使用英语语言包。

  • 对于 Windows Server 2003,请在迁移之前禁用 Windows 驱动程序签名检查。

其他要求

VMware vMotion 支持

AWS Server Migration Service 部分支持 vMotion、Storage vMotion 和基于虚拟机迁移的其他功能(如 DRS 和 Storage DRS),但受到以下限制:

  • 在一个复制运行结束后,但在下一个复制运行开始前,支持将虚拟机迁移到新的 ESXi 主机或数据存储,前提是:服务器迁移连接器 的 vCenter 服务账户在目标 ESXi 主机、数据存储和数据中心以及位于新位置的虚拟机本身上具有足够的权限。

  • 复制运行处于活动状态 (即正在进行虚拟机上传时) 时,不支持将虚拟机迁移到新的 ESXi 主机、数据存储和/或数据中心。

  • 不支持将 Cross vCenter vMotion 与 AWS Server Migration Service 配合使用。

VMware vSAN 支持

vSAN 数据存储上的 VM 仅在 Configure replication jobs settings 页面上的 Replication job type 设置为 One-time migration 时受支持。

针对 VMware 虚拟卷 (VVol) 的支持

AWS 不对迁移 VMware 虚拟卷提供支持。不过某些实施可能适用。

包含快照的 VM

AWS SMS 在使用基于快照的备份软件的 VM 上仅支持一次性迁移。同时,还应避免在通过 AWS SMS 复制的 VM 上创建快照。