全部产品
阿里云办公

跨阿里云账号下的实例迁移同步

更新时间:2018-02-24 14:09:16

数据传输DTS支持两个阿里云账号下的实例进行数据迁移同步。为了实现这个功能,源实例所属阿里云账号需要将相关授权给目标实例所属阿里云账号,然后使用目标实例所属阿里云账号登录DTS控制台进行任务配置。
本小节介绍,如何通过RAM进行跨账号授权,以实现不同阿里云账号下的实例间的数据迁移同步。

DTS支持的跨账号迁移同步功能

DTS能够支持的跨账号迁移同步功能包括:

  • 数据迁移

    • RDS实例->RDS实例
    • RDS实例->DRDS实例
    • RDS实例->PetaData实例
    • RDS实例->OceanBase实例
    • RDS实例->ECS自建数据库
    • RDS实例->有公网IP的自建数据库
  • 数据同步

    • RDS实例->RDS实例
    • RDS实例->MaxCompute(原ODPS)实例
    • RDS实例->Datahub(流计算使用)实例
    • RDS实例->分析型数据库AnalyticDB

出于安全考虑,进行跨账号的云资源之间的数据迁移前,需要先进行权限授权。假设迁移源实例所属账号为A,目标实例所属账号为B,下面介绍需要授权的内容:
(1) 源实例所属账号A授权DTS访问它的云资源
(2) 源实例所属账号A授权目标实例所属账号B在DTS服务中访问A的云资源

下面详细介绍授权流程。

源实例所属账号A授权DTS访问它的云资源

首先,源实例所属账号A需要授权DTS访问它的云资源。具体的授权流程如下:

使用账号A登陆阿里云官网,然后进入DTS控制台。如果账号A未授权过DTS访问它的云资源,那么会弹出如下的授权入口。服务角色授权入口

点击前往RAM角色授权,进入授权界面。

服务角色授权

在授权界面中,点击同意授权 完成将访问云资源的权限授权给DTS服务的操作。

如果登陆到DTS控制台时,未出现上面的授权请求界面,说明A账号已经进行过授权操作。

源实例所属账号A授权目标实例所属账号B在DTS服务中访问A的云资源

当账号A将云资源访问权限授权给DTS服务后,还需要授权B账号在DTS服务中访问A的云资源。
这个授权操作,是通过RAM的用户角色实现的。在配置迁移任务时,源实例需要配置账号A的账号ID以及授权角色名,配置内容如下图所示。

跨账号配置信息

上图中, RDS所属阿里云账号 为源RDS所属阿里云账号的账号ID,可以到账号管理的 安全设置 界面获取
账号ID

角色名称 为账号A授权账号B在DTS服务中访问其账号的云资源的角色名称。下面会介绍授权角色的创建流程。

跨账号角色授权

本小节介绍如何使用RAM进行跨阿里云账号授权,授权另外一个阿里云账号在DTS中访问自己的云资源。
下面就以需要将账号A下面的RDS实例迁移到账号B下的云资源为例,介绍角色授权过程。

角色创建

  1. 使用账号A登录RAM管理控制台,进入角色管理界面,点击页面右上角的 新建角色,开始创建跨账号授权角色。
  2. 第一步的角色类型,选择用户角色
  3. 受信云账号,选择 其他云账号,同时,受信云账号ID 配置目标实例所属阿里云账号即账号B的账号ID

受信云账号(4) 第四步,配置角色名称,这个名称就是DTS同步作业配置过程中,需要填写的角色名称。

角色授权

角色创建完成后,需要修改角色授权策略,包括:
(1) 受信云账号,限制受信云账号 只能在DTS 控制台访问自己的云资源。 具体修改步骤如下:
1) 在角色管理界面,点击 刚创建角色 后面的 管理 按钮,进入角色管理界面。角色管理入口2) 在角色管理界面,点击右上角的 编辑基本信息,进入角色编辑框,在编辑框中,修改Principal,添加service定义:

  1. "Service": [
  2. "受信阿里云账号ID@dts.aliyuncs.com"
  3. ]

受信云账号的账号ID,即最后配置DTS同步作业的阿里云账号ID。dts.aliyuncs.com 为DTS服务代号。假设配置DTS同步作业的阿里云账号ID为:1218522260143989,那么service定义为:

  1. "Service": [
  2. "121852226014398@dts.aliyuncs.com"
  3. ]

所以,完整的角色定义如下:

  1. {
  2. "Statement": [
  3. {
  4. "Action": "sts:AssumeRole",
  5. "Effect": "Allow",
  6. "Principal": {
  7. "RAM": [
  8. "acs:ram::1218522260143989:root"
  9. ],
  10. "Service": [
  11. "1218522260143989@dts.aliyuncs.com"
  12. ]
  13. }
  14. }
  15. ],
  16. "Version": "1"
  17. }

(2)角色授权,授权角色能够源实例所属云账号下的资源

当受信云账号B配置完成后,需要修改角色的授权策略,将源账号A下的部分云资源的访问权限授权给角色,这样DTS可以扮演这个角色访问A账号下的云实例。修改步骤如下:

1) 在角色管理界面,点击 刚创建角色 后面的 授权 按钮,进入角色授权界面。
角色授权入口

2) 在精确策略搜索框中,搜索AliyunDTSRolePolicy,将这个系统策略授权给角色。

精确授权

至此,完成跨账号授权角色的创建及授权。

完成权限授权后,即可以开始配置跨账号迁移同步任务。配置迁移同步任务时,源实例信息中的角色名称 即为上面创建的角色名称。

本文导读目录