本文介绍数据迁移之前的准备工作。
步骤一:创建RAM用户并添加权限
该RAM用户用于迁移使用。在创建角色和进行迁移实施操作时,需要在该用户下进行操作。请尽量在源Bucket或者目的Bucket所在的主账号下创建该RAM用户。
如果没有创建RAM用户,可以创建RAM用户并授权。
如果没有创建RAM用户,可以创建RAM用户并授权。
登录主账号所在的RAM控制台,在用户页面,单击刚创建的RAM用户 操作 列的 添加权限。
系统策略:管理OSS在线迁移服务的权限(AliyunOSSImportFullAccess)。
自定义权限策略:该策略必须包含
ram:CreateRole
、ram:CreatePolicy
、ram:AttachPolicyToRole
、ram:ListRoles
权限。可参考创建自定义权限策略进行权限管理,以下是相关的权限策略脚本代码:
{ "Version":"1", "Statement":[ { "Effect":"Allow", "Action":[ "ram:CreateRole", "ram:CreatePolicy", "ram:AttachPolicyToRole", "ram:ListRoles" ], "Resource":"*" } ] }
步骤二:源Bucket授权
请根据源Bucket是否归属于本账号,完成相应的操作。
下文所述的“本账号”是指用于操作迁移服务控制台的账号。“属于”一词表示该Bucket与本账号均在同一主账号下。
源Bucket归属于本账号
一键自动授权:
强烈建议您使用迁移控制台自动授权角色进行一键授权操作,该操作请在迁移实施 > 步骤二 > 授权角色 中实施。
手动授权:
手动授权适用于具有特定需求的场景,例如:
为了有效管理多个源Bucket,期望通过一个角色实现对多个Bucket的批量授权。
当前账户现有的角色数量即将达到上限,因此不希望再创建过多额外的RAM角色。
其他不适合或无法使用一键自动授权的场景。
1、创建用于迁移数据的RAM角色
登录上文创建的RAM用户所在的RAM控制台,在角色详情页面单击 创建角色。
可信实体类型选择 阿里云服务。
角色类型选择 普通服务角色。
输入 角色名称(角色名称务必全部小写)
受信服务选择 在线迁移服务。
2、源Bucket授权
在角色页面,单击刚创建的RAM角色 操作 列的 新增授权。
自定义权限策略:该策略必须包含
oss:List*
、oss:Get*
权限。
可参考创建自定义权限策略进行权限管理,以下是相关的权限策略脚本代码:
以下权限策略仅供您参考,其中<mySrcBucket>为本账号下的源Bucket名称,请根据实际值替换。
关于OSS权限策略的更多信息,请参见RAM Policy常见示例。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"oss:List*",
"oss:Get*"
],
"Resource": [
"acs:oss:*:*:<mySrcBucket>",
"acs:oss:*:*:<mySrcBucket>/*"
]
}
]
}
源Bucket不归属于本账号
1、创建用于迁移数据的RAM角色
登录上文创建的RAM用户所在的RAM控制台,在角色详情页面单击 创建角色。
可信实体类型选择 阿里云服务。
角色类型选择 普通服务角色。
输入 角色名称(角色名称务必全部小写)。
受信服务选择 在线迁移服务。
2、源Bucket授权
在使用Bucket Policy按语法策略进行授权时,新添加的策略会覆盖已有的策略。请确保新添加的策略包含已有策略的内容,否则可能导致关联已有策略的操作失败。
使用源Bucket所属账号登录OSS管理控制台。
在左侧导航栏,单击 Bucket 列表,选择对应Bucket。
在左侧导航栏,选择 权限控制 > Bucket 授权策略。
在按语法策略添加 中,增加自定义Bucket Policy,然后点击 编辑并保存。
授予RAM角色列举并读取该Bucket下所有资源的权限
以下权限策略仅供您参考,其中<otherSrcBucket>填写 源Bucket名称,<otherUid>填写 源Bucket归属的主账号UID,<myUid>填写 迁移控制台主账号UID,<roleName>填写 上文刚创建的角色名称,请根据实际值替换。关于OSS权限策略的更多信息,请参见RAM Policy常见示例。
{
"Version": "1",
"Statement": [
{
"Effect": "Allow",
"Action": [
"oss:List*",
"oss:Get*",
"oss:Put*",
"oss:AbortMultipartUpload"
],
"Principal": [
"arn:sts::<myUid>:assumed-role/<roleName>/*"
],
"Resource": [
"acs:oss:*:<otherUid>:<otherSrcBucket>",
"acs:oss:*:<otherUid>:<otherSrcBucket>/*"
]
}
]
}
步骤三:解冻源存储空间待迁移数据
当您源端为归档类型的数据,迁移前需要您提前进行解冻操作,待解冻完成后再创建迁移任务,解冻时请注意如下事项:
请您务必完成解冻操作后再创建源数据地址和迁移任务。
请您根据待迁移的数据总量确保解冻时长,以防迁移期间数据再次变成冻结状态。
解冻操作会收取数据取回的费用,部分解冻服务收费较高。具体计费规则可咨询您的源端存储服务提供商。
在线迁移服务并不会对源端数据执行解冻操作。若您源端有未解冻、解冻中的文件,则这些文件都会迁移失败。
阿里云OSS解冻文件的操作步骤,请参见解冻文件。