You need to enable JavaScript to run this app.
导航

部署迁移任务

最近更新时间2024.04.18 17:04:35

首次发布时间2023.08.14 18:05:40

下载迁移工具后,您需要部署迁移环境,才可以使用 TOS Import 工具。本文介绍如何使用 TOS Import 部署单机模式的迁移环境和分布式模式的迁移环境。

背景信息

TOS Import 工具支持单机部署和分布式模式,说明如下:

  • 单机部署:只会有一个 server 和一个 worker,且 server 和 worker 位于同一节点。迁移时,只能使用一个 worker 迁移文件。
  • 分布式部署:server 部署在主节点,每个节点上都会部署一个worker,这些节点都可以访问您待迁移数据与 TOS,即可以同时使用多个 worker 迁移文件。

分布式部署比单机部署的迁移总带宽更大,具体的迁移速度依赖于网络带宽、节点计算资源。当您迁移的文件数量级相对大的时候,推荐使用分布式部署。

前提条件

  • 已获取 Region 及 Endpoint 信息。关于 Region 及 Endpoint 信息的详细介绍,请参见地域及访问域名
  • 已获取访问密钥 Access Key ID 和 Secret Access Key 信息。具体操作,请参见查看 AKSK 信息
  • 已获取节点的 IP 地址、使用 SSH 连接子节点的用户名称、使用 SSH 连接子节点的密码或公钥。

    说明

    仅部署分布式部署需要获取子节点的 IP 地址、使用 SSH 连接子节点的用户名称等信息。

单机部署

  1. 下载 TOS Import 工具包。不同操作系统下的下载命令如下所示。

    • Linux

      wget  https://tos-tools.tos-cn-beijing.volces.com/linux/tos-import_v1.0.5.linux_x86.tar.gz
      
    • macOS

      wget  https://tos-tools.tos-cn-beijing.volces.com/darwin/tos-import_v1.0.5.mac.tar.gz
      
  2. 执行以下命令,解压 TOS Import 工具包至任意有读写访问权限的路径上。本文以解压到 /root/test 为例。

    tar -zxvf <工具包名称> -C /root/test
    
  3. 进入到 /root/test/tos-import/conf 目录,执行以下命令,在 server.yaml 文件中设置 work_dirmgr_port等参数,设置完成后保存并退出。

    vi server.yaml
    

    您可以根据实际情况修改以下参数:

    参数

    说明

    work_dir

    工具所在目录的绝对路径,本文需要设置为 /root/test/tos-import/

    mgr_port

    server 管理端口。tos-import 命令发送至该端口,默认为 19931

    说明

    server 管理端口请勿与其他端口冲突。

    server_port

    server 服务端口。该端口用于 server 与 worker 之间通信,默认为 19932

    说明

    server 服务端口请勿与其他端口冲突。

    log_level

    日志级别。该参数用于调整日志的打印级别。设置后,仅会打印高于该级别的日志。可选 TraceDebugInfoWarnErrorFatal,默认为 Info

    process_num_per_task

    迁移进程总数。所有 work 节点上的 executor 进程总数,默认等于 work 节点数量,至少为 1

    concur_per_process

    进程并发数。每个 executor 进程内的并发数,默认为 32

    failed_num_to_abort

    在连续的 X+1 个对象迁移失败后,暂停迁移任务,默认为 0。例如设置 failed_num_to_abort2,则连续 3 个对象迁移失败后,TOS Import 会自动暂停迁移任务。 取值说明如下:

    • failed_num_to_abort0时,只要有对象迁移失败,TOS Import 就会暂停迁移任务。
    • failed_num_to_abort 为负数时,迁移任务不会因为对象连续迁移失败而中断,将会一直迁移直至结束。

    说明

    failed_num_to_abort 参数用于设置连续迁移失败的对象数量,不包含断断续续迁移失败对象,且迁移过程中存在并发,暂停迁移任务后,迁移报表展示的失败对象数量可能大于 failed_num_to_abort 参数值。

  4. 进入到 /root/test/tos-import 目录,执行以下命令,部署迁移环境。

    ./tos-import deploy
    

    部署成功后,会启动一个常驻进程以及常驻进程对应的 pid 文件,且会返回当次部署信息。返回内容如下所示。

    Welcome To TOS Import! Deploy success!
    Deploy mode: Local.
    

分布式部署

  1. 下载 TOS Import 工具包。不同操作系统下的下载命令如下所示。

    • macOS

      wget  https://tos-tools.tos-cn-beijing.volces.com/darwin/tos-import_v1.0.5.mac.tar.gz
      
    • Linux

      wget  https://tos-tools.tos-cn-beijing.volces.com/linux/tos-import_v1.0.5.linux_x86.tar.gz
      
  2. 执行以下命令,解压 TOS Import 工具包至任意有读写访问权限的路径上。本文以解压到 /root/test 为例。

    tar -zxvf <工具包名称> -C /root/test
    
  3. 进入到 /root/test/tos-import/conf 目录,执行以下命令,在 server.yaml 文件中设置 work_dirwork_nodes 等参数,设置完成后保存并退出。

    vi server.yaml
    

    参数

    说明

    work_dir

    工具所在目录的绝对路径,本文需要设置为 /root/test/tos-import/

    work_nodes

    子节点列表。默认第一个节点为 server 管理节点,其他节点为执行任务的子节点。server 管理节点为工具部署所在节点。

    ssh_user

    使用 SSH 连接子节点的用户名称。

    注意

    该用户名称在各节点需要具有新建工作路径镜像目录的读写权限和工作目录的读写权限。

    ssh_password

    使用 SSH 连接子节点的密码。

    ssh_keyfile

    使用 SSH 连接子节点的公钥文件路径。密码和公钥二选一即可,同时设置密码和公钥,优先使用公钥。

    ssh_port

    使用 SSH 连接子节点的端口。默认为 22

    mgr_port

    server 管理端口。tos-import 命令发送至该端口,默认为 19931

    说明

    server 管理端口请勿与其他端口冲突。

    server_port

    server 服务端口。该端口用于 server 与 worker 之间通信,默认为 19932

    说明

    server 服务端口请勿与其他端口冲突。

    log_level

    日志级别。该参数用于调整日志的打印级别。设置后,仅会打印高于该级别的日志。可选 TraceDebugInfoWarnErrorFatal,默认为 Info

    process_num_per_task

    迁移进程总数。所有 work 节点上的 executor 进程总数,默认等于 work 节点数量,至少为 1

    concur_per_process

    进程并发数。每个 executor 进程内的并发数,默认为 32

    failed_num_to_abort

    在连续的 X+1 个对象迁移失败后,暂停迁移任务,默认为 0。例如设置 failed_num_to_abort2,则连续 3 个对象迁移失败后,TOS Import 会自动暂停迁移任务。 取值说明如下:

    • failed_num_to_abort0时,只要有对象迁移失败,TOS Import 就会暂停迁移任务。
    • failed_num_to_abort 为负数时,迁移任务不会因为对象连续迁移失败而中断,将会一直迁移直至结束。

    说明

    failed_num_to_abort 参数用于设置连续迁移失败的对象数量,不包含断断续续迁移失败对象,且迁移过程中存在并发,暂停迁移任务后,迁移报表展示的失败对象数量可能大于 failed_num_to_abort 参数值。

  4. 进入到 /root/test/tos-import 目录,执行以下命令,部署迁移环境。

    ./tos-import deploy
    

    部署成功后,会启动一个常驻进程以及常驻进程对应的 pid 文件,且会返回当次部署信息。返回内容如下所示:

    Welcome To TOS Import! Deploy success!
    Deploy mode: Local.
    

相关操作

如果您需要变更迁移节点数量、地址、连接信息或变更迁移工具所监听的端口,您可以修改 server.yaml 对应参数,然后执行 ./tos-import redeploy 命令,加载 server 配置,从而再次部署迁移环境。

说明

  • 如果变更了迁移工具所监听的端口,执行./tos-import redeploy 命令会暂停正在迁移的任务,并重启常驻进程。为避免启动您非预期的迁移任务,重启常驻进程后不会自动让暂停的任务恢复迁移。您需要执行 ./tos-import resume 命令恢复迁移任务。
  • 不支持通过修改 server.yaml 中的 work_nodes 参数来变更 server 节点。工具部署所在节点即为 server 节点。您可以通过将工具部署到新节点的方式来变更 server 节点。