更新时间:2022-08-06 GMT+08:00

创建数据迁移任务

功能介绍

创建数据迁移任务。

接口约束

URI

POST /v2/{project_id}/migration-task

表1 路径参数

参数

是否必选

参数类型

描述

project_id

String

项目ID。

获取方法请参见获取项目ID

请求参数

表2 请求Body参数

参数

是否必选

参数类型

描述

task_name

String

迁移任务名称。

description

String

迁移任务描述。

migration_type

String

迁移任务类型,包括备份文件导入和在线迁移两种类型。

取值范围:

  • backupfile_import:表示备份文件导入。
  • online_migration:表示在线迁移。

migration_method

String

迁移方式,包括全量迁移和增量迁移两种类型。

取值范围:

  • full_amount_migration:表示全量迁移。
  • incremental_migration:表示增量迁移。

backup_files

BackupFilesBody Object

迁移任务类型为备份文件导入场景时的备份文件列表。

network_type

String

迁移任务类型为在线迁移时,表示源Redis和目标Redis联通的网络类型,包括vpc和vpn两种类型。

取值范围:

  • vpc
  • vpn

source_instance

SourceInstanceBody Object

迁移任务类型为在线迁移场景时该参数为必填参数,表示源Redis信息。

target_instance

TargetInstanceBody Object

表示目标Redis信息。

表3 BackupFilesBody

参数

是否必选

参数类型

描述

file_source

String

数据来源,当前仅支持OBS桶方式,取值为:self_build_obs。

bucket_name

String

OBS桶名。

files

Array of Files Objects

导入的备份文件文件列表。

表4 Files

参数

是否必选

参数类型

描述

file_name

String

备份文件名。

size

String

文件大小(单位:Byte)。

update_at

String

文件最后修改时间(格式YYYY-MM-DD HH:MM:SS)。

表5 SourceInstanceBody

参数

是否必选

参数类型

描述

addrs

String

Redis实例名称(source_instance信息中填写)

password

String

Redis密码,如果设置了密码,则必须填写

表6 TargetInstanceBody

参数

是否必选

参数类型

描述

id

String

Redis实例ID(target_instance信息中必须填写)

name

String

Redis实例名称(target_instance信息中填写)

password

String

Redis密码,如果设置了密码,则必须填写

响应参数

状态码为 200 时,返回以下参数:

表7 响应参数

参数

参数类型

描述

id

String

迁移任务ID。

name

String

迁移任务名称。

status

String

迁移任务状态,这个字段的值包括:

  • SUCCESS:迁移成功
  • FAILED:迁移失败
  • MIGRATING:迁移中
  • TERMINATED:迁移任务终已停止
  • TERMINATING:迁移任务停止中
  • RUNNING:迁移任务创建完成,待配置执行中
  • CREATING:迁移任务创建中
  • FULLMIGRATING:全量迁移中
  • INCRMIGEATING:增量迁移中
  • ERROR:故障
  • DELETED:故障
  • RELEASED:已自动释放
  • MIGRATION_SUCCESS:迁移成功,待清理资源
  • MIGRATION_FAILED:迁移失败,待清理资源

请求示例

  • 请求URL示例
    POST https://{dcs_endpoint}/v2/{project_id}/migration-task
  • 请求示例1(在线迁移方式)
    { 
      "task_name" : "lmd-test", 
      "description" : "Test", 
      "migration_type" : "online_migration", 
      "migration_method" : "full_amount_migration", 
      "network_type" : "vpc", 
      "source_instance" : { 
        "addrs" : "192.168.1.135:6379", 
        "password" : "xxxxxx" 
      }, 
      "target_instance" : { 
        "name" : "dcs-test", 
        "id" : "4cd5dbb8-aacd-4603-b817-3e97d48c7a20" 
      } 
    }
  • 请求示例2(备份文件导入方式)
    {
     "backup_files": {
      "bucket_name": "bucket-lmz",
      "file_source": "self_build_obs",
      "files": [
       {
        "file_name": "appendonly03.aof"
       }
      ]
     },
     "migration_method": "full_amount_migration",
     "migration_type": "backupfile_import",
     "target_instance": {
      "id": "318ed365-3c1b-42d7-a5b6-663dded628a0"
     },
     "task_name": "lmd-test"
    }

响应示例

状态码为 200 时,创建数据迁移任务成功。

{ 
  "id" : "8aa6999e71cb638b0171f485f5266ef0", 
  "name" : "lmd-test", 
  "status" : "MIGRATING" 
}

状态码

状态码

描述

200

创建数据迁移任务成功。

400

非法请求

500

内部服务错误

错误码

请参见错误码