media-migration 工具为 veImageX 文件批量迁移与上传工具,可以将一个文件夹中的文件递归式地上传到指定的 veImageX 服务中。您可以通过本文档来帮助您使用迁移工具将本地的海量历史数据快速迁移至 veImageX ,提高迁移效率和稳定性。
发版历史 | 更新内容 |
---|---|
2023-05-25 | bugfix,修复文件去重逻辑 |
2023-04-11 | 支持覆盖上传 |
2023-03-14 |
|
2021-04-08 |
|
2021-01-18 |
|
迁移工具的功能简述如下:
支持上传指定根目录下所有文件,但不上传空文件夹。需要注意的是,本工具会处理 .
开头的项目;
支持跨平台运行,支持 Linux、Windows 、Mac 操作系统和开源 OpenBSD 系统;
支持断点续传,即使程序被关闭,也可以通过重新启动并使用相同的参数继续上传任务;
支持并行上传,可将多个资源同时上传;
支持上传限速;
支持失败重传,可在上传失败的情况下二次重传。
适用于在本地 IDC 或者在本地磁盘的数据使用本工具迁移到 veImageX 存储中,同时通过本地服务器挂载云存储的资源迁移 veImageX 存储也可以使用本工具。
说明
存量数据的上传建议使用本工具完成,而增量数据则建议直接上传至 veImageX 的服务进行托管。
素材托管服务:支持任意合法资源的上传、分发和托管;
图像处理服务:支持任意合法资源的上传、分发和托管,还支持对图像文件执行图像实时处理。
支持的最大并发量为 128。
支持上传任意类型的合法文件资源。
暂无限制可上传文件大小,具体迁移时间根据您实际环境条件决定。
进入火山引擎首页,单击页面右上角的免费注册。
参照指引信息完成火山引擎账号的注册。
登录火山引擎控制台。
单击页面左上角的产品与服务,选择 veImageX 产品,进入开通页面。
单击立即开通按钮。
根据指引信息,开通 veImageX。
登录 veImageX 控制台。
在左侧导航栏,选择服务管理 > 新建服务。
在新建服务弹窗,根据提示信息,按照您的业务需求填写服务配置项,完成图片服务的创建。
说明
创建服务时需要根据您所需要的数据中心的位置来选择区域。通常业务范围在国内,地区选择国内即可。
每个服务之间的资源是隔离的。如果您需要创建多个服务,则每个服务的服务 ID,将作为该服务的唯一标识。
服务创建成功后,地区、服务类型不可变更。
返回新建服务页面,查看并记录 veImageX 服务的服务 ID。
保证已添加的服务域名指向 veImageX 平台,您需要将域名解析到平台分配的 CNAME 地址。服务域名将在 24 小时内审核,审核通过后才会显示 CNAME 值,请耐心等待;如有问题,请联系我们。
在服务管理的域名列表中找到添加的域名,复制对应的 CNAME 地址。
使用域名服务对应的 DNS 解析平台,添加域名 CNAME 解析记录。
您可使用 ping 或 dig 的方式查验域名解析结果。如果域名 CNAME 地址与域名管理页面结果一致,则表示成功解析,可以正常使用该域名。
返回服务管理页面,记录已经过 CNAME 解析的域名。
登录 veImageX 控制台。
点击您的账号,在下方的菜单栏中单击 API 访问密钥。
在密钥管理页面,点击 Secret Access Key 下方按钮,输入短信验证码后查看并记录 AccessKey ID 以及 AccessKey Secret Key。
请根据您的业务需求,提前获取迁移目标文件路径。
请根据实际业务操作系统,下载相应的迁移工具。
操作系统 | 系统架构 | 下载地址 |
---|---|---|
Windows | 386 | |
AMD 64 | ||
Mac | AMD 64 | |
ARM 64 | ||
Linux | 386 | |
AMD 64 | ||
ARM | ||
ARM 64 | ||
MIPS | ||
MIPS 64 | ||
MIPS 64 LE | ||
MIPSLE | ||
PPC 64 LE | ||
OpenBSD | 386 | |
AMD 64 | ||
ARM | ||
ARM 64 |
完成迁移工具包下载后,请将工具包解压缩并保存在您的本地目录下。
在您工具包本地文件找到并打开 config.json
文件,填入在迁移准备获取的 ACCESS_KEY_ID
、SECRET_ACCESS_KEY
、SERVICE_ID
和 DOMAIN
。示例如下所示:
{ "ACCESS_KEY_ID": "AKLTY2R****YmJmYWI", "SECRET_ACCESS_KEY": "AKLTNjQ****zNkOTc==", "SERVICE_ID": "u3q***7wk", "DOMAIN": "test.example.com" }
Windows 系统
在Windows 操作系统中,在搜索框搜索命令提示符( 或 Command Prompt)并打开应用,在命令行执行cd
到 media-migrate
可执行文件所在目录路径,例如:cd C:\Users\user\Documents
。
在命令行输入 ./media-migration -f {绝对路径}
即可开始向 veImageX 上传目录内所有文件。
您可在 veImageX 控制台对应服务的资源管理页面查看已上传的文件。
Linux 和 Mac 系统
在 Linux 和 Mac 操作系统中,打开终端程序(例如,Linux 中的 Terminal 或 Mac 中的 Terminal.app),在命令行执行cd
到 media-migrate
可执行文件所在目录路径,例如:cd /home/user/documents
。
在命令行输入 ./media-migration -f {绝对路径}
即可开始向 veImageX 上传目录内所有文件。
您可在 veImageX 控制台对应服务的资源管理页面查看已上传的文件。
迁移工具支持配置参数如下所示:
-data-file string 进度存储文件,file 或者 *.db (默认值为 "processfile") -up string 配置上传速率,支持单位:kbps、mbps,默认不限制 (默认值为 "0 kbps") -down string 配置下载速率,支持单位:kbps、mbps,默认不限制 (默认值为 "0 kbps") -driver string 进度存储驱动,支持取值:file(默认)、sqlite3 。上传过程中会记录日志文件,通过日志文件可以看到上传具体的状态以及上传后的访问地址。 -f string 迁移根目录,默认为 /tmp -h 帮助 -p string store key 前缀,默认为空 -parallel int 同时上传文件数量,默认值为 40。您可以根据运行服务器的带宽和性能,设置并发上传文件数量,提高迁移速度。 -region string veImageX 存储区域: cn-north-1:(默认)上传的国内服务,ap-singapore-1:上传的新加坡服务 -replace 若目标存储服务中存在相同的存储 key,则先删除原有资源,再上传该数据至目标服务。
在迁移进行中,运行目录下会产生两个日志文件,您可通过查看日志数据,获取迁移文件结果和本工具的运行状态。
processfile.txt
用来记录任务进度的文件,该文件中保存着当前任务已经上传过的文件的清单。可以使用参数 -data-file
来指定其他文件。
upload.log
用来记录工具的运行信息,如果本工具运行异常请在提交工单时附带日志文件。
工具支持上传时断点续传,若文件上传中途退出或者因为服务故障停止,您可重新运行工具,此时未上传完的文件将进行续传。
不支持,系统将会报 upload failed, no file uploaded 错误。
由于 veImageX 存在 CDN 资源缓存,因此如果您需要立即看到覆盖后的最新资源,请参考刷新缓存将最新资源缓存至 CDN 节点。