Installation Manual - 56 OADP schedule enablement

Conservative hub and spoke OADP schedule enablement after ad hoc backup validation.

This chapter records conservative OADP schedule enablement after the replacement Vault R1 DPA and ad hoc backup gates passed.

Governance

FieldValue
IssueOP-GF-VAULTRECOVERY-1 / #389
MilestoneWorkspace Governance
ADRADR 0028: Greenfield Vault Replacement After Custody Loss
Existing controlsADR 0016 and ADR 0025

Preflight

Both clusters were steady before the schedule change:

ClusterOpenShiftClusterOperatorsBSLVeleroExisting scheduled objects
hub-dc-v74.20.18steadyAvailable1/1none
spoke-dc-v74.20.18steadyAvailable1/1none

Schedule Policy

Created one resource-only Velero Schedule per cluster:

platform-resource-daily
ClusterCronStorageLocationTTLSnapshotsFS backup
hub-dc-v715 2 * * *hub-dc-v7168h0m0sdisableddisabled
spoke-dc-v745 2 * * *spoke-dc-v7168h0m0sdisableddisabled

The schedules include all namespaces as Kubernetes resources only. Volume snapshots and filesystem backup are disabled for this first recurring gate.

GitOps

GitOps commits:

aa2c0dc Add v7 OADP resource backup schedules
acdac33 Allow spoke Argo CD to manage OADP schedules

The second commit grants the spoke Argo controller the minimum additional permission needed for velero.io/schedules.

Validation

Render and admission checks passed:

  • hub render included one Schedule;
  • spoke render included one Schedule;
  • server dry-run admission passed for both overlays.

Argo CD reached:

hub-dc-v7-bootstrap          Synced/Healthy @ acdac33
spoke-dc-v7-cluster-config   Synced/Healthy @ acdac33 on hub
spoke-dc-v7-cluster-config   Synced/Healthy @ acdac33 on spoke

Live schedule state:

ClusterPhaseLastBackupBackup/Restore/Delete requests
hub-dc-v7Enabledemptynone
spoke-dc-v7Enabledemptynone

The empty lastBackup value is expected because the first scheduled window had not occurred yet.

Final OADP state:

ClusterBSLVeleroCluster health
hub-dc-v7Available1/1steady
spoke-dc-v7Available1/1steady

Operational Notes

Use fully qualified Velero resource names:

schedules.velero.io
backups.velero.io
restores.velero.io
deletebackuprequests.velero.io

Short names are ambiguous in this environment.

Actions Not Taken

  • No ad hoc Backup was created during this gate.
  • No Restore object was created.
  • No stable Vault DNS cutover was made.
  • No old Vault mutation was made.
  • No secret values were printed.

Next Action

Verify the first scheduled hub/spoke backup series after 02:15/02:45 UTC, then run a governed restore validation drill.