控制台跨账号ECS实例间迁移

重要

本文中含有需要您注意的重要提示信息,忽略该信息可能对您的业务造成影响,请务必仔细阅读。

服务器迁移中心(Server Migration Center,SMC)可实现跨可用区、跨地域的 ECS 实例迁移。用户可将其他账号中的实例迁移至当前账号下的 ECS 实例或迁移为镜像,迁移过程中源实例无需停机,支持增量数据迁移。

前提条件

准备工作

  • 控制台跨账号迁移需要使用RAM用户导入迁移源。因此,在迁移前请登录目标账号的主账号为RAM用户授予以下权限:

    若主账号下无RAM用户,请先创建
    • 调用STS服务权限AliyunSTSAssumeRoleAccess。

    • SMC服务管理权限AliyunSMCFullAccess。

    • 只读访问云服务器服务(ECS)的权限AliyunECSReadOnlyAccess。

    • 云助手管理权限AliyunECSAssistantFullAccess。

    以授予AliyunSTSAssumeRoleAccess权限为例。

    1. 使用迁移目标主账号,登录RAM控制台

    2. 在左侧导航栏中选择用户,单击目标用户登录名称。

    3. 选择权限管理 > 新增授权

    4. 在新增授权界面,输入AliyunSTSAssumeRoleAccess,勾选对应策略后,单击确认新增授权image

  • 已记录源账号和目标账号的主账号ID。

    1. 分别利用源账号和目标账号登录阿里云控制台。

    2. 将光标悬停在右上角用户图标获取主账号ID。image

步骤一:源账号权限授予

使用待迁移ecs实例所属源账号(具有RAM管理权限)登录RAM控制台,创建角色并授权。

  1. 创建权限策略。

    1. 在左侧导航栏,选择权限管理 > 权限策略,单击创建权限策略image

    2. 单击脚本编辑,使用以下策略替换后,单击确定

      {
          "Version": "1",
          "Statement": [
              {
                  "Action": [
                      "ecs:DescribeZones",
                      "ecs:DescribeInstances",
                      "ecs:DescribeSecurityGroupAttribute",
                      "ecs:DescribeSecurityGroups",
                      "ecs:DescribeSnapshots",
                      "ecs:DescribeImages",
                      "ecs:DescribeDisks",
                      "ecs:DescribeCloudAssistantStatus",
                      "ecs:RunCommand",
                      "ecs:DescribeInvocations"
                  ],
                  "Resource": "*",
                  "Effect": "Allow"
              }
          ]
      }
    3. 在创建权限策略弹框中,输入策略名称为policy-smc后,单击确定image

  2. 创建角色。

    1. 在左侧导航栏中,选择身份管理 > 角色,单击创建角色image

    2. 信任主体类型选择云账号,信任主体名称选择其他云账号。在文本框中填入将要迁移到的目标账号的阿里云主账号ID。image

    3. 单击确定,在创建角色的弹框中,自定义角色名称,示例为ram-role-smc。image

  3. 为角色授权。

    1. 在角色页面,单击创建的角色名称,进入角色详情页。image

    2. 单击权限管理,选择精确授权image

    3. 在精确授权界面中,选择自定义策略,输入第一步创建的policy-smc权限策略后,单击确定image

步骤二:目标账号导入迁移源

  1. 使用迁移目标账号的RAM用户,访问SMC控制台。在左侧导航栏中选择跨账号/同账号迁移

  2. 跨账号/同账号迁移页面,单击导入迁移源

  3. 根据界面提示配置参数并复制激活码命令,关于参数的说明,具体如下表所示。

    参数

    说明

    迁移源类型

    阿里云ECS云服务器

    导入方式

    选中控制台导入

    授权服务器迁移中心在控制台远程连接源服务器来自动导入迁移源。导入过程中会自动调用云助手功能,请勿中断退出。

    是否跨阿里云账号

    跨账号

    源服务器归属的阿里云账号

    输入待迁移服务器的所属阿里云账号ID(即源主账号ID)。

    源服务器归属的账号的角色

    输入第一步新创建并授权的角色,示例为ram-role-smc。

    地域

    在下拉列表中选择待迁移服务器所在的地域。

    实例

    您可根据实例 ID/名称或 IP 地址搜索并选择指定地域下待迁移的阿里云 ECS 实例,支持批量选中多个实例进行导入。

  4. 配置参数后,单击导入

    SMC会自动启动云助手Agent执行导入。导入迁移源大约需要3~10分钟,请您耐心等待。

  5. SMC控制台的跨账号/同账号迁移页面的迁移实时状态列,查看迁移源的状态。

    • 如果为迁移源在线状态,表示导入成功。

      说明

      跨账号ECS实例迁移场景中,迁移源实例的公网IP地址可能无法显示、操作系统显示不全、实例状态可能无法识别等,属于正常现象,不影响迁移任务。

    • 如果为其他状态,表示导入失败。请参考以下方案处理问题后,重新导入。

      • 可根据控制台错误提示或查看SMC客户端日志文件进行问题排查。SMC客户端默认安装目录:

        • Windows服务器:C:\smc

        • Linux服务器:/smc

      • 常见问题及修复方案,请参见SMC FAQ排除报错

步骤三:目标账号迁移配置

  1. 在目标迁移源的操作列,单击开始迁移

  2. 根据界面提示配置相关参数后,单击开始迁移

    1. 配置基本参数。

      参数

      说明

      任务名称

      迁移任务的名称。

      任务描述

      输入迁移任务的描述。

      目标类型(必填)

      您可以根据实际迁移场景选择对应的目标类型:

      云服务器镜像

      将现有的源服务器转换成云服务器自定义镜像,再使用该自定义镜像创建新的ECS实例来实现迁移。

      配置项说明如下:

      • 目标地域:目标地域指的是您的源服务器要迁入阿里云的地域。该参数为必填项。关于地域的更多信息,请参见地域和可用区

      • 镜像名称:SMC为迁移源生成的目标阿里云自定义镜像名称。

      云服务器实例

      将源服务器直接迁移至已购买的ECS实例,源服务器和已购买的ECS实例的存储、操作系统等需要适配。

      重要

      迁移到目标实例时,会先对目标实例进行更换操作系统,系统盘的自动快照会被清理,且无法恢复。如果您需要保留自动快照以备未来需要或数据安全考虑,可以在迁移前手动取消自动快照随云盘释放。具体操作,请参见设置自动快照随云盘释放

      配置项说明如下:

      • 目标地域:目标地域指的是您的源服务器要迁入阿里云的地域。该参数为必填项。关于地域的更多信息,请参见地域和可用区

      • 目标实例:选择一个ECS实例作为目标实例。

      迁移演练

      迁移演练功能可以帮助您在实际迁移前充分了解迁移任务的可行性和风险,并且可以获取迁移的数据量、迁移速度及其迁移总时长等信息,为您提供修复建议,从而减少实际迁移中可能出现的问题和损失。在迁移演练过程中按量收费资源将会消耗一定的费用。默认开启迁移演练

      警告

      若目标类型为云服务器实例时,迁移演练过程中将对目标ECS实例的全部云盘创建快照。若演练异常或执行方式为仅演练,迁移演练完成后会自动回滚快照。迁移演练期间目标ECS实例不可用,且期间数据将丢失,请确保目标ECS实例中不存在重要数据。

      更多信息,请参见配置迁移演练

      执行方式

      请根据是否开启迁移演练,选择执行方式:

      若开启迁移演练

      • 仅演练:表示仅创建迁移演练任务,迁移演练完成后,如果需要迁移服务器,需要手动启动服务器迁移任务。

      • 演练并迁移:表示迁移演练完成后,如果不存在状态为严重的演练项,系统自动启动服务器迁移任务。默认选择演练并迁移

      若未开启迁移演练

      • 立即迁移:创建迁移任务后立即启动迁移。默认选择立即迁移

      • 预约迁移:创建迁移任务后,在设置的时间自动启动迁移任务。

        说明

        预约执行时间最早可设置为当前时间后10分钟。

      • 只创建:仅创建迁移任务,后续需要在操作列单击开始任务,手动启动迁移任务。

      自动增量同步

      迁移任务是否自动同步源服务器增量数据至阿里云。默认关闭自动增量同步。

      • 开启该开关后,需设置以下配置项:

        • 同步重复频率:增量迁移任务周期性自动执行的时间间隔。

        • 最大镜像保留数:增量迁移任务默认保留的最大镜像数。

        迁移任务将自动周期性执行,并同步增量数据至阿里云。增量迁移的最佳实践,请参见服务器增量迁移

      • 关闭该开关后,迁移任务仅执行一次。

      启用迁移模板

      目标类型选择云服务器镜像时,才会出现此参数。

      迁移模板用于预设迁移任务的参数,在开始迁移时会自动填充模板参数。设置迁移模板的具体操作,请参见设置迁移模板

    2. 按需调整磁盘分区结构,参数说明具体如下表所示。

      参数

      说明

      调整磁盘分区结构

      根据需求选择是否开启调整磁盘分区结构。仅SMC客户端版本为2.8.0及以上支持此功能,关于SMC客户端的更多信息,请参见SMC客户端使用指南

      • 未开启:不显示源实例的磁盘信息,自动读取源实例磁盘信息,生成磁盘结构,迁移后目标磁盘分区结构默认与自动生成的磁盘结构一致。

      • 开启:显示源实例的磁盘信息,自动读取源实例磁盘信息,生成磁盘结构。可以调整目标磁盘分区结构,包括分区大小与位置顺序、传输方式、是否开启LVM等配置。

        磁盘分区结构的参数说明如下:

        配置磁盘

        • 系统盘:目标阿里云云服务器系统盘的大小,单位为GiB。系统盘大小取值范围为20~2048。

          目标系统盘取值需要大于迁移源系统盘实际占用大小。例如,源系统盘大小为400 GiB,实际占用100 GiB,则目标系统盘取值需大于100 GiB。

          说明

          默认值为迁移源系统盘大小,如无缩小系统盘容量的需要,建议不要小于默认值。

        • 数据盘<N>:表示迁移后阿里云云服务器数据盘的大小,单位为GiB。 数据盘大小取值范围:1~32768。

          • 变量<N>表示第几个数据盘,如果迁移到目标实例,N为数据盘ID。

          • 数据盘取值需要大于迁移源数据盘的实际占用大小。例如,源数据盘大小为500 GiB,实际占用100 GiB,则目标数据盘取值需大于100 GiB。

          • 如果数据盘下不存在挂载点或者挂载点都设置为不迁移,则不会迁移该数据盘。

        • LVM:逻辑卷管理LVM(Logical Volume Manager)是一种在Linux系统中对磁盘分区进行管理的一种机制。LVM比普通的磁盘分区更加灵活,可以动态地调整磁盘空间。

          您可以根据需求选择是否开启LVM,开启LVM后,目的端将自动为该磁盘以LVM结构进行重建。

          示例说明如下:

          对于每个开启LVM的目标磁盘,系统会创建1个物理卷(PV)及其对应的卷组(VG),在该卷组上创建和挂载点对应数量的逻辑卷(LVM)。卷组名默认为vgX(X为磁盘的序号),逻辑卷名默认为lvX(X为逻辑卷的序号),示例如下:

          image

          重要

          不支持开启LVM:

          • 迁移源为Windows系统时,不支持开启LVM。

          • 系统盘无启动分区,不支持开启LVM。

          开启LVM后,以下场景该功能不生效:

          • 迁移源不支持lvm2、未安装lvm2软件包。

          • 迁移源为内核版本在3.x及以下的Debian系统,且挂载了XFS文件系统的磁盘。

        配置挂载点

        • 是否迁移:您可以根据业务需求选择是否迁移该挂载点。

        • 是否开启块复制:使用块复制能有效提升迁移传输速度的稳定性,同时能够保证与源分区结构一致,但分区大小无法修改。SMC会根据迁移源磁盘分区状态判断是否支持开启块复制。

          • 如果迁移源不支持分区开启块复制,则该开关无法打开,使用默认的文件复制,分区大小可以修改。

          • 如果迁移源支持分区开启块复制,则默认开启块复制,实现分区级别的磁盘迁移。

          说明
          • 迁移源为Windows操作系统时,块复制功能默认为开启状态,无法关闭该功能。

          • 若所在磁盘开启LVM且分区大小不为4 MiB的整数倍,块复制不生效,数据传输方式采用文件复制。

        • 设置分区大小:未开启块复制时,您可以根据需求设置分区大小,但分区大小之和不能大于所属磁盘大小。

        说明

        如果目标实例的各磁盘大小与迁移源磁盘不能匹配,则无法创建任务。此时,系统会自动调整挂载点位置,以满足磁盘大小要求。若调整挂载点后仍无法满足要求,请根据界面提示信息处理问题。

        您也可以手动拖拽挂载点位置,以满足磁盘大小要求。但是分区类型为启动分区或系统分区,不支持拖拽。具体操作如下:

        1. 将鼠标悬浮在挂载点前的image图标上。

        2. 使用鼠标将挂载点拖拽至其他磁盘。

    3. (条件必选)如果您需要设置网络模式、修改私网IP地址、传输限速等参数,单击高级配置,配置高级参数,参数说明具体如下表所示。

      说明

      建议网络模式选择私网传输,使用私网传输能获得比通过公网更快速、更稳定的数据传输效果,提高迁移工作效率。

      参数

      说明

      网络模式

      选择传输迁移数据到中转实例使用的网络,默认使用公网传输。中转实例会被创建在所选专有网络(VPC)、交换机(vSwitch)下,因此中转实例会被分配公网IP。

      公网传输(默认)

      迁移数据通过公网传输到中转实例。使用该模式,源服务器需能访问公网。根据实际需要,选择是否指定专有网络(VPC)和交换机(vSwitch)。

      • 指定VPCvSwitch:迁移任务在您指定的VPCvSwitch下创建中转实例。

      • 不指定VPCvSwitch:迁移任务会在系统自动新建的VPCvSwitch下创建中转实例。

      私网传输

      迁移数据通过VPC内网传输到中转实例。使用该模式,需要将源服务器与阿里云VPC打通,并且必须指定VPCvSwitch。

      说明

      如果您能直接从自建机房(Integrated Data Center,IDC)、虚拟机环境或者云主机访问某一阿里云地域下的专有网络VPC,建议您使用该方式进行迁移。使用内网传输能获得比通过公网更快速更稳定的数据传输效果,提高迁移工作效率。您可以通过VPN网关、高速通道物理专线、智能接入网关将源服务器和云上VPC打通。更多信息,请参见VPC连接本地数据中心/其他云

      IPv4私网地址

      如果您需要更改目标实例的私网IP地址,您可以手动指定私有IP地址。当目标类型选择云服务器实例时,才会出现此参数。

      • 保持不变:默认为目标实例的迁移IP地址,不发生变化。

      • 手动指定:允许输入目标实例所在交换机可用IP网段范围内的地址。当迁移源IP地址在交换机的网段时,您可以修改目标实例IP地址为迁移源IP地址。

        • 当目标实例网段与迁移源网段相同时:直接输入迁移源的私网IP地址。

        • 当目标实例网段与迁移源网段不相同时:您需要先更换目标实例的VPC,使目标实例网段与迁移源网段相同,然后输入迁移源的私网IP地址。

      传输限速

      传输限速是限制实际网络传输速度,单位为Mbps。若设置压缩率大于0,实际网络传输速度(即压缩后数据的传输速度)小于迁移实时状态中显示的速度。

      压缩率

      迁移过程中,数据压缩传输的级别。请根据您的实际需要,设置压缩率。

      • 在带宽有限的环境下,使用高压缩率,可以提升数据的传输速度。

      • 在带宽很高的情况下,建议您不压缩传输数据,可减少对迁移源CPU资源的耗费。

      取值范围为0~10,默认值为7,0表示不压缩传输数据。

      Checksum验证

      默认关闭,开启后,可增强数据一致性校验,但是可能会降低传输速度。

      开启SSL加密传输

      默认开启。使用SSL加密传输迁移数据可以提升数据的安全性,同时保证数据的完整性。

      许可证类型

      选择许可证类型。

      • 阿里云(默认值):目前仅支持提供微软Windows Server许可证,迁移后在中国香港及海外地域使用镜像创建ECS实例时会收取镜像License费用,且会自动激活,具体费用以创建实例时显示的信息为准。

      • 自带许可自带许可(Bring Your Own License,简称BYOL) 迁移上云目前主要包括Microsoft、Red Hat Enterprise LinuxSUSE Linux Enterprise Server。迁移后使用镜像创建ECS实例时不会收取镜像License费用,请您使用自带许可证进行激活。

        说明

        如果您已创建了ECS实例,阿里云支持指定ECS实例快速购买Red Hat Enterprise Linux、SUSE Linux Enterprise Server等软件许可证。具体操作,请参见ECS实例购买软件许可证

      镜像检测

      镜像检测功能主要检测镜像是否为有效镜像、镜像是否可以创建出功能齐全的ECS实例等。您可以在创建服务器迁移和VMware无代理迁移任务时使用镜像检测功能。

      镜像检测可以帮助您快速发现迁移后镜像或实例存在的潜在问题,并提供修复方案,使其符合阿里云标准,提升启动实例成功率。

      更多信息,请参见配置镜像检测

      标签

      为迁移任务绑定标签键值,便于查询与管理迁移任务。更多信息,请参见使用标签管理迁移源和迁移任务通过标签实现精细化权限管理

      说明

      同一个迁移任务最多可绑定20个标签。

      中转实例规格

      可根据实际需求选择中转实例规格。当目标类型选择云服务器镜像时,才会出现此参数。

      • 自动选择中转实例规格:系统会选择该实例规格创建中转实例。若该实例规格库存不足,则迁移任务创建失败。

      • 不选择中转实例规格:系统默认会按照顺序选择实例规格来创建中转实例。

      重要

      为避免迁移出错,请在迁移过程中请勿停止、启动、重启或者释放中转实例。迁移完成后,该实例会自动释放。

      上报诊断日志

      自动上传SMC客户端日志到SMC服务端,用于报错诊断分析,便于迁移出错时定位问题,该功能默认开启。

      SMC客户端日志一般保存于安装目录的/smc/go2aliyun_client*/Logs下。

  3. 在弹出的对话框中,仔细阅读迁移提示后,单击我确认我已知悉

  4. 跨账号/同账号迁移页面,查看迁移实时状态。

    如果您开启了迁移演练,SMC将先执行迁移演练。传输耗时受数据量和网络带宽等因素影响,请耐心等待迁移任务完成。

    image

    说明
    • 速度:指每秒传输的迁移数据量(即压缩前数据的传输速度)。若在创建迁移任务时设置压缩率大于0,该显示速度将大于实际网络传输速度(即压缩后数据的传输速度)。

    • 剩余同步时间:剩余同步时间=(总数据量-已传输数据量)/速度。

    • 若传输速度过小无法满足计划,您可以考虑临时提升源服务器和目标服务器的固定带宽。更多信息,请参见评估迁移时间与测试传输速度

    订阅迁移出错事件、修改迁移、暂停迁移,具体操作如下:

    • 为避免迁移任务出错导致迁移流程阻塞,您可在云监控中订阅SMC迁移任务出错事件通知,以便及时收到短信和邮件。

    • 在迁移任务状态为同步中时,您也可以根据实际需求,对迁移任务执行以下操作:

      • 编辑迁移任务:在操作列单击修改迁移,修改传输限速、压缩率、Checksum验证等参数。

      • 暂停迁移任务:在操作列单击暂停迁移,暂停迁移。

  5. (可选)查看迁移详情信息。

    在目标迁移源的迁移源ID/名称列,单击迁移源ID,即可查看迁移详情信息。

验证迁移结果

  • 迁移实时状态已完成时,表示迁移成功。

    • 如果选择迁移的目标类型云服务器镜像

      迁移成功后会生成阿里云自定义镜像,您可以在底部滚动条使用鼠标向右滑动,在迁移交付物列,单击查看报告,查看镜像检测结果。更多说明,请参见查看镜像检测结果

      image

      手动验证迁移结果(推荐)

      您可以在操作列,单击创建实例,系统跳转到ECS控制台创建ECS页面并默认选中创建的自定义镜像。创建ECS实例的具体操作,请参见使用自定义镜像创建实例

      image

      自动验证迁移结果

      说明

      使用该功能需要满足以下条件:

      • 验证时系统会通过自定义镜像创建按量收费的临时实例,需要确保阿里云账号余额大于等于100元。

      • 需要在实例内部安装云助手插件,需要实例系统版本支持。具体操作,请参见安装云助手Agent

      该功能将使用阿里云提供的OOS模板ACS-SMC-CreateAndVerifyInstance,自动验证迁移任务生成的镜像能否成功创建ECS实例,并正常启动。

      1. 操作列单击验证迁移结果

        image

      2. 在弹出的对话框中了解验证流程,并单击立即验证

        您也可以单击自定义验证脚本参数,手动配置参数进行验证。

      3. 验证迁移结果列,查看验证结果。

        • 验证通过:表示迁移结果无异常。您可以单击详情了解验证结果。

        • 验证未完成:表示迁移结果存在异常。您可以单击查看原因,了解迁移任务出错的原因,并根据原因排查问题。

        您也可以单击操作列...,并单击前往OOS查看历史验证获取OOS模板的历史执行信息。

    • 如果您选择迁移的目标类型云服务器实例时,可以在操作列,单击查看目标实例,跳转到目标ECS实例页面,查看目标ECS实例。

    迁移服务器后,为确保业务正常运行,您需要执行以下操作:

  • 如果迁移演练状态为image.png,表示迁移演练失败。

    您需要查看演练报告并修复严重的演练项后,重试迁移演练。更多信息,请参见配置迁移演练

  • 迁移实时状态出错时,表示迁移任务出错。

    此时,您需要排查问题后重试:

    1. 操作列,单击排查错误,根据错误码和错误信息提示修复问题。更多信息,请参见SMC FAQ排除报错

    2. 修复问题后,在操作列,单击重试迁移。系统会从上一次结束的进度处继续迁移。

      重要

      如果中转实例已被释放,需要重新迁移。具体操作,请参见误释放了中转实例怎么办

清理资源

迁移至云服务器镜像

迁移时,SMC会在您的阿里云目标账号下创建一台名称为No_Delete_SMC_Transition_Instance的临时按量付费中转实例,用于辅助迁移。您需要根据迁移是否成功选择是否需要手动清理:

  • 迁移成功:中转实例会自动释放,您无需手动清理。

  • 迁移出错:中转实例会随迁移任务一直存在并产生费用。您可以通过以下方式释放,避免不必要扣费:

    • 如果您已确认不再使用该迁移任务,单击迁移源ID,在迁移任务的操作列,单击清理迁移,通过删除迁移任务自动清理中转实例。

    • 手动释放中转实例

迁移至目标实例

迁移时,SMC会在目标实例下创建一块名称为SMC_Temp_Disk的临时按量付费中转云盘,用于辅助迁移。您需要根据迁移是否成功选择是否需要手动清理该中转云盘:

  • 迁移成功:中转云盘会自动释放,您无需手动清理。

  • 迁移出错:中转云盘会随迁移任务一直存在并产生费用。您可以选择以下方式释放,避免不必要的扣费:

    • 如果您已确认不再使用该迁移任务,单击迁移源ID,在迁移任务的操作列,单击清理迁移,通过删除迁移任务自动清理中转云盘。

    • 手动释放中转云盘

相关文档

  • 若需多次迁移增量数据,可在首次全量迁移完成后,按自定义时间间隔执行多次增量迁移,将源服务器产生的增量数据同步至阿里云,从而减少业务停机时间和最终交割时间。具体操作,请参见服务器增量迁移

  • 如需将 ECS 实例过户至其他阿里云账号并保留公网 IP,请参见ECS服务器过户

  • 常见问题及修复方案,请参见常见问题FAQ故障排除