创建任务
功能介绍
调用该接口添加迁移任务。创建任务成功后,任务会被自动启动,不需要额外调用启动任务命令。
注意事项:
- 单个租户在过去24小时内最多可创建200个迁移任务。
- 单个租户名下处于“等待中”状态的迁移任务达到50个时不可再创建任务。
URI
POST /v1/{project_id}/objectstorage/task
|
参数 |
是否必选 |
描述 |
|---|---|---|
|
project_id |
是 |
项目ID。 |
请求消息
请求参数
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
src_node |
是 |
JSONObject |
源端节点信息,参见表3。 |
|
dst_node |
是 |
JSONObject |
目的端节点信息,参见表6。 |
|
enableKMS |
是 |
boolean |
是否使用KMS加密。 |
|
thread_num |
是 |
int |
该迁移任务使用的线程数,不能超过50个。 |
|
description |
否 |
String |
任务描述,不能超过255个字符,且不能包含<>()"'&等特殊字符。 |
|
smnInfo |
否 |
JSONObject |
当需要发送SMN消息时使用该字段,参见表7。 |
|
migrate_since |
否 |
long |
以时间戳方式表示的迁移指定时间(单位:s),表示仅迁移在指定时间之后修改的源端待迁移对象。默认不设置迁移指定时间。 |
|
source_cdn |
否 |
JSONObject |
指定是否启用CDN迁移支持,若包含此字段则为支持,否则为不支持,启用CDN迁移支持后,迁移时将从CDN域名获取源端对象,参见表8。 |
|
auto_restore |
否 |
boolean |
是否自动解冻归档数据,默认否。 开启后,如果遇到归档类型数据,会自动解冻再进行迁移。 |
|
bandwidth_policy |
否 |
JSONArray |
配置流量控制策略。数组中一个元素对应一个时段的最大带宽,最多允许5个时段,且时段不能重叠。具体参见表9。 |
|
task_type |
否 |
String |
任务类型,为空默认设置为object。
|
|
enable_failed_object_recording |
否 |
Boolean |
是否记录失败对象,默认开启。 开启后,如果有迁移失败对象,会在目的端存储失败对象信息。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
region |
是 |
String |
源端桶所处的区域。 |
|
ak |
是 |
String |
源端桶的AK(最大长度100个字符)。
说明:
当表2中task_type为url_list时,ak为非必选。其他任务类型ak为必选。 |
|
sk |
是 |
String |
源端桶的SK(最大长度100个字符)。
说明:
当表2中task_type为url_list时,sk为非必选。其他任务类型sk为必选。 |
|
list_file |
否 |
JSONObject |
对象列表文件配置,具体请参见表4。
说明:
当表2中task_type为list或url_list时,list_file为必选参数。 |
|
object_key |
否 |
String/JSONObject |
源端桶选择的对象名称,可以选择JSONObject格式或者String格式。 如果选择多个源端对象,则选用JSONObject格式,具体请参见表5。
说明:
当表2中task_type为object或prefix时,object_key为必选参数。 |
|
bucket |
是 |
String |
源端桶的名称。
说明:
当表2中task_type为url_list时,bucket为非必选。其他任务类型bucket为必选。 |
|
app_id |
否 |
String |
只在其他云服务提供商的账户存在appID这个标识时,需要填写此参数。 |
|
cloud_type |
否 |
String |
源端云服务提供商。 可选值有AWS、 Aliyun、Tencent、HuaweiCloud、QingCloud、KingsoftCloud、Baidu、Qiniu或URLSource(HTTP/HTTPS数据源)。默认值为Aliyun。 若不设置或为空,则使用默认值。
说明:
当表2中task_type为url_list时,cloud_type必须为URLSource。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
obs_bucket |
是 |
String |
存放对象列表文件的OBS桶名。
说明:
请确保与目的端桶处于同一区域,否则将导致任务创建失败。 |
|
list_file_key |
是 |
String |
对象列表文件或URL文件列表对象名。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
path |
否 |
String |
云服务提供商的根路径,以空字符串""表示。若使用该参数,请设置为"",否则会报错。 |
|
keys |
是 |
JSONArray |
源端对象参数,含义取决于参数task_type。
|
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
region |
是 |
String |
目的端桶所处的区域。
说明:
请与Endpoint对应的区域保持一致。 |
|
ak |
是 |
String |
目的端桶的AK(最大长度100个字符)。 |
|
sk |
是 |
String |
目的端桶的SK(最大长度100个字符)。 |
|
object_key |
是 |
String |
目的端桶选择的对象名称(最大长度1024个字符)。 |
|
bucket |
是 |
String |
目的端桶的名称。 |
|
cloud_type |
否 |
String |
目的端云服务提供商。 默认值为华为云。若不设置或为空,则使用默认值。 |
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
topicUrn |
是 |
String |
迁移任务所绑定的SMN消息主题的urn号。
说明:
topicUrn所属区域需要与Endpoint对应的区域保持一致。 |
|
language |
否 |
String |
当前用户所使用的管理控制台的语言。 可以选择zh-cn或者en-us。 |
|
triggerConditions |
是 |
JSONArray |
SMN消息的触发条件,取决于迁移任务状态。 迁移任务状态的取值范围为SUCCESS或者FAIL。
|
|
参数 |
是否必选 |
参数类型 |
描述 |
|---|---|---|---|
|
protocol |
是 |
String |
协议类型:https或http。 |
|
domain |
是 |
String |
从指定域名获取对象。 |
|
authentication_type |
是 |
String |
鉴权方式。
|
|
authentication_key |
否 |
String |
CDN鉴权密钥。
|
响应消息
响应参数
|
参数 |
参数类型 |
描述 |
|---|---|---|
|
id |
long |
迁移任务ID。 |
|
task_name |
String |
迁移任务名称。 |
示例
请求示例
POST /v1/{project_id}/objectstorage/task
{
"src_node": {
"region": "source_region",
"ak": "source_ak",
"sk": "source_sk",
"list_file": {
"obs_bucket": "oms-file",
"list_file_key": "object-keys.txt"
},
"bucket": "source_bucket",
"cloud_type": XXX
},
"thread_num": 50,
"enableKMS": true,
"description": "xxx",
"dst_node": {
"region": "target_region",
"ak": "target_ak",
"sk": "target_sk",
"object_key": "targetkey",
"bucket": "targetbucket",
"cloud_type": XXX
},
"smnInfo": {
"topicUrn": "urn:smn:region:3cfb09080bd944d0b4cdd72ef26857bd:OMS",
"triggerConditions": ["SUCCESS", "FAIL"],
"language": "en-us"
},
"task_type": "list",
"migrate_since": 123456789
}
或
{
"src_node": {
"region": "source_region",
"ak": "source_ak",
"sk": "source_sk",
"object_key": {
"path": "",
"keys": ["object1", "object2"]
},
"bucket": "source_bucket",
"cloud_type": "XXX"
},
"thread_num": 50,
"enableKMS": true,
"description": "xxx",
"dst_node": {
"region": "target_region",
"ak": "target_ak",
"sk": "target_sk",
"object_key": "targetkey",
"bucket": "targetbucket",
"cloud_type": "XXX"
},
"smnInfo": {
"topicUrn": "urn:smn:region:3cfb09080bd944d0b4cdd72ef26857bd:OMS",
"triggerConditions": ["SUCCESS", "FAIL"],
"language": "en-us"
},
"source_cdn": {
"protocol": "https",
"domain": "xxx.xxx.xxx",
"authentication_type": "NONE"
},
"bandwidth_policy": [
{
"start": "00:00",
"end": "23:59",
"max_bandwidth": 50000000
}
]
}
或(URL列表迁移方式)
POST /v1/{project_id}/objectstorage/task
{
"src_node": {
"list_file": {
"obs_bucket": "oms-file",
"list_file_key": "url-list.txt"
},
"cloud_type": "URLSource"
},
"thread_num": 50,
"enableKMS": true,
"description": "xxx",
"dst_node": {
"region": "target_region",
"ak": "target_ak",
"sk": "target_sk",
"object_key": "targetkey",
"bucket": "targetbucket"
},
"smnInfo": {
"topicUrn": "urn:smn:region:3cfb09080bd944d0b4cdd72ef26857bd:OMS",
"triggerConditions": ["SUCCESS", "FAIL"],
"language": "en-us"
},
"task_type": "url_list",
"migrate_since": 123456789
}
响应示例
{
"id": 16,
"task_name": "task_name"
}
状态码
状态码请参见状态码。