批量创建任务
功能介绍
根据请求参数不同,可以批量创建实时迁移、实时同步、实时灾备任务。
调试
您可以在API Explorer中调试该接口,支持自动认证鉴权。API Explorer可以自动生成SDK代码示例,并提供SDK代码示例调试功能。
接口约束
为保证接口调用性能,建议批量调用数量不超过10个。
URI
POST /v3/{project_id}/jobs/batch-creation
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
project_id |
是 |
String |
租户在某一Region下的Project ID。 获取方法请参见获取项目ID。 |
请求参数
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
Content-Type |
是 |
String |
指定类型为application/json。 缺省值:application/json |
X-Auth-Token |
是 |
String |
从IAM服务获取的用户Token。 |
X-Language |
否 |
String |
请求语言类型,缺省值:en-us 取值:
|
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
jobs |
是 |
Array of objects |
创建任务请求体。 详情请参见表4。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
name |
是 |
String |
任务名称,约束:任务名称在4位到50位之间,不区分大小写,可以包含字母、数字、中划线或下划线,不能包括其他特殊字符。
|
db_use_type |
是 |
String |
迁移场景。 取值:
|
engine_type |
是 |
String |
DRS任务引擎类型。 取值:
详细取值可参考引擎类型说明。 |
job_direction |
是 |
String |
任务方向。 取值:
|
bind_eip |
否 |
Boolean |
是否绑定EIP,网络类型为EIP时必填且为true。 |
customize_sutnet_id |
是 |
String |
DRS实例所在子网ID,对应目标库相同VPC下已创建的子网(subnet)的网络ID,UUID格式。 |
product_id |
否 |
String |
产品ID。 |
is_target_readonly |
否 |
Boolean |
指定目标实例是否限制为只读,MySQL迁移和灾备,且job_direction为up时设置有效。(灾备场景下,单主灾备且本云为备为必填且为true,不填默认设置为true)。 |
net_type |
是 |
String |
网络类型。取值:
灾备场景不支持选择VPC网络。 |
node_type |
是 |
String |
规格类型。取值:
具体某种场景支持的取值可以通过查询可用的Node规格接口获取 |
node_num |
否 |
Integer |
节点个数。 MongoDB数据库时对应源端分片个数,源库为集群时必填,[1-32],MySQL双主灾备时会默认设置为2。 MongoDB数据库时对应源端分片个数,源库为集群时必填,[1-32]。 |
source_endpoint |
是 |
Object |
源库信息。 详情请参见表5。 |
target_endpoint |
是 |
Object |
目标库信息。 详情请参见表5。 |
task_type |
是 |
String |
任务模式,缺省值:FULL_INCR_TRANS。 取值:
单主灾备场景仅支持选择全量加增量(FULL_INCR_TRANS)。 |
tags |
否 |
Array of object |
标签信息,最多添加20个标签。 详情请参见表7。 |
description |
否 |
String |
任务描述。 约束:任务描述不能超过256位,且不能包含!<>&'"\特殊字符。 |
multi_write |
否 |
Boolean |
缺省值:false |
sys_tags |
否 |
Array of object |
企业项目,不填默认为default,key值必须为_sys_enterprise_project_id,value为企业项目ID,只能有一个企业项目。 详情请参见表7。 |
expired_days |
否 |
String |
任务处于异常状态一段时间后,将会自动结束。单位为天。(范围14-100),不传默认为14天。 |
master_az |
否 |
String |
主备任务主任务所在可用区code,可以通过查询规格未售罄的可用区接口获取
|
slave_az |
否 |
String |
主备任务备任务所在可用区code,可以通过查询规格未售罄的可用区接口获取
|
charging_mode |
否 |
String |
计费模式,不填默认为按需计费。 取值范围:
|
period_order |
否 |
Object |
包年包月信息。 详情请参见表8。
说明:
charging_mode为period时必填。 |
public_ip_list |
否 |
Array of objects |
指定公网IP的信息。 详情请参见表9。 |
is_open_fast_clean |
否 |
Boolean |
是否开启云数据库RDS for MySQL或MariaDB的Binlog快速清理。不传默认为false,不开启快速清理。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
db_type |
否 |
String |
数据库类型。取值:
|
az_code |
否 |
String |
数据库所在可用区azCode。 |
region |
否 |
String |
数据库实例所在Region。数据库为云上实例时,比如RDS实例时必填(灾备场景下job_direction为down时source_endpoint中该值为必填,job_direction为up时target_endpoint中该值为必填)。 |
inst_id |
否 |
String |
数据库实例ID。数据库为云上实例时,比如RDS实例时必填(灾备场景下job_direction为down时source_endpoint中该值为必填,job_direction为up时target_endpoint中该值为必填)。 |
vpc_id |
否 |
String |
数据库所在的虚拟私有云ID。 |
subnet_id |
否 |
String |
数据库所在的子网ID。 |
security_group_id |
否 |
String |
数据库所在的安全组ID。 |
project_id |
否 |
String |
如果数据库为云上实例时,填写数据库实例所在Region下的Project ID。否则,填写当前任务所在Region下的Project ID。 获取方法请参见获取项目ID。 |
db_name |
否 |
String |
服务名serviceName,源库为Oracle场景时必填。约束:不能超过128位,不能包含!<>&'"\特殊字符。 |
db_password |
否 |
String |
数据库密码。 |
db_port |
否 |
Integer |
数据库端口。约束:输入范围为1-65535之间的整数。 |
db_user |
否 |
String |
数据库用户。 |
inst_name |
否 |
String |
RDS实例名称。 |
ip |
否 |
String |
数据库IP。 |
mongo_ha_mode |
否 |
String |
mongo ha模式。 |
safe_mode |
否 |
Integer |
MRS集群运行模式,取值:
|
ssl_cert_password |
否 |
String |
SSL证书密码,证书文件后缀为.p12。 |
ssl_cert_check_sum |
否 |
String |
SSL证书内容checksum值,后端校验,源库安全连接必选。 |
ssl_cert_key |
否 |
String |
SSL证书内容,用base64加密。 |
ssl_cert_name |
否 |
String |
SSL证书名字。 |
ssl_link |
否 |
Boolean |
是否SSL安全连接。 |
topic |
否 |
String |
kafka topic名称。 |
cluster_mode |
否 |
String |
MongoDB集群4.0及以上版本,当集群实例无法获取到分片节点的IP时,source_endpoint中需要填写,值为:Sharding4.0+。 缺省值:Sharding4.0+ 取值:Sharding4.0+ |
kafka_security_config |
否 |
Object |
Kafka安全认证相关,非安全认证不需要此参数。 详情请参见表6。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
type |
否 |
String |
安全协议,安全认证时必填,对应Kafka字段:security.protocol。
枚举值:
|
trust_store_key_name |
否 |
String |
证书名称,安全协议为SSL、SASL_SSL时必填。 |
trust_store_key |
否 |
String |
安全证书base64转码后的值,安全协议为SSL、SASL_SSL时必填。 |
trust_store_password |
否 |
String |
证书密码,证书设置了密码时必填。 |
endpoint_algorithm |
否 |
String |
主机名端点识别算法,指定通过服务端证书验证服务端主机名的端点识别算法,不填表示禁用主机名验证。对应Kafka字段:ssl.endpoint.identification.algorithm |
sasl_mechanism |
否 |
String |
SASL机制,用于客户端连接的SASL机制,对应Kafka字段:sasl.mechanism,支持以下四项,取值:
|
delegation_tokens |
否 |
Boolean |
是否为委托令牌鉴权,安全协议为SASL_SSL和SASL_PLAINTEXT时,SASL机制选择“SCRAM-SHA-256”或者“SCRAM-SHA-512”时生效。 |
enable_key_store |
否 |
Boolean |
是否开启SSL双向认证。 |
key_store_key |
否 |
String |
Keystore证书,开启SSL双向认证时需要。 |
key_store_key_name |
否 |
String |
Keystore证书名称,开启SSL双向认证时需要。 |
key_store_password |
否 |
String |
Keystore证书密码,证书设置了密码时需要。对应Kafka字段:ssl.keystore.password |
set_private_key_password |
否 |
Boolean |
是否设置Keystore私钥密码,默认为false。 |
key_password |
否 |
String |
Keystore私钥密码,开启SSL双向认证时,set_private_key_password为true时必填。对应Kafka字段:ssl.key.password |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
key |
否 |
String |
标签键,最大长度36,只能包含字母、数字、下划线、中划线和中文。 |
value |
否 |
String |
标签值,最大长度43,只能包含字母、数字、下划线、中划线和中文。 |
参数 |
是否必选 |
参数类型 |
描述 |
---|---|---|---|
period_type |
否 |
Integer |
订购周期类型。 取值范围:
|
period_num |
否 |
Integer |
订购周期数。 取值范围:
|
is_auto_renew |
否 |
Integer |
是否自动续订。 取值范围:
|
响应参数
状态码: 202
参数 |
参数类型 |
描述 |
---|---|---|
results |
Array of objects |
批量创建任务的响应体集合。 详情请参见表11。 |
count |
Integer |
总记录数。 |
请求示例
- 批量创建MySQL入云实时迁移任务,任务模式为全量+增量,网络类型为公网网络
https://{endpoint}/v3/054ba152d480d55b2f5dc0069e7ddef0/jobs/batch-creation { "jobs" : [ { "name" : "DRS-9228", "node_type" : "high", "engine_type" : "mysql", "net_type" : "eip", "job_direction" : "up", "db_use_type" : "migration", "task_type" : "FULL_INCR_TRANS", "customize_sutnet_id" : "352ad828-3467-4f03-987a-c55a5a9dd417", "source_endpoint" : { "db_type" : "mysql" }, "target_endpoint" : { "region" : "cn-xianhz-1", "db_type" : "mysql", "inst_id" : "e05a3679efe241d8b5dee80b17c1a863in01" }, "is_target_readonly" : false, "bind_eip" : true } ] }
- 批量创建MySQL本云为备实时灾备任务,网络类型为公网网络
https://{endpoint}/v3/054ba152d480d55b2f5dc0069e7ddef0/jobs/batch-creation { "jobs" : [ { "name" : "DRS-api-test", "engine_type" : "cloudDataGuard-mysql", "net_type" : "eip", "node_type" : "high", "job_direction" : "up", "source_endpoint" : { "db_type" : "mysql" }, "target_endpoint" : { "region" : "cn-xianhz-1", "db_type" : "mysql", "inst_id" : "e05a3679efe241d8b5dee80b17c1a863in01", "project_id" : "054ba152d480d55b2f5dc0069e7ddef0" }, "is_target_readonly" : true, "bind_eip" : true, "db_use_type" : "cloudDataGuard", "task_type" : "FULL_INCR_TRANS", "customize_sutnet_id" : "352ad828-3467-4f03-987a-c55a5a9dd417", "multi_write" : false } ] }
- 批量创建DDS副本入云实时迁移任务,任务模式为全量+增量,网络类型为公网网络
https://{endpoint}/v3/054ba152d480d55b2f5dc0069e7ddef0/jobs/batch-creation { "jobs" : [ { "name" : "DRS-3371-linxiaolu", "node_type" : "high", "engine_type" : "mongodb", "net_type" : "eip", "job_direction" : "up", "db_use_type" : "migration", "task_type" : "FULL_INCR_TRANS", "customize_sutnet_id" : "faf513f3-7a88-4a5c-bec7-238699c29c17", "source_endpoint" : { "db_type" : "mongodb" }, "target_endpoint" : { "region" : "cn-xianhz-1", "db_type" : "mongodb", "inst_id" : "3cadd5a0ef724f55ac7fa5bcb5f4fc5fin02" }, "bind_eip" : true } ] }
- 创建MySQL主备入云同步任务,任务模式为全量+增量,网络类型为公网网络
https://{endpoint}/v3/054ba152d480d55b2f5dc0069e7ddef0/jobs/batch-creation { "jobs" : [ { "name" : "DRS-linxiaolu-test3", "engine_type" : "mysql", "net_type" : "eip", "node_type" : "high", "job_direction" : "up", "source_endpoint" : { "db_type" : "mysql" }, "target_endpoint" : { "region" : "cn-xianhz-1", "db_type" : "mysql", "inst_id" : "64e8d7a31afa476ca85609a17af83765in01", "project_id" : "054ba152d480d55b2f5dc0069e7ddef0" }, "bind_eip" : true, "db_use_type" : "sync", "task_type" : "FULL_INCR_TRANS", "customize_sutnet_id" : "0cf77cfb-3785-4065-a9c4-74b7bb2df071", "master_az" : "az2xahz", "slave_az" : "az3xahz" } ] }
响应示例
状态码: 202
Accepted
{ "results" : [ { "id" : "e11eaf8f-71ef-4fad-8890-aed7572ajb11", "name" : "DRS-9228", "status" : "CREATING", "create_time" : "1599188556112" } ], "count" : 1 }
状态码
状态码 |
描述 |
---|---|
202 |
Accepted |
400 |
Bad Request |
错误码
请参见错误码。