首批通过分布式安全可靠测评,为关键业务系统打造
修改集群的备份策略
更新时间:2023-08-10 11:45:58
功能说明
该接口用于修改集群的备份策略,通过该接口可以修改集群的备份调度的周期、时间和存储地址,以及过期数据清理、告警阈值,二次备份配置等信息。
调用说明
接口约束
调用者需具备对该集群的备份恢复更新权限。
调用者需要通过 OCP 应用服务鉴权。
请求路径
PATCH /api/v2/ob/clusters/{id}/backup/config/backupStrategy
path:
| 参数 | 类型 | 必选 | 示例值 | 描述 |
|---|---|---|---|---|
| id | Integer | 是 | 1 | 需修改备份策略的集群的 ID。 |
请求参数
| 参数 | 类型 | 必选 | 示例值 | 描述 |
|---|---|---|---|---|
| backupMode | String | 是 | LOGICAL_BACKUP | 备份模式。 取值范围: * LOGICAL_BACKUP:逻辑备份 * PHYSICAL_BACKUP:物理备份 |
| obBackupScheduleConfig | Object | 是 | NA | 备份调度配置,详情请参见 obBackupScheduleConfig 的数据结构 。 |
| obBackupThresholdConfig | Object | 是 | NA | 备份告警阈值配置,详情请参见 obBackupThresholdConfig 的数据结构 。 |
| obBackupServiceStorageConfig | Object | 是 | NA | 备份存储配置,详情请参见 obBackupServiceStorageConfig 的数据结构。 |
| secondaryBackupEnabled | Boolean | 否 | false | 二次备份开关,默认值为 false。 OB V2.2.77 及以上版本才支持二次备份。 |
| obSecondaryBackupConfig | Object | 否 | NA | 二次备份配置,详情请参见 obSecondaryBackupConfig 的数据结构 。 |
obBackupScheduleConfig 的数据结构
| 参数 | 类型 | 必选 | 说明 |
|---|---|---|---|
| backupScheduleMode | String | 是 | 备份调度周期,包括:WEEK,MONTH。 |
| backupScheduleEnabled | Boolean | 是 | 备份开关。 |
| backupScheduleTime | OffsetTime | 是 | 备份调度时间,如"02:00:00.000+08:00"。 |
| dayAndDataBackupModelMap | Map | 是 | 调度日与其数据备份方式,如 { "2": "FULL_BACKUP", "4": "FULL_BACKUP", "6": "INCREMENTAL_BACKUP" } 代表周二、周四做全量数据备份,周六做增量数据备份。 |
| startLogBackup | Boolean | 是 | 是否同时启动日志备份,一般均设置为 true。 |
| cleanEnabled | Boolean | 否 | 过期数据清理开关。 |
| backupDataRetentionDays | Long | 否 | 备份数据保留天数。如 7 天,则保留至少最近7天的备份数据。在 cleanEnabled=true 时,才有效。 |
| cleanScheduleTime | OffsetTime | 否 | 过期数据清理的调度时间。 |
obBackupThresholdConfig 的数据结构
| 参数 | 类型 | 必选 | 说明 |
|---|---|---|---|
| dataBackupTimeoutMinutes | Long | 是 | 数据备份调度超时时间,单位为分钟。 |
| noSuccessfulDataBackupAlarmDays | Long | 是 | 无成功数据备份告警触发的最大天数。 |
| libObLogExpireDays | Long | 否 | liboblog 的保留天数,仅在逻辑备份模式下有效。 |
| logBackupDelaySeconds | Long | 是 | 日志备份延迟告警阈值,单位为秒。 |
obBackupServiceStorageConfig 的数据结构
| 参数 | 类型 | 必选 | 说明 |
|---|---|---|---|
| configName | String | 是 | 存储配置名。 |
| obBackupStorageBaseInfo | Object | 是 | 存储配置基本参数。 |
| |--backupStorageType | String | 是 | 存储类型,目前支持 BACKUP_STORAGE_FILE、BACKUP_STORAGE_OSS、BACKUP_STORAGE_COS 三种类型 |
| |--storageUrl | String | 是 | 存储目录。请配置为不带协议的目录,如 /obbackup/ 或 osstest/backup。 |
| |--ossAccessKey | Object | 否 | OSS 信息,仅在backupStorageType=BACKUP_STORAGE_OSS 时有效。 |
| |--endpoint | String | 是 | 访问域名。 |
| |--accessKeyId | String | 是 | 访问用户。 |
| |--accessKeySecret | String | 是 | 访问秘钥。 |
| |--cosAccessKey | Object | 否 | COS 信息,仅在backupStorageType=BACKUP_STORAGE_COS 时有效。 |
| |--endpoint | String | 是 | 访问域名。 |
| |--accessKeyId | String | 是 | 访问用户。 |
| |--accessKeySecret | String | 是 | 访问秘钥。 |
| |--appId | String | 是 | 应用 ID。 |
| |--alarmStoragePercentageThreshold | Long | 是 | 备份存储容量报警阈值,请配置为百分比。 |
| storageId | Long | 否 | 存储配置 ID。 |
| serviceType | String | 否 | 服务类型,备份恢复服务(逻辑备份恢复)或 OB 集群(物理备份恢复)。包含 BACKUP_RESTORE_SERVICE、OB_CLUSTER、OTHERS。 |
| serviceId | Long | 否 | 服务 ID。 * 当服务类型是BACKUP_RESTORE_SERVICE 时,代表备份恢复服务 ID。 * 当服务类型是 OB_CLUSTER 时,代表集群 ID。 |
| serviceName | String | 否 | 服务名。 * 当服务类型是 BACKUP_RESTORE_SERVICE 时,代表备份恢复服务名。 * 当服务类型是 OB_CLUSTER时,代表集群名。 |
| hostIdList | Array | 否 | 主机 ID 列表,用于全局恢复的解析主机列表。 * 当服务类型是 BACKUP_RESTORE_SERVICE 时,代表备份恢复服务的主机 ID 列表。 * 当服务类型是 OB_CLUSTER 时,代表集群的主机 ID 列表。 |
obSecondaryBackupConfig 的数据结构
| 参数 | 类型 | 必选 | 说明 |
|---|---|---|---|
| scheduleConfig | Object | 是 | 二次备份调度配置。 |
| |--dataBackupScheduleEnabled | Boolean | 是 | 数据二次备份开关。 |
| |--logBackupScheduleEnabled | Boolean | 是 | 日志二次备份开关。 |
| |--logSecondaryBackupPeriod | String | 是 | 日志二次备份的调度周期,目前仅支持 ONCE_A_DAY。 |
| storageConfig | Object | 是 | 存储配置,参照 obBackupServiceStorageConfig 的数据结构 。 |
返回结果
| 参数 | 类型 | 说明 |
|---|---|---|
| data | Object | 备份对象的通用响应,详见 BackupCommonResponse 的数据结构。 |
| successful | Boolean | 请求是否成功。 |
| timestamp | Datetime | 服务端完成请求的时间戳。 |
| duration | Integer | 服务端处理请求的时间(毫秒)。 |
| status | Integer | 符合 HTTP Status 规范的编码。 |
| traceId | String | 请求的 Trace Id,用于排查问题。 |
| server | String | 响应请求的应用服务的地址。 |
BackupCommonResponse 的数据结构
| 参数 | 类型 | 说明 |
|---|---|---|
| obBackupTaskType | String | 备份操作类型,如:"CREATE_BACKUP_STRATEGY"。 |
| backupObjectOpsResultList | Array | 备份对象操作结果集。 |
| |--obBackupObjectList | Array | 备份对象列表。 |
| |--clusterId | Long | 集群 ID。 |
| |--tenantId | Long | 租户 ID。 |
| |--backupDimension | String | 备份维度,如 CLUSTER,TENANT 分表代表集群备份,租户备份。目前暂不支持租户备份。 |
| |--beSuccessful | Boolean | 操作是否成功。 |
| |--taskIdList | Array | 任务编号列表,在有异步任务下返回。 |
| |--errorCode | Object | 错误码。 |
| |--hint | String | 提示信息。 |
示例
请求示例
{
"backupMode": "PHYSICAL_BACKUP",
"obSecondaryBackupConfig": {
"storageConfig": {
"configName": "nfs0907_1451",
"obBackupStorageBaseInfo": {
"backupStorageType": "BACKUP_STORAGE_FILE",
"storageUrl": "/obbackup/backup_backup"
},
"alarmStoragePercentageThreshold": 80,
"storageId": 2000035
},
"scheduleConfig": {
"logSecondaryBackupPeriod": "ONCE_AN_HOUR",
"logBackupScheduleEnabled": true,
"dataBackupScheduleEnabled":true
}
},
"obBackupThresholdConfig": {
"dataBackupTimeoutMinutes": 7,
"logBackupDelaySeconds": 300,
"noSuccessfulDataBackupAlarmDays": 2
},
"secondaryBackupEnabled": true,
"obBackupObjectList": [
{
"clusterId": 1000005,
"backupDimension": "CLUSTER"
}
],
"obBackupScheduleConfig": {
"dayAndDataBackupModelMap": {
"2": "FULL_BACKUP",
"4": "FULL_BACKUP",
"6": "FULL_BACKUP"
},
"startLogBackup": true,
"backupScheduleMode": "WEEK",
"backupScheduleTime": "15:18:00.000+08:00"
},
"obBackupServiceStorageConfig": {
"configName": "nfs0907_1452",
"obBackupStorageBaseInfo": {
"backupStorageType": "BACKUP_STORAGE_FILE",
"storageUrl": "/obbackup/"
},
"storageId": 2000034,
"alarmStoragePercentageThreshold": 80
}
}
返回示例
{
"data": {
"backupObjectOpsResultList": [
{
"beSuccessful": true,
"obBackupObjectList": [
{
"backupDimension": "CLUSTER",
"clusterId": 1000005
}
],
"taskIdList": []
}
],
"obBackupTaskType": "UPDATE_BACKUP_STRATEGY"
},
"duration": 110,
"server": "a83ad33525",
"status": 200,
"successful": true,
"timestamp": "2021-09-07T15:16:14.651+08:00",
"traceId": "042fbebcb14742e9"
}