创建任务
功能介绍
调用该接口添加迁移任务。创建任务成功后,任务会被自动启动,不需要额外调用启动任务命令。
注意事项:
- 单个租户在过去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"
}
  状态码
状态码请参见状态码。