AWS S3 迁移教程
Agent 半托管迁移
操作场景
Agent 半托管迁移模式中,用户需要手工在源数据云厂商的服务上部署 Agent,Agent 通过内网拉取源数据,并推送到腾讯云对象存储 COS。
如果源数据厂商与腾讯云 COS 间已经拉通专线,Agent 半托管迁移模式不会产生出流量费用,因此建议已经部署了专线的用户采用此模式进行迁移。
下文将详细介绍当源对象存储部署在AWS S3时,如何配置 Agent 半托管迁移任务,实现数据迁移。
准备工作
AWS S3
1.专线准备确认:
Agent 半托管模式如果是通过专线迁移,需要确保AWS云侧主机上使用的 COS SDK,可经过专线访问 COS,迁移前请与商务经理确认。
2.创建 AWS IAM账号并授予相关权限:
i. 登录AWS 控制台。
ii. 在导航窗格中,选择用户,然后选择添加用户。为新用户键入用户名。
iii. 选择此组用户将拥有的访问权限类型。选择以编程方式访问和访问 AWS 管理控制台。
iv. 选择 Next: Permissions (下一步: 权限)。在 Set permissions 页面上,指定您要向新用户分配权限的方式。授予IAM账号存储空间读写权限。
v. 选择Create user
vi. 要查看用户的访问密钥(访问密钥 ID 和秘密访问密钥),请选择您要查看的每个密码和访问密钥旁边的显示。要保存访问密钥,请选择下载 .csv,获取AccessKeyID 和 AccessKeySecret。
腾讯云对象存储 COS
1.创建目标存储空间:
创建目标存储空间,用于存放迁移的数据。详情请参见创建存储桶。 2.创建用于迁移的子用户并授予相关权限:
i. 登陆腾讯云控制台。
ii. 搜索【访问管理】或在账号信息下拉菜单中单击进入访问管理页面。
iii. 在左导航栏中单击 【用户】 > 【用户列表】 进入用户列表页面。
iv. 新建子用户,勾选编程访问及腾讯云控制台访问。
v. 搜索并勾选QcloudCOSAccessForMSPRole及QcloudCOSFullAccess策略。
vi. 完成子用户创建并保存子用户名,访问登陆密码,SecretId,SecretKey。
说明:
迁移服务也可以使用主账号操作,但是出于安全考虑,建议新建子账号并使用子账号API密钥进行迁移,迁移完成后删除。
迁移限速
MSP 迁移工具提供了限制 QPS(对象存储模式)和带宽限速(URL 列表模式)。用户在使用 Agent 迁移的情况下,也可以在迁移服务器上进行限速操作,同时在 MSP 中创建任务时选择“不限速”。
1. 执行如下命令,查看网卡序列号。
2. 执行如下命令,测试限速前的下载速度。
3. 执行如下命令,安装 iproute 工具(默认 Centos 7.x 已安装,此步可跳过)。
4. 执行如下命令,将 eth0 网卡限速为50kbit。
[root@VM_10_12_centos ~]# /sbin/tc qdisc add dev eth0 root tbf rate 50kbit latency 50ms burst 1000
说明:
n eth0 为网卡序号,由第1步查看网卡获取。
n 如果需要限速10M,则将50kbit改为10Mbit。
5. 限速后测试,执行如下命令,验证下载速度是否已被限制。
6. 若您需要解除限速,则可以执行如下命令,即可解除限速。
4. 实施迁移
1. 在迁移源一侧建立用于迁移的临时服务器(主控服务器)。
因为建立迁移任务时需要填写 Agent 主控服务器的 IP 地址(内网 IP 地址,用于与迁移集群中的 Worker 服务器通信),因此在建立迁移任务之前,需先在AWS上准备一台操作系统为 CentOS 7.x 64位的云服务器。
2. 在腾讯云 MSP 中建立迁移任务。
i. 在“选择迁移模式”中的“模式选择”部分,选择“新建迁移任务后手动下载 Agent 启动迁移”。
ii. 在“主节点内网 IP”部分,填写AWS上创建的服务器内网 IP 地址(例如:172.XXX.XXX.94)。
说明:
若迁移源与目标源有内容不同,名称相同的文件,建议在【同名文件】配置处选择【跳过(保留目标桶中已有的同名文件)】,系统默认选择【覆盖(源桶中的文件会覆盖目标桶中的同名文件)】。
若在迁移过程中对象(文件)内容有变化,需要进行二次迁移。
3. 所有参数填写完毕后,单击【新建并启动】。需要注意的是,在 Agent 模式下,此时任务虽已创建成功但并未运行,需要按以下步骤在AWS主控服务器上手工启动 Agent。
4. 在主控服务器上部署和启动 Agent。
i. 解压 Agent 工具包(目录无特殊要求)。
ii. 修改配置文件。
./agent/conf/agent.toml
secret_id = '此处填写腾讯云 API 密钥 AccessKey'
secret_key = '此处填写腾讯云 API 密钥 SecretKey'
iii. 启动 Agent.
Agent 会定时自动从 MSP 平台获取任务的详细配置信息,如果创建多个迁移任务无需重复启动 Agent。
5. 扩充迁移集群(增加 Worker 服务器)。
Agent 模式支持分布式迁移(多服务器协同),如果希望进一步提高迁移速度,在有可用带宽的情况下可以增加 Worker 服务器加入到迁移:
Worker 服务器必须与 master 服务器互通。
如果使用专线迁移,需要确保 Worker 服务器可通过专线直接访问 COS。
Worker 服务器可以是任意配置,但建议与 master 保持一致。部署和启动 Agent 的方式与 master 服务器完全相同(同样需要修改 agent.toml 中的 secret_id 和 secret_key),因新建任务的时候已经指定了 master 服务器,新加入的 agent 均被作为 Worker 节点与 master 服务器通信获得任务。
Worker 服务器可以随时加入迁移集群,但建议创建任务之前将所有的 Worker 服务器与 master 一同创建并配置和启动 Agent,以便 master 启动任务时可以更有效的进行分片调度。
5. 预估文件迁移时间
迁移速度由迁移过程中涉及到的每一个环节的最低速度决定,同时受到网络传输速度和最大并发数影响。影响因素有:
|
| 数据源的读取速度因不同的服务商而不同,通常: 传输速度在50Mbps - 200Mbps之间。 文件读取并发在500 - 3000之间(大量小文件的传输受并发限制)。 |
| |
| 腾讯云对象存储 COS:写入传输速度200Mbps,写入并发500 - 800之间。 整体迁移速度会是6MByte - 25MByte(即21GB/小时 - 87GB/小时)之间。 |