ClusterBackupSchedule resource

This section describes the ClusterBackupSchedule custom resource (CR) used in the MOSK management API to configure a schedule for MOSK or management cluster backups.

The ClusterBackupSchedule CR contains the following fields:

  • apiVersion

    API version of the object that is kaas.mirantis.com/v1alpha1.

  • kind

    Object type that is ClusterBackupSchedule.

  • metadata

    Metadata of the ClusterBackupSchedule CR that contains the following fields:

    • name

      Name of the ClusterBackupSchedule object.

    • namespace

      Project name of the cluster that relates to ClusterBackupSchedule.

    After the ClusterBackupSchedule object is created, the metadata section also contains details about the target cluster requesting the backup schedule:

    • ownerReferences

      Details about the target cluster that owns the ClusterBackupSchedule object. Contains the following fields:

      • apiVersion

        API version of the target Cluster object that owns the ClusterBackupSchedule object.

      • kind

        Object type of the target Cluster object that owns the ClusterBackupSchedule object.

      • name

        Name of the target Cluster object that owns the ClusterBackupSchedule object.

      • uid

        Reference to the targetCluster field located in the spec section of the ClusterBackupSchedule object.

  • spec

    Specification of the ClusterBackupSchedule CR that contains the following fields:

    • parameters

      Parameters of the ClusterBackupSchedule CR. If empty, MOSK replaces it with the backup section values of the target Cluster object spec, if any.

      Contains the following fields:

      • keyEncryptionKey

        Name of the Kubernetes secret that contains the encryption key that is used to encrypt the backup data. Requires either rclone or nfsUploadUrl field to be set.

      • nfsUploadUrl

        NFS URL for the backup data upload. For example, nfs://1.2.3.4:/path. Mutually exclusive with the rclone field.

      • rclone

        Parameters of the rclone configuration. Contains the following fields:

        • bucket

          Name of the remote rclone bucket containing the folder for the backup.

        • credential

          Name of the RCloneCredential object that contains credentials for the remote storage bucket.

    • schedule

      Schedule for the backup in the “0 * * * *” cron format. For example, 0 0 * * * for daily backups at 00:00. The schedule is relative to the time zone of the management cluster.

      Caution

      The minimum supported backup interval is one hour.

    • targetCluster

      Name of the target cluster for the backup schedule.

  • status

    Status of the ClusterBackupSchedule CR. Contains the following fields:

    • attempts

      List of backup attempts. Contains the following fields:

      • inProgress

        Indicates that a backup attempt is in progress. Contains the following fields:

        • startedAt

          Timestamp of the backup start in the RFC 3339 format.

        • status

          Status of the backup progress.

        • message

          Message describing the progress of the current backup attempt.

      • last

        Last backup attempt. Contains the following fields:

        • completedAt

          Timestamp of the backup completion in the RFC 3339 format. For example, 2026-01-16T16:00:51Z.

        • startedAt

          Timestamp of the backup start in the RFC 3339 format.

        • status

          Status of the backup attempt. Possible values are Completed and Failed.

        • message

          Message describing the progress of the last backup attempt.

      • lastSuccessful

        Last successful backup attempt. Contains the following fields:

        • completedAt

          Timestamp of the backup completion in the RFC 3339 format.

        • startedAt

          Timestamp of the backup start in the RFC 3339 format.

      • total

        Total number of backup attempts.

Configuration example of a ClusterBackupSchedule object before creation:

apiVersion: kaas.mirantis.com/v1alpha1
kind: ClusterBackupSchedule
metadata:
  name: test-schedule
  namespace: default
spec:
  parameters:
    keyEncryptionKey: swift-s3
    rclone:
      bucket: test
      credential: swift-s3
  schedule: “0 * * * *”
  targetCluster: kaas-mgmt
status:
    attempts:
      last:
        completedAt: "2026-01-09T12:02:47Z"
        startedAt: "2026-01-09T12:02:41Z"
        status: Completed
      lastSuccessful:
        completedAt: "2026-01-09T12:02:47Z"
        startedAt: "2026-01-09T12:02:41Z"
      total: 1