Creating a Backup CR
You back up Kubernetes images, internal images, and persistent volumes (PVs) by creating a Backup
custom resource (CR).
Prerequisites
You must install the OpenShift API for Data Protection (OADP) Operator.
The
DataProtectionApplication
CR must be in aReady
state.Backup location prerequisites:
You must have S3 object storage configured for Velero.
You must have a backup location configured in the
DataProtectionApplication
CR.
Snapshot location prerequisites:
Your cloud provider must have a native snapshot API or support Container Storage Interface (CSI) snapshots.
For CSI snapshots, you must create a
VolumeSnapshotClass
CR to register the CSI driver.You must have a volume location configured in the
DataProtectionApplication
CR.
Procedure
Retrieve the
backupStorageLocations
CRs by entering the following command:$ oc get backupStorageLocations -n openshift-adp
Example output
NAMESPACE NAME PHASE LAST VALIDATED AGE DEFAULT
openshift-adp velero-sample-1 Available 11s 31m
Create a
Backup
CR, as in the following example:apiVersion: velero.io/v1
kind: Backup
metadata:
name: <backup>
labels:
velero.io/storage-location: default
namespace: openshift-adp
spec:
hooks: {}
includedNamespaces:
- <namespace> (1)
includedResources: [] (2)
excludedResources: [] (3)
storageLocation: <velero-sample-1> (4)
ttl: 720h0m0s
labelSelector: (5)
matchLabels:
app=<label_1>
app=<label_2>
app=<label_3>
orLabelSelectors: (6)
- matchLabels:
app=<label_1>
app=<label_2>
app=<label_3>
1 Specify an array of namespaces to back up. 2 Optional: Specify an array of resources to include in the backup. Resources might be shortcuts (for example, ‘po’ for ‘pods’) or fully-qualified. If unspecified, all resources are included. 3 Optional: Specify an array of resources to exclude from the backup. Resources might be shortcuts (for example, ‘po’ for ‘pods’) or fully-qualified. 4 Specify the name of the backupStorageLocations
CR.5 Map of {key,value} pairs of backup resources that have all of the specified labels. 6 Map of {key,value} pairs of backup resources that have one or more of the specified labels. Verify that the status of the
Backup
CR isCompleted
:$ oc get backup -n openshift-adp <backup> -o jsonpath='{.status.phase}'