BackupPlan v1.1.1 custom resource definition

Spec schema

BackupPlanSpec defines the desired state of 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

Field

Type
Required or optional

 

Description
backupLocation
object
Optional
BackupLocation specifies the remote object storage location to store backups. For example, specs to a Cloud Storage buckets. This field is optional. By default, backups are stored in the backup disk.
backupLocation.gcsOptions
object
Optional
gcsOptions is a reference to Cloud Storage dependent options.
backupLocation.gcsOptions.bucket
string
Required
Bucket is a required field, (ex: dbs-dump-bucket) A user is to ensure proper write access to the storage bucket from within the Operator.
backupLocation.gcsOptions.key
string
Required
Object key for the dump files. (ex: ods-dump/scottschema.dmp).
backupLocation.gcsOptions.secretRef
object
Optional
SecretRef is a reference to the secret that stores GCS access information.
backupLocation.gcsOptions.secretRef.name
string
Optional
name is unique within a namespace to reference a secret resource.
backupLocation.gcsOptions.secretRef.namespace
string
Optional
namespace defines the space within which the secret name must be unique.
backupLocation.type
string
Required

Valid values: GCS, S3.

Type of Repository (S3 for Amazon S3, GCS for Google's Cloud Storage), which tells the agent which storage system/API to use.
backupRetainDays
integer
Optional

Default: 14; minimum: 1, maximum: 90.

Number of days after which the service will delete a Backup. If specified, a Backup created under this BackupPlan will be automatically deleted after its age reaches create_time + backup_retain_days. The valid values are from 1 to 90 days. Default to 14 retain days if not specified.
backupSchedules
object
Optional
Defines the schedules for different types of backups. Full, Differential and Incremental backup types are supported: https://pgbackrest.org/user-guide.html#concept/backup This field is optional. By default, take one full backup every day at midnight.
backupSchedules.differential
string
Optional
Defines the Cron schedule for a differential pgBackRest backup. Follows the standard Cron schedule syntax: https://k8s.io/docs/concepts/workloads/controllers/cron-jobs/#cron-schedule-syntax
backupSchedules.full
string
Optional
Defines the Cron schedule for a full pgBackRest backup. Follows the standard Cron schedule syntax: https://k8s.io/docs/concepts/workloads/controllers/cron-jobs/#cron-schedule-syntax
backupSchedules.incremental
string
Optional
Defines the Cron schedule for a full pgBackRest backup. Follows the standard Cron schedule syntax: https://k8s.io/docs/concepts/workloads/controllers/cron-jobs/#cron-schedule-syntax
dbclusterRef
string
Optional
The DBCluster name this backupplan configures. This field is required and immutable.
paused
boolean
Optional

Default: false.

A flag to indicate if the backup creation under this BackupPlan is paused. If set to true, the service will pause the scheduling of new Backups under this BackupPlan. Default to False.

Status schema

BackupPlanStatus defines the observed state of 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

Field

Type
Required or optional

 

Description
conditions
list (object)
OPTIONALITY
Conditions represents the latest available observations of the Entity's current state.
conditions[]
object
OPTIONALITY
Condition contains details for one aspect of the current
conditions[].lastTransactionTime
string
Required
The last time the condition transitioned from one status to another. This should be when the underlying condition changed. If that is not known, then using the time when the API field changed is acceptable.
conditions[].message
string
Required
A human readable message indicating details about the transition. This may be an empty string.
conditions[].observedGeneration
integer
Optional
Represents the .metadata.generation that the condition was set based upon. For example, if .metadata.generation is 12 but the .status.conditions[x].observedGeneration is 9, the condition is out of date with respect to the current state of the instance.
conditions[].reason
string
Required
maximum length: 1024, minimum length: 1 Contains a programmatic identifier indicating the reason for the condition's last transition. Producers of specific condition types may define expected values and meanings for this field, and whether the values are considered a guaranteed API. The value should be a CamelCase string. This field may not be empty.
conditions[].status
string
Required
Status of the condition, one of True, False, Unknown.
conditions[].type
string
Required
Maximum length: 316 Type of condition in CamelCase or in foo.example.com/CamelCase.
criticalIncidents
object
Required
A flat list of all active Critical Incidents. CriticalIncident contains all information about an ongoing critical incident.
criticalIncidents[].code
string
Required
The error code of this particular error. Error codes are DBSE+numeric strings, like "DBSE1012".
criticalIncidents[].createTime
string
Required
The timestamp when this Incident was created at the origin.
criticalIncidents[].message
string
Optional
The incident/error that occurred.
criticalIncidents[].messageTemplateParams
object
Optional
Contains key-value pairs necessary for generating a user-friendly data-driven version of Message in the user interface.
criticalIncidents[].resource
object
Required
Contains information about the Database Service component that reported the incident as well as about the Kubernetes resource.
criticalIncidents[].resource.component
string
Required
An internal identifier of the Database Service subsystem that reported the incident.
criticalIncidents[].resource.location
object
Optional
Location
criticalIncidents[].resource.location.cluster
string
Optional
The name of the cluster of the affected Kubernetes resource.
criticalIncidents[].resource.location.group
string
Optional
The Group name of the Kubernetes resource.
criticalIncidents[].resource.location.kind
string
Optional
The Kind of the Kubernetes resource.
criticalIncidents[].resource.location.name
string
Optional
The name of the affected Kubernetes resource.
criticalIncidents[].resource.location.namespace
string
Optional
The namespace of the affected Kubernetes resource.
criticalIncidents[].resource.location.version
string
Optional
The Version of the Kubernetes resource.
criticalIncidents[].stackTrace
object
Optional
An unstructured list of messages from the stack trace.
criticalIncidents[].stackTrace.component
string
Optional
The name of a Database Service component that logged the message.
criticalIncidents[].stackTrace.message
string
Optional
Logged message.
criticalIncidents[].transientUntil
string
Optional
TransientUntil if present indicates that the issue should be considered transient until the specified time.
lastBackupTime
string
Optional
The timestamp for the most recently executed backup.
nextBackupTime
string
Optional
The timestamp for the next scheduled backup.
observedGeneration
integer
Optional
Internal: The generation observed by the controller.
phase
string
Optional
The phase of a BackupPlan.
reconciled
boolean
Optional
Internal: Whether the resource was reconciled by the controller.
recoveryWindow
object
Optional
The currently available recovery window.
recoveryWindow.begin
string
Optional
Begin time.
recoveryWindow.end
string
Optional
End time.