更新时间:2022-02-22 GMT+08:00

更新备份策略

功能介绍

根据指定ID更新备份策略

URI

  • URI

    PUT https://{endpoint}/v1/{project_id}/policies/{policy_id}

  • 参数说明
    表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

    备份策略通用参数,此处默认为空。

  • resource 字段数据结构说明
    表5 resource 字段数据结构说明

    参数

    是否必选

    参数类型

    描述

    id

    String

    待备份对象ID

    type

    String

    备份对象的实体对象类型。

    虚拟机:OS::Nova::Server

    name

    String

    备份对象名称

    extra_info

    Dict

    备份对象的附加信息

  • 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

    调度策略

    id

    String

    调度周期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。用于区分备份对象是服务器或磁盘。

    • 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 字段数据结构说明
    表9 trigger_properties 字段数据结构说明

    参数

    是否必选

    参数类型

    描述

    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个时间点。

  • 请求样例
    PUT https://{endpoint}/v1/{project_id}/policies/{policy_id}
    {
      "policy" : {
        "name" : "my-plan",
        "parameters" : {
          "common" : {
          }
        },
        "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"
            }
         }
     }
        ]
      }
    }

响应

  • 要素说明
    表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

    备份策略通用参数,此处默认为空。

  • resource 字段数据结构说明
    表13 resource 字段数据结构说明

    参数

    参数类型

    描述

    id

    String

    待备份对象ID

    type

    String

    备份对象的实体对象类型。

    虚拟机:OS::Nova::Server

    name

    String

    备份对象名称

    extra_info

    Dict

    备份对象的附加信息

  • scheduled_operation_resp 字段数据结构说明
    表14 scheduled_operation_resp 字段数据结构说明

    参数

    参数类型

    描述

    description

    String

    调度周期描述,长度限制:0- 255,除了“<”、“>”不能输入,其它字符均可。

    enabled

    Boolean

    是否启用该调度周期,默认为true, 不启用时策略不会自动调度,可以手工调度

    name

    String

    调度周期名称,长度限制:1- 255,只能由中文、字母、数字、“_”、“-”组成。

    operation_type

    String

    操作类型,备份

    Enum:[ backup]

    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。用于区分备份对象是服务器或磁盘。

  • trigger_resp 字段数据结构说明
    表16 trigger_resp 字段数据结构说明

    参数

    参数类型

    描述

    properties

    trigger_properties_resp

    调度器属性。

    详情请参见表17

  • 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" : {
          }
        },
        "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",
            
          },
          "operation_type" : "backup",
          "id" : "fed3c8f1-7b6e-4e24-b1ad-473838bad569",
          "name" : "my-backup-policy"
        }
    ,
              "format" : "ical"
       ],
        "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

    服务不可用

错误码

请参考错误码