更新备份策略
功能介绍
根据指定ID更新备份策略
URI
- URI
- 参数说明
表1 参数说明 参数
是否必选
参数类型
描述
project_id
是
String
项目ID。
获取方法请参见获取项目ID。
policy_id
是
String
备份策略ID
请求
- 要素说明
表2 要素说明 参数
是否必选
参数类型
描述
policy
是
policy_update
详情请参见表3。
- policy_update 字段数据结构说明
表3 policy_update 字段数据结构说明 参数
是否必选
参数类型
描述
description
否
String
备份策略描述,长度限制:0- 255,除了“<”、“>”不能输入,其它字符均可。
name
否
String
备份策略名称,长度限制:1- 255,只能由中文、字母、数字、“_”、“-”组成。
parameters
否
policy_param
备份参数。
详情请参见表4。
resources
否
List<resource>
备份对象。
详情请参见表5。
scheduled_operations
否
List<scheduled_operation_update>
调度周期,一个备份策略有且只有一个备份周期。
详情请参见表6。
- policy_param 字段数据结构说明
表4 policy_param 字段数据结构说明 参数
是否必选
参数类型
描述
common
否
common_param
备份策略通用参数,此处默认为空。
详情请参见common_param 字段数据结构说明。
- common_param 字段数据结构说明
- resource 字段数据结构说明
- extra_info参数说明
参数
是否必选
参数类型
描述
exclude_volumes
否
List<volume_id>
磁盘的ID列表,如果备份对象为云服务器或者裸金属服务器,代表备份时不对该服务器下指定的磁盘进行备份。
- scheduled_operation_update 字段数据结构说明
表6 scheduled_operation_update 字段数据结构说明 参数
是否必选
参数类型
描述
description
否
String
调度周期描述,长度限制:0- 255,除了“<”、“>”不能输入,其它字符均可。
enabled
否
Boolean
是否启用该策略,默认为true, 不启用时策略不会自动调度,可以手工调度
name
否
String
调度周期名称,长度限制:1- 255,只能由中文、字母、数字、“_”、“-”组成。
operation_definition
否
operation_definition
调度周期参数,新增复制策略时必传。
详情请参见表7。
trigger
否
trigger
调度策略,新增复制策略时必传
operation_type
否
String
操作类型,跨区域复制,仅当是为已有备份策略增加复制策略时有效。
复制:replication
id
否
String
调度周期ID,如果不传ID,则会新创建一个策略
- operation_definition 字段数据结构说明
表7 operation_definition 字段数据结构说明 参数
是否必选
参数类型
描述
max_backups
否
Integer
单个备份对象自动备份的最大备份数。取值为-1或0-99999。-1代表不按备份数清理。
retention_duration_days
否
Integer
备份保留时长,单位天。取值为-1或0-99999。-1代表不按时间清理。
permanent
否
Boolean
是否永久保留。
plan_id
否
String
备份策略ID。
provider_id
否
String
备份提供商ID,当前取值固定值:fc4d5750-22e7-4798-8a46-f48f62c4c1da。用于区分备份对象是服务器或磁盘。
destination_region
否
String
复制的目标区域,仅在跨区域复制时才会使用。
destination_project_id
否
String
复制的目标项目ID,仅在跨区域复制时才会使用。
enable_acceleration
否
Boolean
跨区域复制时,是否启用加速从而缩减复制的时间,如果不指定,默认不启用加速。
day_backups
否
Integer
保留日备个数,该备份不受保留最大备份数限制。若选择该参数,则timezone 也必选。
week_backups
否
Integer
保留周备个数,该备份不受保留最大备份数限制。若选择该参数,则timezone 也必选。
month_backups
否
Integer
保留月备个数,该备份不受保留最大备份数限制。若选择该参数,则timezone 也必选。
year_backups
否
Integer
保留年备个数,该备份不受保留最大备份数限制。若选择该参数,则timezone 也必选。
timezone
否
String
用户所在时区,格式形如UTC+08:00,若没有选择年备,月备,周备,日备中任一参数,则不能选择该参数。
- permanent配置为true,无论max_backups和retention_duration_days配置为何值,都是表示永久保留。
- permanent配置为false或者不配置,以max_backups和retention_duration_days配置为准。
- permanent,max_backups和retention_duration_days都不配置,则表示永久保留。
- trigger 字段数据结构说明
表8 trigger 字段数据结构说明 参数
是否必选
参数类型
描述
properties
是
trigger_properties
调度器属性。
详情请参见表9。
- trigger_properties 字段数据结构说明
- 请求样例
PUT https://{endpoint}/v1/{project_id}/policies/{policy_id} { "policy" : { "name" : "my-plan", "parameters" : { "common" : { "app_consistency": 2 } }, "scheduled_operations" : [ { "id" : "fed3c8f1-7b6e-4e24-b1ad-473838bad569", "name" : "my-backup-policy", "description" : "My backup policy ", "enabled" : true, "operation_definition" : { "retention_duration_days" : -1, "max_backups" : 20 }, "trigger" : { "properties" : { "pattern" : "BEGIN:VCALENDAR\r\nBEGIN:VEVENT\r\nRRULE:FREQ=WEEKLY;BYDAY=TH;BYHOUR=12;BYMINUTE=27\r\nEND:VEVENT\r\nEND:VCALENDAR\r\n" } } },{ "id" : "fed3c8f1-7b6e-4e24-b1ad-473838bad569", "name" : "my-replication-policy", "description" : "My replicationpolicy ", "enabled" : true, "operation_definition" : { "retention_duration_days" : -1, "max_backups" : 20, "destination_region": "south-1", "destination_project_id": "827099a5c63945d3b5a473ce9a1eaf88" }, "trigger" : { "properties" : { "pattern" : "BEGIN:VCALENDAR\r\nBEGIN:VEVENT\r\nRRULE:FREQ=WEEKLY;BYDAY=TH;BYHOUR=12;BYMINUTE=27\r\nEND:VEVENT\r\nEND:VCALENDAR\r\n" } } } ] } }
响应
- 要素说明
表10 要素说明 参数
参数类型
描述
policy
policy_resp
详情请参见表11。
- policy_resp 字段数据结构说明
表11 policy_resp 字段数据结构说明 参数
参数类型
描述
created_at
String
创建时间,如:"2017-04-18T01:21:52.701973"
description
String
备份策略描述,长度限制:0- 255,除了“<”、“>”不能输入,其它字符均可。
id
String
备份策略ID
name
String
备份策略名称,长度限制:1- 255,只能由中文、字母、数字、“_”、“-”组成。
parameters
policy_param
备份策略参数。
详情请参见表12。
project_id
String
项目ID
provider_id
String
备份提供商ID,当前取值固定值:fc4d5750-22e7-4798-8a46-f48f62c4c1da。用于区分备份对象是服务器或磁盘。
resources
List<resource>
备份对象列表
详情请参见表13。
scheduled_operations
List<scheduled_operation_resp>
调度周期列表。
详情请参见表14。
status
String
备份策略状态。
- disabled:不可用
- enabled:可用
- policy_param 字段数据结构说明
表12 policy_param 字段数据结构说明 参数
参数类型
描述
common
common_param
备份策略通用参数,此处默认为空。
详情请参见common_param 字段数据结构说明。
- common_param 字段数据结构说明
- resource 字段数据结构说明
- extra_info参数说明
参数
参数类型
描述
exclude_volumes
List<volume_id>
磁盘的ID列表,如果备份对象为云服务器或者裸金属服务器,代表备份时不对该服务器下指定的磁盘进行备份。
- scheduled_operation_resp 字段数据结构说明
表14 scheduled_operation_resp 字段数据结构说明 参数
参数类型
描述
description
String
调度周期描述,长度限制:0- 255,除了“<”、“>”不能输入,其它字符均可。
enabled
Boolean
是否启用该调度周期,默认为true, 不启用时策略不会自动调度,可以手工调度
name
String
调度周期名称,长度限制:1- 255,只能由中文、字母、数字、“_”、“-”组成。
operation_type
String
操作类型,备份,复制
Enum:[ backup, replication]
operation_definition
operation_definition
调度周期参数。
详情请参见表15。
trigger
trigger_resp
调度策略。
详情请参见表16。
id
String
调度周期ID
- operation_definition 字段数据结构说明
表15 operation_definition 字段数据结构说明 参数
参数类型
描述
max_backups
String
单个备份对象自动备份的最大备份数。取值为-1或0-99999。-1代表不按备份数清理。
retention_duration_days
String
备份保留时长,单位天。取值为-1或0-99999。-1代表不按时间清理。
permanent
String
是否永久保留。
plan_id
String
备份策略ID。
provider_id
String
备份提供商ID,当前取值固定值:fc4d5750-22e7-4798-8a46-f48f62c4c1da。用于区分备份对象是服务器或磁盘。
destination_region
String
复制的目标区域,仅在跨区域复制时才会使用。
destination_project_id
String
复制的目标项目ID,仅在跨区域复制时才会使用。
enable_acceleration
String
跨区域复制时,是否启用加速从而缩减复制的时间,如果不指定,默认不启用加速
- trigger_resp 字段数据结构说明
- trigger_properties_resp 字段数据结构说明
表17 trigger_properties_resp 字段数据结构说明 参数
参数类型
描述
pattern
String
调度器的调度策略,长度限制为10240个字符,参照iCalendar RFC 2445规范,但仅支持FREQ、BYDAY、BYHOUR、BYMINUTE四个参数,其中FREQ仅支持WEEKLY和DAILY,BYDAY支持一周七天(MO、TU、WE、TH、FR、SA、SU),BYHOUR支持0-23小时,BYMINUTE支持0-59分钟,并且间隔不能小于一小时,一天最大24个时间点。
start_time
String
调度器开始时间
format
String
调度器类型
ical:互联网日历类型
- 响应样例
{ "policy" : { "status" : "disabled", "provider_id" : "fc4d5750-22e7-4798-8a46-f48f62c4c1da", "description" : "", "parameters" : { "common" : { "app_consistency": 2 } }, "scheduled_operations" : [ { "description" : "My backup policy ", "enabled" : true, "trigger" : { "properties" : { "pattern" : "BEGIN:VCALENDAR\r\nBEGIN:VEVENT\r\nRRULE:FREQ=WEEKLY;BYDAY=TH;BYHOUR=12;BYMINUTE=27\r\nEND:VEVENT\r\nEND:VCALENDAR\r\n", "start_time" : "2017-04-09 14:31:25", "format" : "ical" } }, "operation_definition" : { "provider_id" : "fc4d5750-22e7-4798-8a46-f48f62c4c1da", "plan_id" : "17e2b861-3a35-434d-afbb-073d5cd5af08", "max_backups" : "20", "retention_duration_days" : "-1", "permanent" : "False", "consistency" : "True" }, "operation_type" : "backup", "id" : "fed3c8f1-7b6e-4e24-b1ad-473838bad569", "name" : "my-backup-policy" },{ "description" : "My replication policy ", "enabled" : true, "trigger" : { "properties" : { "pattern" : "BEGIN:VCALENDAR\r\nBEGIN:VEVENT\r\nRRULE:FREQ=WEEKLY;BYDAY=TH;BYHOUR=12;BYMINUTE=27\r\nEND:VEVENT\r\nEND:VCALENDAR\r\n", "start_time" : "2017-04-09 14:31:25", "format" : "ical" } }, "operation_definition" : { "provider_id" : "fc4d5750-22e7-4798-8a46-f48f62c4c1da", "plan_id" : "17e2b861-3a35-434d-afbb-073d5cd5af08", "max_backups" : "20", "retention_duration_days" : "-1", "permanent" : "False", "destination_region": "south-1", "destination_project_id": "827099a5c63945d3b5a473ce9a1eaf88" }, "operation_type" : "replication", "id" : "fed3c8f1-7b6e-4e24-b1ad-473838bad569", "name" : "my-replication-policy" }], "id" : "17e2b861-3a35-434d-afbb-073d5cd5af08", "name" : "my-plan", "parameters" : { "common" : { } }, "created_at" : "2017-04-09T14:31:25.504569", "project_id" : "0c89d4e457c3401a89c65420fd45f3a2", "resources" : [ { "type" : "OS::Nova::Server", "id" : "8421f405-1334-4206-b71c-b3f64d39abc4", "name" : "wqeq3", "extra_info" : { } } ] } }
状态码
- 正常
状态码
说明
200
OK
- 异常
状态码
说明
400
请求参数不合法
401
鉴权失败
403
没有操作权限
404
请求对象不存在
500
服务内部错误
503
服务不可用
错误码
请参考错误码。