对象存储

  • 对象存储 > 使用指南 > 控制台指南 > 设置数据迁移 > 使用 kodoimportv3 半托管 Agent 迁移数据

    使用 kodoimportv3 半托管 Agent 迁移数据

    最近更新时间: 2025-04-08 10:42:28

    简介

    kodoimportv3 是一款将数据迁移至七牛云对象存储 Kodo 的代理工具。您可以将 kodoimportv3 部署到您的机房服务器或云上服务器,它将执行您在 Kodo 对象存储控制台上创建的半托管数据迁移任务,帮助您轻松将存储数据迁移至 Kodo。

    支持特性

    • 支持丰富的数据源,支持数据迁移服务的所有数据源类型(URL 列表、S3 协议源站、LocalFS)
    • 主从结构,支持分布式模式,部署简单,支持大规模数据高效迁移
    • 支持带宽限速
    • 支持定时迁移

    硬件要求

    项目 大小 说明
    内存 Scheduler:2GB
    Worker:Executor 数(默认 20)* 32MB
    硬盘 4GB ~ 10GB 迁移后的结果信息会被存储,成功被迁移的文件存储信息较少,失败的存储信息较多;可以按失败文件数量进行评估

    部署方式

    安装

    下载相应版本代理工具并解压

    支持平台 下载链接
    Windows amd64 下载
    Linux amd64 下载
    MacOS amd64 下载

    说明

    Scheduler

    Scheduler 为迁移的调度器,负责将任务中的子任务下发给 Worker 进行执行。所有的任务信息均存储在 Scheduler 端。

    Worker

    任务执行体,会从 Scheduler 获取任务并执行,同一台设备上仅配置一个 Worker 即可。如果此台设备上也需要配置 Scheduler,可将 Mode 设置为 agent,以同时构建 Scheduler 和 Worker。其他设备的 Worker 也可以接入此 Scheduler 中。

    Scheduler 或 Worker 的工作目录可在 kodoimportv3 启动时配置(参考 启动参数说明)。目录中存放着日志、任务相关信息等,默认为:${Home}/.kodoimportv3
    工作目录结构如下:

    ├── log    // 日志
    │   ├── access  // worker 请求日志
    │   │   ├── access-2024031214.log
    │   │   └── access-2024031410.log
    │   └── system  // Scheduler 和 Worker 运行日志
    │       ├── system-2024031214.log
    │       └── system-2024031410.log
    └── server
        ├── qiniu-bash      // ID 为 qiniu-bash 的任务的工作目录
        │   └── cache // 任务的缓存信息
    

    启动

    单机模式

    # 解压后找到 kodoimportv3 二进制执行程序,执行以下命令:
    ./kodoimportv3 --agent-name "agent-name" \
                   --migration-access-key "ak" \
    	       --migration-secret-key "sk" \
    	       --migration-address "api.qiniuapi.com" # 迁移服务地址,可不配置
    

    多机模式

    # 解压后找到 kodoimportv3 二进制执行程序
    # Scheduler 的主机 IP 为:192.168.1.5
    # Worker 的主机 IP 为:192.168.1.6
    # 启动 Scheduler 
    kodoimportv3 --agent-name  "agent-name" 
                 --mode "agent:scheduler"  \
                 --scheduler-address "0.0.0.0:8001" \
                 --migration-access-key "ak" \
                 --migration-secret-key "sk" \
                 --migration-address "api.qiniuapi.com" # 迁移服务地址,可不配置
    
    # 启动 Worker
    kodoimportv3 --mode "worker"  --scheduler-address "192.168.1.5:8001"
    

    kodoimportv3 启动参数

    参数 类型 必填 描述 默认值
    agent-name string agent 名称,此名称需要和迁移服务中声明的一致
    mode string 运行模式
    - agent:同时部署启动 Scheduler 和 Worker
    - agent:scheduler:仅启动 Scheduler
    - worker:仅启动 Worker
    agent
    migration-address string 迁移服务地址,可不配置 api.qiniuapi.com
    migration-access-key string - 使用迁移服务时所用的用户 AccessKey
    - 建议使用 IAM 子用户的 AccessKey,并确保其已授权存储数据迁移服务的 Agent 运行功能
    migration-secret-key string - 使用迁移服务时所用的用户 SecretKey
    - 建议使用 IAM 子用户的 SecretKey,并确保其已授权存储数据迁移服务的 Agent 运行功能
    workspace string - kodoimportv3 的工作目录,存储 kodoimportv3 的日志等信息
    - kodoimportv3 中启动了 Scheduer 还会包含任务相关的信息
    ${Home}/.kodoimportv3
    web-address string - Web 监听的地址,样式: 监听Host:监听端口
    - 用于获取 kodoimportv3 运行状态信息,只有在 debug 时才需要,仅支持 IPv4
    scheduler-address string - Scheduler 和 Worker 远程调用的地址
    • 当 kodoimportv3 启动包含 Scheduler 时,为 Scheduler 监听地址
    • 当 kodoimportv3 启动仅有 Worker 时,为 Scheduler 访问地址
    - 仅支持 IPv4
    - 单机模式此配置无效
    127.0.0.1:8001
    log-level string 日志文件存储的日志等级;可配值有:debuginfowarningerror info
    log-max-age int 日志文件保留天数 7
    executor-count int Worker 的并发执行数量;当 Worker 启动时未指定此参数,Worker 会使用 Scheduler 配置的值 20

    注意事项

    • 在迁移过程中,需要保证对迁移源文件有访问权限、对迁移目标空间有写入权限
      • 本地源:可列举待迁移文件夹、可以读取待迁移文件内容
      • 云存储源:可列举空间、可下载空间文件
    • 在迁移过程中需保证迁移程序所运行的设备处于活跃状态,避免待机、睡眠、休眠等不活跃状态
    • 本地文件迁移不支持软、硬链接文件,这些文件会被直接跳过
    以上内容是否对您有帮助?
  • Qvm free helper
    Close