Skip to content

Commit 5999d02

Browse files
authored
Merge pull request #41678 from apinnick/CNV13698-backup-restore-oadp-plugin
CNV-13698: CNV OADP integration
2 parents 55a10da + 86c82f4 commit 5999d02

26 files changed

+317
-134
lines changed

_topic_maps/_topic_map.yml

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -3223,6 +3223,17 @@ Topics:
32233223
- Name: Collecting OpenShift Virtualization data for Red Hat Support
32243224
File: virt-collecting-virt-data
32253225
Distros: openshift-enterprise
3226+
- Name: Backup and restore
3227+
Dir: backup_restore
3228+
Topics:
3229+
- Name: Backup and restore overview
3230+
File: virt-backup-restore-overview
3231+
- Name: Installing and configuring OADP
3232+
File: virt-installing-configuring-oadp
3233+
- Name: Backing up virtual machines
3234+
File: virt-backing-up-vms
3235+
- Name: Restoring virtual machines
3236+
File: virt-restoring-vms
32263237
# - Name: Collecting OKD Virtualization data for community report
32273238
# File: virt-collecting-virt-data
32283239
# Distros: openshift-origin

backup_and_restore/application_backup_and_restore/installing/about-installing-oadp.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -29,9 +29,9 @@ To back up PVs with snapshots, you must have a cloud provider that supports eith
2929
* xref:../../../backup_and_restore/application_backup_and_restore/installing/installing-oadp-gcp.adoc#installing-oadp-gcp[Google Cloud Platform]
3030
* CSI snapshot-enabled cloud provider, such as xref:../../../backup_and_restore/application_backup_and_restore/installing/installing-oadp-ocs.adoc#installing-oadp-ocs[OpenShift Container Storage]
3131
32-
If your cloud provider does not support snapshots or if your storage is NFS, you can back up applications with xref:../../../backup_and_restore/application_backup_and_restore/backing_up_and_restoring/backing-up-applications.adoc#oadp-backing-up-applications-restic_backing-up-applications[Restic].
32+
If your cloud provider does not support snapshots or if your storage is NFS, you can back up applications with xref:../../../backup_and_restore/application_backup_and_restore/backing_up_and_restoring/backing-up-applications.adoc#oadp-backing-up-applications-restic_backing-up-applications[Restic backups] on object storage.
3333

34-
You create a `Secret` object for your storage provider credentials and then you install the Data Protection Application.
34+
You create a default `Secret` and then you install the Data Protection Application.
3535

3636
[discrete]
3737
[role="_additional-resources"]

backup_and_restore/application_backup_and_restore/installing/installing-oadp-aws.adoc

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,23 +10,22 @@ include::modules/common-attributes.adoc[]
1010

1111
toc::[]
1212

13-
You install the OpenShift API for Data Protection (OADP) with Amazon Web Services (AWS) by installing the OADP Operator, configuring AWS for Velero, and then installing the Data Protection Application.
13+
You install the Openshift API for Data Protection (OADP) with Amazon Web Services (AWS) by installing the OADP Operator. The Operator installs link:https://{velero-domain}/docs/v1.7/[Velero 1.7].
1414

15-
:FeatureName: The `CloudStorage` API for S3 storage
16-
include::snippets/technology-preview.adoc[]
15+
You configure AWS for Velero, create a default `Secret`, and then install the Data Protection Application.
1716

1817
To install the OADP Operator in a restricted network environment, you must first disable the default OperatorHub sources and mirror the Operator catalog. See xref:../../../operators/admin/olm-restricted-networks.adoc#olm-restricted-networks[Using Operator Lifecycle Manager on restricted networks] for details.
1918

2019
include::modules/oadp-installing-operator.adoc[leveloffset=+1]
2120
include::modules/migration-configuring-aws-s3.adoc[leveloffset=+1]
22-
23-
include::modules/oadp-creating-secret.adoc[leveloffset=+1]
21+
include::modules/oadp-about-backup-snapshot-locations-secrets.adoc[leveloffset=+1]
22+
include::modules/oadp-creating-default-secret.adoc[leveloffset=+2]
2423
include::modules/oadp-secrets-for-different-credentials.adoc[leveloffset=+2]
2524

2625
[id="configuring-dpa-aws"]
2726
== Configuring the Data Protection Application
2827

29-
You can configure Velero resource allocations and enable self-signed CA certificates.
28+
You can configure the Data Protection Application by setting Velero resource allocations or enabling self-signed CA certificates.
3029

3130
include::modules/oadp-setting-resource-limits-and-requests.adoc[leveloffset=+2]
3231
include::modules/oadp-self-signed-certificate.adoc[leveloffset=+2]

backup_and_restore/application_backup_and_restore/installing/installing-oadp-azure.adoc

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,23 +10,22 @@ include::modules/common-attributes.adoc[]
1010

1111
toc::[]
1212

13-
You install the OpenShift API for Data Protection (OADP) with Microsoft Azure by installing the OADP Operator, configuring Azure for Velero, and then installing the Data Protection Application.
13+
You install the Openshift API for Data Protection (OADP) with Microsoft Azure by installing the OADP Operator. The Operator installs link:https://{velero-domain}/docs/v1.7/[Velero 1.7].
1414

15-
:FeatureName: The `CloudStorage` API for S3 storage
16-
include::snippets/technology-preview.adoc[]
15+
You configure Azure for Velero, create a default `Secret`, and then install the Data Protection Application.
1716

1817
To install the OADP Operator in a restricted network environment, you must first disable the default OperatorHub sources and mirror the Operator catalog. See xref:../../../operators/admin/olm-restricted-networks.adoc#olm-restricted-networks[Using Operator Lifecycle Manager on restricted networks] for details.
1918

2019
include::modules/oadp-installing-operator.adoc[leveloffset=+1]
2120
include::modules/migration-configuring-azure.adoc[leveloffset=+1]
22-
23-
include::modules/oadp-creating-secret.adoc[leveloffset=+1]
21+
include::modules/oadp-about-backup-snapshot-locations-secrets.adoc[leveloffset=+1]
22+
include::modules/oadp-creating-default-secret.adoc[leveloffset=+2]
2423
include::modules/oadp-secrets-for-different-credentials.adoc[leveloffset=+2]
2524

2625
[id="configuring-dpa-azure"]
2726
== Configuring the Data Protection Application
2827

29-
You can configure Velero resource allocations and enable self-signed CA certificates.
28+
You can configure the Data Protection Application by setting Velero resource allocations or enabling self-signed CA certificates.
3029

3130
include::modules/oadp-setting-resource-limits-and-requests.adoc[leveloffset=+2]
3231
include::modules/oadp-self-signed-certificate.adoc[leveloffset=+2]

backup_and_restore/application_backup_and_restore/installing/installing-oadp-gcp.adoc

Lines changed: 5 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -10,23 +10,22 @@ include::modules/common-attributes.adoc[]
1010

1111
toc::[]
1212

13-
You install the OpenShift API for Data Protection (OADP) with Google Cloud Platform (GCP) by installing the OADP Operator, configuring GCP for Velero, and then installing the Data Protection Application.
13+
You install the Openshift API for Data Protection (OADP) with Google Cloud Platform (GCP) by installing the OADP Operator. The Operator installs link:https://{velero-domain}/docs/v1.7/[Velero 1.7].
1414

15-
:FeatureName: The `CloudStorage` API for S3 storage
16-
include::snippets/technology-preview.adoc[]
15+
You configure GCP for Velero, create a default `Secret`, and then install the Data Protection Application.
1716

1817
To install the OADP Operator in a restricted network environment, you must first disable the default OperatorHub sources and mirror the Operator catalog. See xref:../../../operators/admin/olm-restricted-networks.adoc#olm-restricted-networks[Using Operator Lifecycle Manager on restricted networks] for details.
1918

2019
include::modules/oadp-installing-operator.adoc[leveloffset=+1]
2120
include::modules/migration-configuring-gcp.adoc[leveloffset=+1]
22-
23-
include::modules/oadp-creating-secret.adoc[leveloffset=+1]
21+
include::modules/oadp-about-backup-snapshot-locations-secrets.adoc[leveloffset=+1]
22+
include::modules/oadp-creating-default-secret.adoc[leveloffset=+2]
2423
include::modules/oadp-secrets-for-different-credentials.adoc[leveloffset=+2]
2524

2625
[id="configuring-dpa-gcp"]
2726
== Configuring the Data Protection Application
2827

29-
You can configure Velero resource allocations and enable self-signed CA certificates.
28+
You can configure the Data Protection Application by setting Velero resource allocations or enabling self-signed CA certificates.
3029

3130
include::modules/oadp-setting-resource-limits-and-requests.adoc[leveloffset=+2]
3231
include::modules/oadp-self-signed-certificate.adoc[leveloffset=+2]

backup_and_restore/application_backup_and_restore/installing/installing-oadp-mcg.adoc

Lines changed: 6 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -10,29 +10,27 @@ include::modules/common-attributes.adoc[]
1010

1111
toc::[]
1212

13-
You install the OpenShift API for Data Protection (OADP) with Multicloud Object Gateway (MCG) by installing the OADP Operator, creating a `Secret` object, and then installing the Data Protection Application.
13+
You install the Openshift API for Data Protection (OADP) with Multicloud Object Gateway (MCG) by installing the OADP Operator. The Operator installs link:https://{velero-domain}/docs/v1.7/[Velero 1.7].
1414

15-
MCG is a component of OpenShift Container Storage (OCS). You configure MCG as a backup location in the `DataProtectionApplication` custom resource (CR).
15+
You configure xref:../../../backup_and_restore/application_backup_and_restore/installing/installing-oadp-mcg.adoc#installing-oadp-mcg[Multicloud Object Gateway] as a backup location.
1616

1717
:FeatureName: The `CloudStorage` API for S3 storage
1818
include::snippets/technology-preview.adoc[]
1919

20-
If your cloud provider has a native snapshot API, configure a snapshot location. If your cloud provider does not support snapshots or if your storage is NFS, you can create backups with Restic.
21-
22-
You do not need to specify a snapshot location in the `DataProtectionApplication` CR for Restic or Container Storage Interface (CSI) snapshots.
20+
You create a `Secret` for the backup location and then you install the Data Protection Application.
2321

2422
To install the OADP Operator in a restricted network environment, you must first disable the default OperatorHub sources and mirror the Operator catalog. For details, see xref:../../../operators/admin/olm-restricted-networks.adoc#olm-restricted-networks[Using Operator Lifecycle Manager on restricted networks].
2523

2624
include::modules/oadp-installing-operator.adoc[leveloffset=+1]
2725
include::modules/migration-configuring-mcg.adoc[leveloffset=+1]
28-
29-
include::modules/oadp-creating-secret.adoc[leveloffset=+1]
26+
include::modules/oadp-about-backup-snapshot-locations-secrets.adoc[leveloffset=+1]
27+
include::modules/oadp-creating-default-secret.adoc[leveloffset=+2]
3028
include::modules/oadp-secrets-for-different-credentials.adoc[leveloffset=+2]
3129

3230
[id="configuring-dpa-mcg"]
3331
== Configuring the Data Protection Application
3432

35-
You can configure Velero resource allocations and enable self-signed CA certificates.
33+
You can configure the Data Protection Application by setting Velero resource allocations or enabling self-signed CA certificates.
3634

3735
include::modules/oadp-setting-resource-limits-and-requests.adoc[leveloffset=+2]
3836
include::modules/oadp-self-signed-certificate.adoc[leveloffset=+2]

backup_and_restore/application_backup_and_restore/installing/installing-oadp-ocs.adoc

Lines changed: 6 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -10,33 +10,26 @@ include::modules/common-attributes.adoc[]
1010

1111
toc::[]
1212

13-
You install the OpenShift API for Data Protection (OADP) with OpenShift Container Storage (OCS) by installing the OADP Operator and configuring a backup location and a snapshot location. Then, you install the Data Protection Application.
13+
You install the Openshift API for Data Protection (OADP) with OpenShift Container Storage (OCS) by installing the OADP Operator. The Operator installs link:https://{velero-domain}/docs/v1.7/[Velero 1.7].
1414

15-
You can configure xref:../../../backup_and_restore/application_backup_and_restore/installing/installing-oadp-mcg.adoc#installing-oadp-mcg[Multicloud Object Gateway] or any S3-compatible object storage as a backup location in the `DataProtectionApplication` custom resource (CR).
15+
You can configure xref:../../../backup_and_restore/application_backup_and_restore/installing/installing-oadp-mcg.adoc#installing-oadp-mcg[Multicloud Object Gateway] or any S3-compatible object storage as a backup location.
1616

1717
:FeatureName: The `CloudStorage` API for S3 storage
1818
include::snippets/technology-preview.adoc[]
1919

20-
If the cloud provider has a native snapshot API, you can configure cloud storage as a snapshot location in the `DataProtectionApplication` CR. You do not need to specify a snapshot location for Restic or Container Storage Interface (CSI) snapshots.
20+
You create a `Secret` for the backup location and then you install the Data Protection Application.
2121

2222
To install the OADP Operator in a restricted network environment, you must first disable the default OperatorHub sources and mirror the Operator catalog. For details, see xref:../../../operators/admin/olm-restricted-networks.adoc#olm-restricted-networks[Using Operator Lifecycle Manager on restricted networks].
2323

2424
include::modules/oadp-installing-operator.adoc[leveloffset=+1]
25-
26-
[NOTE]
27-
====
28-
After you install the OADP Operator, you configure object storage as a backup location and cloud storage as a snapshot location, if the cloud provider supports a native snapshot API.
29-
30-
If the cloud provider does not support snapshots or if your storage is NFS, you can create backups with xref:../../../backup_and_restore/application_backup_and_restore/backing_up_and_restoring/backing-up-applications.adoc#oadp-backing-up-applications-restic_backing-up-applications[Restic]. Restic does not require a snapshot location.
31-
====
32-
33-
include::modules/oadp-creating-secret.adoc[leveloffset=+1]
25+
include::modules/oadp-about-backup-snapshot-locations-secrets.adoc[leveloffset=+1]
26+
include::modules/oadp-creating-default-secret.adoc[leveloffset=+2]
3427
include::modules/oadp-secrets-for-different-credentials.adoc[leveloffset=+2]
3528

3629
[id="configuring-dpa-ocs"]
3730
== Configuring the Data Protection Application
3831

39-
You can configure Velero resource allocations and enable self-signed CA certificates.
32+
You can configure the Data Protection Application by setting Velero resource allocations or enabling self-signed CA certificates.
4033

4134
include::modules/oadp-setting-resource-limits-and-requests.adoc[leveloffset=+2]
4235
include::modules/oadp-self-signed-certificate.adoc[leveloffset=+2]
Lines changed: 55 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,55 @@
1+
// Module included in the following assemblies:
2+
//
3+
// * backup_and_restore/application_backup_and_restore/installing/installing-oadp-aws.adoc
4+
// * backup_and_restore/application_backup_and_restore/installing/installing-oadp-azure.adoc
5+
// * backup_and_restore/application_backup_and_restore/installing/installing-oadp-gcp.adoc
6+
// * backup_and_restore/application_backup_and_restore/installing/installing-oadp-mcg.adoc
7+
// * backup_and_restore/application_backup_and_restore/installing/installing-oadp-ocs.adoc
8+
// * virt/backup_restore/virt-installing-configuring-oadp.adoc
9+
10+
:_content-type: CONCEPT
11+
[id="oadp-about-backup-snapshot-locations_{context}"]
12+
= About backup and snapshot locations and their secrets
13+
14+
You specify backup and snapshot locations and their secrets in the `DataProtectionApplication` custom resource (CR).
15+
16+
[id="backup-locations_{context}"]
17+
[discrete]
18+
== Backup locations
19+
20+
You specify S3-compatible object storage, such as Multicloud Object Gateway, Noobaa, or Minio, as a backup location.
21+
22+
Velero backs up {product-title} resources, Kubernetes objects, and internal images as an archive file on object storage.
23+
24+
[id="snapshot-locations_{context}"]
25+
[discrete]
26+
== Snapshot locations
27+
28+
ifdef::installing-oadp-aws,installing-oadp-azure,installing-oadp-gcp,installing-oadp-mcg,installing-oadp-ocs[]
29+
If you use your cloud provider's native snapshot API to back up persistent volumes, you must specify the cloud provider as the snapshot location.
30+
endif::[]
31+
ifdef::virt-installing-configuring-oadp[]
32+
If you use your cloud provider's native snapshot API to back up virtual machine disks, you must specify the cloud provider as the snapshot location.
33+
endif::[]
34+
35+
If you use Container Storage Interface (CSI) snapshots, you do not need to specify a snapshot location because you will create a `VolumeSnapshotClass` CR to register the CSI driver.
36+
37+
If you use Restic, you do not need to specify a snapshot location because Restic backs up the file system on object storage.
38+
39+
[id="secrets_{context}"]
40+
[discrete]
41+
== Secrets
42+
43+
If the backup and snapshot locations use the same credentials or if you do not require a snapshot location, you create a default `Secret`.
44+
45+
If the backup and snapshot locations use different credentials, you create two secret objects:
46+
47+
* Custom `Secret` for the backup location, which you specify in the `DataProtectionApplication` CR.
48+
* Default `Secret` for the snapshot location, which is not referenced in the `DataProtectionApplication` CR.
49+
50+
[IMPORTANT]
51+
====
52+
The Data Protection Application requires a default `Secret`. Otherwise, the installation will fail.
53+
54+
If you do not want to specify backup or snapshot locations during the installation, you can create a default `Secret` with an empty `credentials-velero` file.
55+
====

modules/oadp-backing-up-pvs-csi.adoc

Lines changed: 2 additions & 38 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,7 @@
66
[id="oadp-backing-up-pvs-csi_{context}"]
77
= Backing up persistent volumes with CSI snapshots
88

9-
You back up persistent volumes with Container Storage Interface (CSI) snapshots by creating a `VolumeSnapshotClass` custom resource (CR) to register the CSI driver before you create the `Backup` CR.
9+
You back up persistent volumes with Container Storage Interface (CSI) snapshots by editing the `VolumeSnapshotClass` custom resource (CR) of the cloud storage before you create the `Backup` CR.
1010

1111
.Prerequisites
1212

@@ -15,44 +15,8 @@ You back up persistent volumes with Container Storage Interface (CSI) snapshots
1515
1616
.Procedure
1717

18-
* Create a `VolumeSnapshotClass` CR, as in the following examples:
18+
* Add the `metadata.labels.velero.io/csi-volumesnapshot-class: "true"` key-value pair to the `VolumeSnapshotClass` CR:
1919
+
20-
.Ceph RBD
21-
[source,yaml,subs="attributes+"]
22-
----
23-
apiVersion: snapshot.storage.k8s.io/v1
24-
kind: VolumeSnapshotClass
25-
deletionPolicy: Retain
26-
metadata:
27-
name: <volume_snapshot_class_name>
28-
labels:
29-
velero.io/csi-volumesnapshot-class: "true"
30-
snapshotter: openshift-storage.rbd.csi.ceph.com
31-
driver: openshift-storage.rbd.csi.ceph.com
32-
parameters:
33-
clusterID: openshift-storage
34-
csi.storage.k8s.io/snapshotter-secret-name: rook-csi-rbd-provisioner
35-
csi.storage.k8s.io/snapshotter-secret-namespace: openshift-storage
36-
----
37-
+
38-
.Ceph FS
39-
[source,yaml,subs="attributes+"]
40-
----
41-
apiVersion: snapshot.storage.k8s.io/v1
42-
kind: VolumeSnapshotClass
43-
metadata:
44-
name: <volume_snapshot_class_name>
45-
labels:
46-
velero.io/csi-volumesnapshot-class: "true"
47-
driver: openshift-storage.cephfs.csi.ceph.com
48-
deletionPolicy: Retain
49-
parameters:
50-
clusterID: openshift-storage
51-
csi.storage.k8s.io/snapshotter-secret-name: rook-csi-cephfs-provisioner
52-
csi.storage.k8s.io/snapshotter-secret-namespace: openshift-storage
53-
----
54-
+
55-
.Other cloud providers
5620
[source,yaml,subs="attributes+"]
5721
----
5822
apiVersion: snapshot.storage.k8s.io/v1

0 commit comments

Comments
 (0)