BackupPlan v1.3.0 自定义资源定义

选择文档版本:

规范架构

BackupPlanSpec 定义 BackupPlan 的期望状态。

backupLocation:
  gcsOptions:
    bucket: string
    key: string
    secretRef:
      name: string
      namespace: string
  type: string
backupRetainDays: integer
backupSchedules:
  differential: string
  full: string
  incremental: string
dbclusterRef: string
paused: boolean

字段

类型
必需或可选

 

说明
backupLocation
object
可选
BackupLocation 指定用于存储备份的远程对象存储位置。例如,Cloud Storage 存储桶的规范。此字段是可选字段。默认情况下,备份存储在备份磁盘中。
backupLocation.gcsOptions
object
可选
gcsOptions 是对 Cloud Storage 相关选项的引用。
backupLocation.gcsOptions.bucket
string
必需
存储桶是必需字段(例如:dbs-dump-bucket) 用户应确保操作器中对存储桶具有适当的写入访问权限。
backupLocation.gcsOptions.key
string
必需
转储文件的对象键。(例如:ods-dump/scottschema.dmp)。
backupLocation.gcsOptions.secretRef
object
可选
SecretRef 是对存储 GCS 访问信息的 Secret 的引用。
backupLocation.gcsOptions.secretRef.name
string
可选
name 在命名空间中是唯一的,用于引用 Secret 资源。
backupLocation.gcsOptions.secretRef.namespace
string
可选
namespace 定义 Secret 名称必须在其中具有唯一性的空间。
backupLocation.type
string
必需

有效值:GCS、S3。

仓库的类型(对于 Amazon S3 为 S3,对于 Google Cloud Storage 为 GCS),用于告知代理要使用哪个存储系统/API。
backupRetainDays
integer
可选

默认值:14;最小值:1;最大值:90。

服务将在多少天后删除备份。如果指定了该值,则在此 BackupPlan 下创建的备份会在存留时间达到 create_time + backup_retain_days 后自动删除。有效值为 1 到 90 天。如果未指定,则默认保留 14 天。
backupSchedules
object
可选
定义不同类型的备份的时间表。支持完整、差分和增量备份类型:https://pgbackrest.org/user-guide.html#concept/backup 此字段是可选字段。默认情况下,每天午夜进行一次完整备份。
backupSchedules.differential
string
可选
定义差分 pgBackRest 备份的 Cron 时间表。遵循标准 Cron 时间表语法:https://k8s.io/docs/concepts/workloads/controllers/cron-jobs/#cron-schedule-syntax
backupSchedules.full
string
可选
定义完整 pgBackRest 备份的 Cron 时间表。遵循标准 Cron 时间表语法:https://k8s.io/docs/concepts/workloads/controllers/cron-jobs/#cron-schedule-syntax
backupSchedules.incremental
string
可选
定义完整 pgBackRest 备份的 Cron 时间表。遵循标准 Cron 时间表语法:https://k8s.io/docs/concepts/workloads/controllers/cron-jobs/#cron-schedule-syntax
dbclusterRef
string
可选
此 backupplan 配置的 DBCluster 名称。此字段是必需字段且不可更改。
paused
boolean
可选

默认值:false。

用于指示此 BackupPlan 下的备份创建是否暂停的标志。如果设置为 true,服务将暂停在此 BackupPlan 下安排新备份。默认为 False。

状态架构

BackupPlanStatus 定义观察到的 BackupPlan 状态。

conditions:
- lastTransactionTime: string
  message: string
  observedGeneration: integer
  reason: string
  status: string
  type: string
criticalIncidents:
- code: string
  createTime: string
  message: string
  messageTemplateParams: object
  resource:
    component: string
    location:
      cluster: string
      group: string
      kind: string
      name: string
      namespace: string
      version: string
  stackTrace:
  - component: string
    message: string
  transientUntil: string
lastBackupTime: string
nextBackupTime: string
observedGeneration: integer
phase: string
reconciled: boolean
recoveryWindow:
  begin: string
  end: string

字段

类型
必需或可选

 

说明
conditions
list (object)
可选性
Conditions 表示实体当前状态的最新可用观察结果。
conditions[]
object
可选性
Condition 包含当前状态的一个方面的详细信息
conditions[].lastTransactionTime
string
必需
条件上次从一种状态转换到另一种状态的时间。这应该是底层条件更改的时间。如果该信息未知,则可以使用 API 字段更改的时间。
conditions[].message
string
必需
人类可读的消息,指示有关转换的详细信息。这可能是空字符串。
conditions[].observedGeneration
integer
可选
表示设置条件所基于的 .metadata.generation。例如,如果 .metadata.generation 为 12,但 .status.conditions[x].observedGeneration 为 9,则表示条件相对于实例的当前状态已过时。
conditions[].reason
string
必需
长度上限:1024;长度下限:1 包含一个程序化标识符,指示条件上次转换的原因。特定条件类型的生成者可以为此字段定义预期值和含义,以及这些值是否被视为有保证的 API。值应为 CamelCase 字符串。此字段不得为空。
conditions[].status
string
必需
条件的状态,为 True、False、Unknown 之一。
conditions[].type
string
必需
长度上限:316 条件的类型,采用 CamelCase 或 foo.example.com/CamelCase 形式。
criticalIncidents
object
必需
所有活跃的严重突发事件的扁平列表。CriticalIncident 包含有关正在进行的严重突发事件的所有信息。
criticalIncidents[].code
string
必需
此特定错误的错误代码。错误代码是 DBSE+数字字符串,例如“DBSE1012”。
criticalIncidents[].createTime
string
必需
在源头创建此突发事件时的时间戳。
criticalIncidents[].message
string
可选
发生的突发事件或错误。
criticalIncidents[].messageTemplateParams
object
可选
包含在界面中生成人性化数据驱动型消息版本所需的键值对。
criticalIncidents[].resource
object
必需
包含有关报告突发事件的数据库服务组件以及 Kubernetes 资源的信息。
criticalIncidents[].resource.component
string
必需
报告突发事件的数据库服务子系统的内部标识符。
criticalIncidents[].resource.location
object
可选
位置
criticalIncidents[].resource.location.cluster
string
可选
受影响的 Kubernetes 资源的集群名称。
criticalIncidents[].resource.location.group
string
可选
Kubernetes 资源的组名称。
criticalIncidents[].resource.location.kind
string
可选
Kubernetes 资源的种类。
criticalIncidents[].resource.location.name
string
可选
受影响的 Kubernetes 资源的名称。
criticalIncidents[].resource.location.namespace
string
可选
受影响的 Kubernetes 资源的命名空间。
criticalIncidents[].resource.location.version
string
可选
Kubernetes 资源的版本。
criticalIncidents[].stackTrace
object
可选
来自堆栈轨迹的消息的非结构化列表。
criticalIncidents[].stackTrace.component
string
可选
记录消息的数据库服务组件的名称。
criticalIncidents[].stackTrace.message
string
可选
记录的消息。
criticalIncidents[].transientUntil
string
可选
如果存在,则 TransientUntil 指示在指定时间之前,问题应被视为暂时性问题。
lastBackupTime
string
可选
最近执行的备份的时间戳。
nextBackupTime
string
可选
下一个预定备份的时间戳。
observedGeneration
integer
可选
内部:控制器观察到的生成。
phase
string
可选
BackupPlan 的阶段。
reconciled
boolean
可选
内部:资源是否由控制器进行了协调。
recoveryWindow
object
可选
目前可用的恢复时段。
recoveryWindow.begin
string
可选
开始时间。
recoveryWindow.end
string
可选
结束时间。