mirror of
https://github.com/openshift/openshift-docs.git
synced 2026-02-05 12:46:18 +01:00
194 lines
5.1 KiB
Plaintext
194 lines
5.1 KiB
Plaintext
// Module included in the following assemblies:
|
|
//
|
|
// * backup_and_restore/application_backup_and_restore/installing/configuring-oadp-multiple-bsl.adoc
|
|
|
|
|
|
:_mod-docs-content-type: PROCEDURE
|
|
[id="oadp-multiple-bsl-use-case_{context}"]
|
|
= {oadp-short} use case for two BSLs
|
|
|
|
In this use case, you configure the DPA with two storage locations by using two cloud credentials. You back up an application with a database by using the default BSL. {oadp-short} stores the backup resources in the default BSL. You then backup the application again by using the second BSL.
|
|
|
|
.Prerequisites
|
|
|
|
* You must install the {oadp-short} Operator.
|
|
* You must configure two backup storage locations: AWS S3 and Multicloud Object Gateway (MCG).
|
|
* You must have an application with a database deployed on a Red Hat OpenShift cluster.
|
|
|
|
.Procedure
|
|
|
|
. Create the first `Secret` for the AWS S3 storage provider with the default name by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc create secret generic cloud-credentials -n openshift-adp --from-file cloud=<aws_credentials_file_name> # <1>
|
|
----
|
|
<1> Specify the name of the cloud credentials file for AWS S3.
|
|
|
|
. Create the second `Secret` for MCG with a custom name by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc create secret generic mcg-secret -n openshift-adp --from-file cloud=<MCG_credentials_file_name> # <1>
|
|
----
|
|
<1> Specify the name of the cloud credentials file for MCG. Note the name of the `mcg-secret` custom secret.
|
|
|
|
. Configure the DPA with the two BSLs as shown in the following example.
|
|
+
|
|
.Example DPA
|
|
[source,yaml]
|
|
----
|
|
apiVersion: oadp.openshift.io/v1alpha1
|
|
kind: DataProtectionApplication
|
|
metadata:
|
|
name: two-bsl-dpa
|
|
namespace: openshift-adp
|
|
spec:
|
|
backupLocations:
|
|
- name: aws
|
|
velero:
|
|
config:
|
|
profile: default
|
|
region: <region_name> # <1>
|
|
credential:
|
|
key: cloud
|
|
name: cloud-credentials
|
|
default: true
|
|
objectStorage:
|
|
bucket: <bucket_name> # <2>
|
|
prefix: velero
|
|
provider: aws
|
|
- name: mcg
|
|
velero:
|
|
config:
|
|
insecureSkipTLSVerify: "true"
|
|
profile: noobaa
|
|
region: <region_name> # <3>
|
|
s3ForcePathStyle: "true"
|
|
s3Url: <s3_url> # <4>
|
|
credential:
|
|
key: cloud
|
|
name: mcg-secret # <5>
|
|
objectStorage:
|
|
bucket: <bucket_name_mcg> # <6>
|
|
prefix: velero
|
|
provider: aws
|
|
configuration:
|
|
nodeAgent:
|
|
enable: true
|
|
uploaderType: kopia
|
|
velero:
|
|
defaultPlugins:
|
|
- openshift
|
|
- aws
|
|
----
|
|
<1> Specify the AWS region for the bucket.
|
|
<2> Specify the AWS S3 bucket name.
|
|
<3> Specify the region, following the naming convention of the documentation of MCG.
|
|
<4> Specify the URL of the S3 endpoint for MCG.
|
|
<5> Specify the name of the custom secret for MCG storage.
|
|
<6> Specify the MCG bucket name.
|
|
|
|
. Create the DPA by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc create -f <dpa_file_name> # <1>
|
|
----
|
|
<1> Specify the file name of the DPA you configured.
|
|
|
|
. Verify that the DPA has reconciled by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc get dpa -o yaml
|
|
----
|
|
|
|
. Verify that the BSLs are available by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc get bsl
|
|
----
|
|
+
|
|
.Example output
|
|
[source,terminal]
|
|
----
|
|
NAME PHASE LAST VALIDATED AGE DEFAULT
|
|
aws Available 5s 3m28s true
|
|
mcg Available 5s 3m28s
|
|
----
|
|
|
|
. Create a backup CR with the default BSL.
|
|
+
|
|
[NOTE]
|
|
====
|
|
In the following example, the `storageLocation` field is not specified in the backup CR.
|
|
====
|
|
+
|
|
.Example backup CR
|
|
[source,yaml]
|
|
----
|
|
apiVersion: velero.io/v1
|
|
kind: Backup
|
|
metadata:
|
|
name: test-backup1
|
|
namespace: openshift-adp
|
|
spec:
|
|
includedNamespaces:
|
|
- <mysql_namespace> # <1>
|
|
defaultVolumesToFsBackup: true
|
|
----
|
|
<1> Specify the namespace for the application installed in the cluster.
|
|
|
|
. Create a backup by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc apply -f <backup_file_name> # <1>
|
|
----
|
|
<1> Specify the name of the backup CR file.
|
|
|
|
. Verify that the backup completed with the default BSL by running the following command:
|
|
+
|
|
[source,terminal]
|
|
----
|
|
$ oc get backups.velero.io <backup_name> -o yaml # <1>
|
|
----
|
|
<1> Specify the name of the backup.
|
|
|
|
. Create a backup CR by using MCG as the BSL. In the following example, note that the second `storageLocation` value is specified at the time of backup CR creation.
|
|
+
|
|
.Example backup `CR`
|
|
[source,yaml]
|
|
----
|
|
apiVersion: velero.io/v1
|
|
kind: Backup
|
|
metadata:
|
|
name: test-backup1
|
|
namespace: openshift-adp
|
|
spec:
|
|
includedNamespaces:
|
|
- <mysql_namespace> # <1>
|
|
storageLocation: mcg # <2>
|
|
defaultVolumesToFsBackup: true
|
|
----
|
|
<1> Specify the namespace for the application installed in the cluster.
|
|
<2> Specify the second storage location.
|
|
|
|
. Create a second backup by running the following command:
|
|
+
|
|
[source, terminal]
|
|
----
|
|
$ oc apply -f <backup_file_name> # <1>
|
|
----
|
|
<1> Specify the name of the backup CR file.
|
|
|
|
|
|
. Verify that the backup completed with the storage location as MCG by running the following command:
|
|
+
|
|
[source, terminal]
|
|
----
|
|
$ oc get backups.velero.io <backup_name> -o yaml # <1>
|
|
----
|
|
<1> Specify the name of the backup. |