更新时间:2024-11-26 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:表示在线迁移。目前已不支持使用该接口创建在线迁移任务,请调用CreateOnlineMigrationTask创建在线迁移任务。

枚举值:

  • backupfile_import

migration_method

String

迁移方式,包括全量迁移和增量迁移两种类型。 取值范围:

  • full_amount_migration:表示全量迁移。

  • incremental_migration:表示增量迁移。

枚举值:

  • full_amount_migration

  • incremental_migration

backup_files

BackupFilesBody object

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

network_type

String

迁移任务类型为在线迁移时,表示源Redis和目标Redis连通的网络类型,包括vpc和vpn两种类型。目前已不支持用该接口创建在线迁移任务,请调用CreateOnlineMigrationTask创建在线迁移任务。

枚举值:

  • vpc

  • vpn

source_instance

SourceInstanceBody object

迁移任务类型为在线迁移场景时该参数为必填参数,表示源Redis信息。目前已不支持用该接口创建在线迁移任务,请调用CreateOnlineMigrationTask创建在线迁移任务。

target_instance

TargetInstanceBody object

表示目标Redis信息。

表3 BackupFilesBody

参数

是否必选

参数类型

描述

file_source

String

数据来源,包含OBS桶和备份记录两种类型。

枚举值:

  • self_build_obs

  • backup_record

bucket_name

String

OBS桶名。

files

Array of Files objects

导入的备份文件文件列表,数据来源为OBS桶时必须填写。

backup_id

String

备份记录ID,数据来源为备份记录时必须填写。

表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密码,如果设置了密码,则必须填写。

task_status

String

任务状态。

id

String

Redis实例ID。

ip

String

Redis IP地址。

port

String

Redis端口。

name

String

Redis名称。

proxy_multi_db

Boolean

proxy实例是否开启了多DB。

db

String

Redis数据库。

表6 TargetInstanceBody

参数

是否必选

参数类型

描述

id

String

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

name

String

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

password

String

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

task_status

String

任务状态。

ip

String

Redis IP地址。

port

String

Redis端口。

addrs

String

Redis实例地址。

proxy_multi_db

Boolean

proxy实例是否开启了多DB。

db

String

Redis数据库。

响应参数

状态码: 200

表7 响应Body参数

参数

参数类型

描述

id

String

迁移任务ID。

name

String

迁移任务名称。

status

String

迁移任务状态,这个字段的值包括:SUCCESS(成功), FAILED(失败), MIGRATING(迁移中),TERMINATED(已结束)。

枚举值:

  • SUCCESS

  • FAILED

  • MIGRATING

  • TERMINATED

error

String

错误信息。

状态码: 400

表8 响应Body参数

参数

参数类型

描述

error_msg

String

错误信息。

最大长度:1024

error_code

String

错误码。

最大长度:9

error_ext_msg

String

扩展错误信息(暂未使用,赋值为null)。

最大长度:1024

状态码: 401

表9 响应Body参数

参数

参数类型

描述

error_msg

String

错误信息。

最大长度:1024

error_code

String

错误码。

最大长度:9

error_ext_msg

String

扩展错误信息(暂未使用,赋值为null)。

最大长度:1024

状态码: 403

表10 响应Body参数

参数

参数类型

描述

error_msg

String

错误信息。

最大长度:1024

error_code

String

错误码。

最大长度:9

error_ext_msg

String

扩展错误信息(暂未使用,赋值为null)。

最大长度:1024

状态码: 404

表11 响应Body参数

参数

参数类型

描述

error_msg

String

错误信息。

最大长度:1024

error_code

String

错误码。

最大长度:9

error_ext_msg

String

扩展错误信息(暂未使用,赋值为null)。

最大长度:1024

状态码: 500

表12 响应Body参数

参数

参数类型

描述

error_msg

String

错误信息。

最大长度:1024

error_code

String

错误码。

最大长度:9

error_ext_msg

String

扩展错误信息(暂未使用,赋值为null)。

最大长度:1024

请求示例

创建备份导入迁移任务,备份数据来源于OBS桶。

POST https://{dcs_endpoint}/v2/{project_id}/migration-task

{
  "task_name" : "migration1",
  "description" : "Test",
  "migration_type" : "backupfile_import",
  "migration_method" : "full_amount_migration",
  "backup_files" : {
    "bucket_name" : "bucketName",
    "file_source" : "self_build_obs",
    "files" : [ {
      "size" : "754.0MB",
      "file_name" : "fileName"
    } ]
  },
  "target_instance" : {
    "id" : "d2c8399f-bdba-43c1-8069-3ff17a1a79d5",
    "name" : "dcs-test",
    "password" : "xxxxxx"
  }
}

响应示例

状态码: 200

创建备份导入任务成功。

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

状态码

状态码

描述

200

创建备份导入任务成功。

400

非法请求。

401

认证信息非法。

403

请求被拒绝访问。

404

所请求的资源不存在。

500

内部服务错误。

错误码

请参见错误码