本文介绍如何在存储迁移服务控制台使用公共网络创建迁移任务。
背景信息 存储迁移服务支持以下源端云服务商或数据源类型:
阿里云 腾讯云 华为云 七牛云 金山云 谷歌云 其他 S3 协议对象存储 对象存储-火山引擎注意
存储迁移服务只支持在相同地域的火山引擎存储桶之间迁移数据。
迁移文件时,默认支持迁移文件的 HTTP 标准属性,具体包括 Content-Type、Content-Disposition、Content-Encoding、Content-Language、Cache-Control 和 Expires。
前提条件 请确保您已注册火山引擎账号并完成实名认证,具体步骤,请参见账号注册 及实名认证 。 已获取数据源端相关信息,例如访问 AccessKey ID 及Secret AccessKey、Endpoint、桶名称等。 已在对象存储创建存储桶,具体步骤,请参见创建存储桶 。
创建迁移任务 登录存储迁移服务控制台 。
在迁移任务列表 页面,单击创建迁移任务 。
在选择网络 页面,配置以下参数。
参数
说明
任务名称
指定该迁移任务的名称,命名规则如下:
3~32 个字符之间。 只能包含小写字母、数字、中划线(-)。 名称不能以中划线(-)开头或结尾。 网络类型
选择公共网络 。
单击下一步:设置源端及目的端 ,配置如下源端及目的端参数。
源端类型 为对象存储
参数
说明
源端类型
数据源端的类型,本场景下选择对象存储 。
数据源
选择具体的数据源:
阿里云 :将阿里云上的数据迁移至火山引擎对象存储 TOS。腾讯云 :将腾讯云上的数据迁移至火山引擎对象存储 TOS。华为云 :将华为云上的数据迁移至火山引擎对象存储 TOS。七牛云 :将七牛云上的数据迁移至火山引擎对象存储 TOS。金山云 :将金山云上的数据迁移至火山引擎对象存储 TOS。谷歌云 :将谷歌云上的数据迁移至火山引擎对象存储 TOS。其他 S3 协议存储 :兼容 S3 协议,并支持 AWS Signature V4 鉴权的对象存储均可使用。对象存储-火山引擎 :将火山引擎对象存储的数据迁移至相同地域的火山引擎对象存储 TOS。注意
数据源为对象存储-火山引擎 时,目的端只可以选择与源端相同 Region 的存储桶,如果您需要跨区域迁移数据,请使用对象存储的跨区域复制功能,详细信息,请参见跨区域复制 。
Access Key ID
用于访问源端对象存储的 AccessKey ID。
Access Key Secret
用于访问源端对象存储的 AccessKey Secret。
源端桶选择方式
设置选择源端桶的方式,说明如下:
获取可选源端桶并选择 :经过您的授权,DMS 直接读取源端存储桶列表。您无需填写信息,单击刷新加载源端桶列表 后,即可在源端桶名 的列表中选择存储桶。输入源端桶名称 :手动输入源端桶名、源端 Region、Endpoint信息。源端桶名
指定要迁移的源端对象存储桶名称。
说明
您需要确保当前账号拥有源端存储桶的 HeadBucket、ListObjects 、HeadObject 和 GetObject 权限,否则会导致迁移结果不符合预期。
源端 Region
指定源端对象存储所在的 Region。
Endpoint
指定源端对象存储的访问域名,地址前需要输入 http:// 或 https://。
注意
Endpoint 不要携带存储桶名称,否则会导致源端连接失败。
指定迁移范围
包含
开启指定迁移范围 后,可以指定对象迁移的范围,支持通过指定对象或对象前缀来指定迁移范围。
前缀
支持以下三种方式指定对象前缀,说明如下:
指定前缀 :输入对象的前缀,单击添加字段 ,可以设置多个前缀,最多支持设置 10 个对象前缀。例如迁移源端桶中 user/data 目录下的所有对象,则需要设置对象前缀 为 user/data/ ,迁移源端桶中前缀为 event 的所有文件,则需要设置对象前缀 为 event 。上传文件 :如果您需要迁移的对象较多,您可以将对象前缀记录在文件中,然后将该列表文件上传至控制台,列表文件约束限制如下:
上传的列表文件必须为 txt
格式。 列表文件中每一行是一个对象前缀,多个对象前缀请换行输入。 上传的列表文件大小不能超过 1GB。 列表文件中的对象前缀需要符合 UTF-8 编码规则。 下载地址 :将对象前缀记录在列表文件中,然后填写带签名的且签名处于有效期内的对象前缀列表文件的公网访问地址。如果您的对象前缀列表文件较大,不适合使用浏览器上传,您可以将列表文件保存到对象存储,填写列表文件在对象存储的公网访问地址。对象
支持以下三种方式指定对象,说明如下:
手动输入 :输入完整路径的对象名称,不包含桶名,每一行只能包含一个对象名称,多个对象请换行输入,最多支持输入 1000 个对象。例如A桶下的 user/data/flower.png,则需要填写为 user/data/flower.png。说明
如果您想重命名文件,可通过对象名称 + 空格 + 对象新名称 的方式。例如您可以通过 a.jpg b.jpg
,将 a.jpg
文件重命名为 b.jpg
。
上传文件 :如果您需要迁移的对象较多,您可以将对象的名称记录在文件中,然后将该列表文件上传至控制台,列表文件约束限制如下:
上传的列表文件必须为 txt
格式。 列表文件中每一行是一个对象名称,多个对象请换行输入。 上传的列表文件大小不能超过 1GB。 列表文件中的对象名称需要符合 UTF-8 编码规则。说明
如果您想重命名文件,可通过对象名称 + 空格 + 对象新名称 的方式。例如您可以通过 a.jpg b.jpg
,将 a.jpg
文件重命名为 b.jpg
。
下载地址 :将对象的名称记录在列表文件中,然后填写带签名的且签名处于有效期内的对象列表文件的公网访问地址。如果您的对象列表文件较大,不适合使用浏览器上传,您可以将列表文件保存到对象存储,填写列表文件在对象存储的公网访问地址。排除
开启指定迁移范围 后,可以排除指定的对象,只迁移排除后剩余的对象。当前仅支持通过对象前缀来指定排除的对象,支持以下三种方式指定对象前缀,说明如下:
指定前缀 :输入对象的前缀,单击添加字段 ,可以设置多个前缀,最多支持设置 10 个对象前缀。例如排除源端桶中 user/data 目录下的所有对象,则需要设置对象前缀 为 user/data/ ,排除源端桶中前缀为 event 的所有对象,则需要设置对象前缀 为 event 。上传文件 :如果您需要排除的对象较多,您可以将排除的对象前缀记录在文件中,然后将该列表文件上传至控制台,列表文件约束限制如下:
上传的列表文件必须为 txt
格式。 列表文件中每一行是一个对象前缀,多个对象前缀请换行输入。 上传的列表文件大小不能超过 1GB。 列表文件中的对象前缀需要符合 UTF-8 编码规则。 下载地址 :将排除的对象前缀记录在列表文件中,然后填写带签名的且签名处于有效期内的对象前缀列表文件的公网访问地址。如果您的对象前缀列表文件较大,不适合使用浏览器上传,您可以将列表文件保存到对象存储,填写列表文件在对象存储的公网访问地址。
源端类型 为 URL列表
注意
当源端类型 为 URL列表 时,URL 列表文件中每个 URL 对应的文件大小不能超过 300G。 当源端类型 为 URL列表 时,URL 列表单行长度不能超过 65536 字符(64 KB)。 当前仅支持处理 UTF-8 编码的 URL 列表文件。 参数
说明
源端类型
数据源端的类型,本场景下选择 URL列表 。
上传URL列表文件
选择 URL 列表文件的上传方式:
手动输入 :直接输入文件 URL,约束限制如下:
以 http:// 或 https:// 开头,且需要包含一个 URL。 每一行只能包含一个 URL,多个 URL 请换行输入,最多支持输入 1000 个 URL。 上传文件 :如果您需要迁移的文件较多,您可以将 URL 记录在文件中,然后将该列表文件上传至控制台,列表文件约束限制如下:
上传的列表文件必须为 txt
格式。 列表文件中每一行是一个需要迁移的 URL,多个 URL 请换行输入。 上传的列表文件大小不能超过 1GB。 下载地址 :如果您的 URL 列表文件较大,不适合使用浏览器上传,您可以将 URL 列表文件保存到对象存储,然后选择下载地址 ,填写列表文件在对象存储的 URL 访问地址。下载地址支持以下两种文件地址获取方式:
选择文件列表 :设置源端数据授权模式 ,选择源端桶名 和源端文件名 ,DMS 会读取对应存储桶列表和文件。注意
仅源端数据源为当前火山引擎账号下的对象存储存储桶,且源端存储桶所在地域和目的端存储桶所在地域保持一致时,才可以使用文件列表的方式迁移数据。
填写访问地址 :填写带签名的且签名处于有效期内的 URL 列表文件的公网访问地址。说明
使用手动输入 或上传文件 迁移时,默认将 URL 路径(域名 / 后的部分)作为对象的名称。如果您想重命名文件,可通过 URL + 空格 + 对象文件名 的方式。例如您可以通过 http://xxx.xxx.xxx/xxx/a.jpg b.jpg
,将 a.jpg
文件重命名为 b.jpg
。
目的端参数
参数
说明
目的端类型
目的端类型,暂时只支持对象存储 (火山引擎 TOS)。
目的端写入模式
选择目的端写入模式,参数说明如下:
经典模式 :使用 AccessKey ID、AccessKey Secret 等信息迁移数据。跨服务授权模式 :使用跨服务授权模式迁移当前账号下的对象存储存储桶,可以不填写 AccessKey ID、AccessKey Secret 等详细信息。经过您的授权,数据迁移服务可直接读取存储桶列表、文件。注意
如果您使用了子账号创建迁移任务且选择了跨服务授权模式 ,您需要授予子账号创建 IAM 策略的权限,详细说明,请参见常见问题 。
Access Key ID
用于访问目的端对象存储的 AccessKey ID。
Access Key Secret
用于访问目的端对象存储的 AccessKey Secret。
目的端桶名
指定目的端对象存储的桶名称。
注意
如果源端数据源为对象存储-火山引擎 ,则目的端桶必须与源端桶处于相同地域。 您需要确保当前账号拥有目的桶的 HeadBucket、HeadObject、PutObject、ListObjects、CreateMultipartUpload、AbortMultipartUpload、CompleteMultipartUpload 和 UploadPart 权限,否则会导致迁移结果不符合预期。
单击下一步:设置任务参数 ,配置如下任务参数。
注意
单击下一步:设置任务参数 ,系统会自动校验源端连接信息,如果你设置的信息有误,会弹出权限预检提示 对话框,提示您源端或目的端权限不足,继续创建任务有可能导致迁移结果不满足预期。 当源端类型 为 URL列表 时,仅支持在设置任务参数 页面配置跳过归档对象 、跳过失败对象 、range-get迁移 、覆盖策略 、文件存储方式、流量控制和抽样校验 参数。
参数
说明
迁移增量文件
默认为关闭,开启后可自定义增量迁移参数,参数说明如下:
增量迁移间隔 :在存量迁移(即首次迁移)完成之后,每隔多长时间启动一次增量迁移任务,单位为小时,仅支持 1~24 的整数。增量迁移次数 :在存量迁移(即首次迁移)完成之后,执行增量迁移的次数,仅支持 1~30 的整数。跳过归档对象
设置是否跳过归档对象 ,默认开启,说明如下:
开启跳过归档对象 :迁移数据时,不迁移延迟访问存储类型的文件。 关闭跳过归档对象 :迁移数据时,迁移已解冻的延迟访问存储类型文件,不迁移未解冻的延迟访问存储类型文件。 说明
各个数据源的延迟访问存储类型如下:
阿里云:归档存储(Archive)、冷归档存储(ColdArchive) 腾讯云:归档存储(ARCHIVE)、深度归档存储(DEEP_ARCHIVE) 华为云:归档存储(COLD)、深度归档存储(DEEP_ARCHIVE) 七牛云:归档存储、深度归档存储 金山云:归档存储类型 其他 S3 协议存储:GLACIER、DEEP ARCHIVE。 对象存储-火山引擎:归档存储(ARCHIVE)、冷归档存储(COLD_ARCHIVE) 谷歌云的 Cloud Storage 没有延迟访问存储类型,如果您的数据源是谷歌云,无需设置跳过归档对象 参数。
跳过失败对象
迁移源端对象时,如果没有源端对象的权限,则该对象会迁移失败。您可以设置是否跳过失败对象 ,默认开启,说明如下:
开启跳过失败对象 :迁移过程中无论迁移失败多少个对象,都不会暂停迁移任务。 关闭跳过失败对象 :如果迁移过程中,出现连续迁移失败 20 个对象的情况,则会暂停任务并标记失败。 range-get迁移
设置是否开启 range-get迁移 ,默认关闭。开启 range-get迁移 后,DMS将支持断点续传的方式迁移文件,即在网络波动等情况下导致文件传输中断后,重新传输文件,DMS 会在文件断点处开始传输,避免从头传输文件产生额外流量,从而节省成本。
注意
仅源端类型 为 URL列表 时,才支持设置 rang-get迁移 参数。 开启 rang-get迁移 前,请确保源端支持 rang-get 迁移,否则 rang-get迁移 功能不会生效。 文件重命名
默认为关闭,开启后可设置文件重命名规则,文件重命名支持正则替换,您可以输入需要重命名的正则表达式规则以及需要替换的字符串。例如:
添加前缀 prefix-path/:需要设置正则表达式为 ^,替换文本为 prefix-path/。 修改前缀 prefix-old/ 为 prefix-new/:需要设置正则表达式为 ^prefix-old/,替换文本为 prefix-new/。 删除前缀 prefix-old/:需要设置正则表达式为 ^prefix-old/,替换文本为空。 修改后缀 .txt 为 .csv:需要设置正则表达式为 .txt$,替换文本为 .csv。 修改文件名 abc.jpg 为 aaa.jpg:需要设置正则表达式为 abc,替换文本为 aaa。 保留源端文件最后修改时间
设置是否开启保留源端文件最后修改时间 ,默认关闭。说明如下:
开启保留源端文件最后修改时间 :文件迁移到 TOS 后,TOS 控制台展示的文件修改时间为源端文件最后修改时间。 关闭保留源端文件最后修改时间 :文件迁移到 TOS 后,TOS 控制台展示的文件修改时间为文件上传时间。 注意
TOS 的生命周期管理功能根据文件上传时间计算文件过期删除、存储类型转换的时间。保留源端文件最后修改时间后,TOS 控制台展示的文件修改时间为源端文件最后修改时间,而不是文件上传时间。您将无法根据 TOS 控制台显示的文件修改时间判断文件的生命周期。详细介绍,请参见保留源端文件最后修改时间 。
带分隔符列举
由于部分源端存储桶的配置(例如开启桶加速的场景),TOS 只能获取到源端存储桶一级目录的文件。带分隔符列举可以获取到多级目录下的文件,说明如下:
开启带分隔符列举 :TOS 可以获取到源端存储桶多级目录下的文件,保证了迁移到 TOS 的文件完整性。 关闭带分隔符列举 :迁移文件的速度更快,但是在源端对象存储开启桶加速等场景下,有可能存在迁移到 TOS 的文件不全的问题。 覆盖策略
可指定当源端和目的端出现同名文件时的覆盖策略,策略说明如下:
全量覆盖 :针对同名文件,不做任何判断,直接用源端覆盖目的端。不覆盖 :针对同名文件,不做任何判断,直接跳过。根据最后修改时间覆盖 :当源端和目标端出现同名文件时,根据文件的 lastmodify
字段(最后修改时间)判断是否进行覆盖,仅当源端文件的最后修改时间晚于目的端文件最后修改时间时执行覆盖。文件存储方式
设置文件迁移至 TOS 的存储类型,支持选择全部使用标准存储 、保持原存储属性 、全部使用低频存储 、全部使用归档闪回存储 、全部使用智能分层存储 、全部使用归档存储 、全部使用冷归档存储 、全部使用深度冷归档存储 。关于 TOS 存储类型的详细介绍,请参见存储类型 。以下为保持原存储属性 和全部使用智能分层 的参数说明:
保持原存储属性 :迁移至 TOS 时,按照 S3 与 TOS 对应关系设置文件的存储类型,更多信息,请参见 迁移数据时 S3 与 TOS 的对应关系 。全部使用智能分层 :迁移至 TOS 时,文件将保存至智能分层高频访问层。说明
深度冷归档目前在 TOS 处于邀测状态,如果您想将迁移至 TOS 的文件存储类型设置为深度冷归档,请联系客户经理开白。 如果迁移源属于延迟访问存储类型,请在迁移前将该类型的状态转换为即时访问,否则该迁移源会迁移失败。 如果目的端与源端文件的可用区属性不同,默认以目的端为准。 当源端类型 为 URL 列表 时,不支持保持原存储属性。 迁移文件起始时间
设置需要迁移的文件的起始时间,参数说明如下:
迁移全部 :迁移源桶中所有的文件。指定起始时间 :设置起始日期后,将迁移该日期之后创建或修改的文件。流量控制
默认关闭,关闭时默认速率为 1000MB/s。
打开速率开关,单击添加字段 ,可设置迁移任务的流控时段和最大速率,速率限制说明如下:
最大速率默认为 100MB/s。 最大速率设置范围为 0MB/s~1000MB/s。 抽样校验
默认关闭,开启抽样校验 后,DMS 会从源端获取每个对象的 100 个字节,从目标端获取对应每个对象的 100 个字节,然后进行校验,确保源端和目标端的数据一致性。关于抽样校验的详细介绍,请参见数据一致性校验 。
注意
使用抽样校验功能会在源端产生额外的公网流出流量,由源端对象存储收取对应费用。
单击下一步:确定任务信息 ,在该页面检查迁移任务的各项参数。
参数检查无误后,阅读并勾选存储产品和服务条款 ,单击提交 。
注意
提交后,会弹出费用提醒 对话框。存储迁移服务本身不收取任何费用,但是从公网迁移数据到火山引擎会产生公网流量费用,费用由源站的存储服务提供商收取。
在费用提醒 对话框,单击已知晓,下一步 。
(可选)如果您选择了跨服务授权 ,您还需要在弹出的跨服务授权 对话框,单击确定 。
说明
任务创建完成后会自动启动,您可以在迁移任务列表 中查看该任务的创建时间、任务状态,此外,还可以在迁移任务列表 页面右上角单击自定义列表字段图标,选中存储量迁移进度 和文件数量迁移进度 ,查看迁移进度。