Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
8 changes: 6 additions & 2 deletions _topic_maps/_topic_map.yml
Original file line number Diff line number Diff line change
Expand Up @@ -3680,8 +3680,12 @@ Topics:
- Name: OADP and 3scale
Dir: oadp-3scale
Topics:
- Name: Backing up and restoring 3scale by using OADP
File: backing-up-and-restoring-3scale-by-using-oadp
- Name: Backing up and restoring 3scale API Management by using OADP
File: backing-up-and-restoring-3scale-api-management-by-using-oadp
- Name: Backing up 3scale API Management by using OADP
File: backing-up-3scale-api-management-by-using-oadp
- Name: Restoring 3scale API Management by using OADP
File: restoring-3scale-api-management-by-using-oadp
- Name: OADP Data Mover
Dir: installing
Topics:
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
:_mod-docs-content-type: ASSEMBLY
[id="backing-up-3scale-api-management-by-using-oadp"]
= Backing up 3scale API Management by using OADP
include::_attributes/common-attributes.adoc[]
:context: backing-up-3scale-api-management-by-using-oadp
:3scaleProductVersion: 2.15
:3scaleDocInfoProductName: red_hat_3scale_api_management
:Link3scaleInstalling3scale: https://docs.redhat.com/en/documentation/{3scaleDocInfoProductName}/{3scaleProductVersion}/html-single/installing_red_hat_3scale_api_management/index

toc::[]

You can back up Red{nbsp}Hat 3scale API Management components by backing up the 3scale operator, and databases such as MySQL and Redis.

.Prerequisites

* You installed and configured Red{nbsp}Hat 3scale API Management. For more information, see link:{Link3scaleInstalling3scale}#install-threescale-on-openshift-guide[Installing 3scale API Management on OpenShift] and link:https://docs.redhat.com/en/documentation/red_hat_3scale_api_management[Red Hat 3scale API Management].

include::modules/creating-the-data-protection-application.adoc[leveloffset=+1]
[role="_additional-resources"]
.Additional resources
* xref:../../../backup_and_restore/application_backup_and_restore/installing/installing-oadp-aws.adoc#oadp-installing-dpa_installing-oadp-aws[Installing the Data Protection Application]

include::modules/backing-up-the-3scale-operator-secret-apimanager.adoc[leveloffset=+1]

[role="_additional-resources"]
.Additional resources
* xref:../../../backup_and_restore/application_backup_and_restore/backing_up_and_restoring/oadp-creating-backup-cr.adoc#oadp-creating-backup-cr-doc[Creating a Backup CR]

include::modules/backing-up-the-mysql-database.adoc[leveloffset=+1]

include::modules/backing-up-the-backend-redis-database.adoc[leveloffset=+1]
Original file line number Diff line number Diff line change
@@ -0,0 +1,27 @@
:_mod-docs-content-type: ASSEMBLY
[id="backing-up-and-restoring-3scale-api-management-by-using-oadp"]
= Backing up and restoring 3scale API Management by using OADP
include::_attributes/common-attributes.adoc[]
:context: backing-up-and-restoring-3scale-api-management-by-using-oadp

toc::[]

With Red{nbsp}Hat 3scale API Management, you can manage your APIs for internal or external users.
You can deploy 3scale components on-premise, in the cloud, as a managed service, or in any combination based on your requirements.

With {oadp-first}, you can safeguard 3scale API Management deployments by backing up application resources, persistent volumes, and configurations.

[NOTE]
====
You can use the {oadp-first} Operator to back up and restore your 3scale API Management on-cluster storage databases without affecting your running services
====

You can configure OADP to perform the following operations with 3scale API Management:

* Create a backup of 3scale components by following the steps in xref:../../../backup_and_restore/application_backup_and_restore/oadp-3scale/backing-up-3scale-api-management-by-using-oadp.adoc#backing-up-3scale-api-management-by-using-oadp[Backing up 3scale API Management].
* Restore the components to scale up the 3scale operator and deployment by following the steps in xref:../../../backup_and_restore/application_backup_and_restore/oadp-3scale/restoring-3scale-api-management-by-using-oadp.adoc#restoring-3scale-api-management-by-using-oadp[Restoring 3scale API Management].





This file was deleted.

Original file line number Diff line number Diff line change
@@ -0,0 +1,32 @@
:_mod-docs-content-type: ASSEMBLY
[id="restoring-3scale-api-management-by-using-oadp"]
= Restoring 3scale API Management by using OADP
include::_attributes/common-attributes.adoc[]
:context: restoring-3scale-api-management-by-using-oadp
:3scaleProductVersion: 2.15
:3scaleDocInfoProductName: red_hat_3scale_api_management
:Link3scaleInstalling3scale: https://docs.redhat.com/en/documentation/{3scaleDocInfoProductName}/{3scaleProductVersion}/html-single/installing_red_hat_3scale_api_management/index

toc::[]

You can restore Red{nbsp}Hat 3scale API Management components by restoring the backed up 3scale operator resources. You can also restore databases such as MySQL and Redis.

After the data has been restored, you can scale up the 3scale operator and deployment.

.Prerequisites

* You installed and configured Red{nbsp}Hat 3scale API Management. For more information, see link:{Link3scaleInstalling3scale}#install-threescale-on-openshift-guide[Installing 3scale API Management on OpenShift] and link:https://docs.redhat.com/en/documentation/red_hat_3scale_api_management[Red Hat 3scale API Management].

* You backed up the 3scale operator, and databases such as MySQL and Redis.

* Ensure that you are restoring 3scale on the same cluster where it was backed up from.

* If you want to restore 3scale on a different cluster, ensure that the original backed-up cluster and the cluster you want to restore the operator on are using the same custom domain.

include::modules/restoring-the-3scale-api-management-operator-secrets-and-apimanager.adoc[leveloffset=+1]

include::modules/restoring-the-mysql-database.adoc[leveloffset=+1]

include::modules/restoring-the-backend-redis-database.adoc[leveloffset=+1]

include::modules/scaling-up-the-3scale-api-management-operator-and-deployment.adoc[leveloffset=+1]
Original file line number Diff line number Diff line change
@@ -1,19 +1,19 @@
:_mod-docs-content-type: PROCEDURE

//included in backing-up-and-restoring-3scale-by-using-oadp.adoc assembly
//included in backing-up-3scale-api-management-by-using-oadp.adoc assembly

[id="backing-up-the-3scale-operator_{context}"]
= Backing up the 3scale Operator
[id="backing-up-the-3scale-operator-secret-apimanager_{context}"]
= Backing up the 3scale API Management operator, secret, and APIManager

You can back up the Operator resources, and Secret and APIManager custom resources (CR). For more information, see "Creating a Backup CR".
You can back up the Red{nbsp}Hat 3scale API Management operator resources, and both the `Secret` and APIManager custom resource (CR).

.Prerequisites

* You created the Data Protection Application (DPA).

.Procedure

. Back up the Operator resources, such as `operatorgroup`, `namespaces`, and `subscriptions`, by creating a YAML file with the following configuration:
. Back up your 3scale operator CRs, such as `operatorgroup`, `namespaces`, and `subscriptions`, by creating a YAML file with the following configuration:
+
.Example `backup.yaml` file
+
Expand All @@ -22,13 +22,13 @@ You can back up the Operator resources, and Secret and APIManager custom resourc
apiVersion: velero.io/v1
kind: Backup
metadata:
name: operator-install-backup
name: operator-install-backup <1>
namespace: openshift-adp
spec:
csiSnapshotTimeout: 10m0s
defaultVolumesToFsBackup: false
includedNamespaces:
- threescale <1>
- threescale <2>
includedResources:
- operatorgroups
- subscriptions
Expand All @@ -37,7 +37,8 @@ spec:
snapshotMoveData: false
ttl: 720h0m0s
----
<1> Namespace where the 3scale Operator is installed.
<1> The value of the `metadata.name` parameter in the backup is the same value used in the `metadata.backupName` parameter used when restoring the 3scale operator.
<2> Namespace where the 3scale operator is installed.
+
[NOTE]
====
Expand All @@ -50,8 +51,15 @@ You can also back up and restore `ReplicationControllers`, `Deployment`, and `Po
----
$ oc create -f backup.yaml
----
+
.Example output
+
[source,terminal]
----
backup.velero.io/operator-install-backup created
----

. Back up the Secret CR by creating a YAML file with the following configuration:
. Back up the `Secret` CR by creating a YAML file with the following configuration:
+
.Example `backup-secret.yaml` file
+
Expand All @@ -60,7 +68,7 @@ $ oc create -f backup.yaml
apiVersion: velero.io/v1
kind: Backup
metadata:
name: operator-resources-secrets
name: operator-resources-secrets <1>
namespace: openshift-adp
spec:
csiSnapshotTimeout: 10m0s
Expand All @@ -77,13 +85,21 @@ spec:
snapshotVolumes: false
ttl: 720h0m0s
----
<1> The value of the `metadata.name` parameter in the backup is the same value used in the `metadata.backupName` parameter used when restoring the `Secret`.

. Create the Secret CR by running the following command:
. Create the `Secret` backup CR by running the following command:
+
[source,terminal]
----
$ oc create -f backup-secret.yaml
----
+
.Example output
+
[source,terminal]
----
backup.velero.io/operator-resources-secrets created
----

. Back up the APIManager CR by creating a YAML file with the following configuration:
+
Expand All @@ -93,7 +109,7 @@ $ oc create -f backup-secret.yaml
apiVersion: velero.io/v1
kind: Backup
metadata:
name: operator-resources-apim
name: operator-resources-apim <1>
namespace: openshift-adp
spec:
csiSnapshotTimeout: 10m0s
Expand All @@ -110,14 +126,18 @@ spec:
volumeSnapshotLocations:
- ts-dpa-1
----
<1> The value of the `metadata.name` parameter in the backup is the same value used in the `metadata.backupName` parameter used when restoring the APIManager.

. Create the APIManager CR by running the following command:
+
[source,terminal]
----
$ oc create -f backup-apimanager.yaml
----

.Next steps

* Back up the `mysql` database.
+
.Example output
+
[source,terminal]
----
backup.velero.io/operator-resources-apim created
----
45 changes: 32 additions & 13 deletions modules/backing-up-the-backend-redis-database.adoc
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
:_mod-docs-content-type: PROCEDURE

//included in backing-up-and-restoring-3scale-by-using-oadp.adoc assembly
//included in backing-up-3scale-api-management-by-using-oadp.adoc assembly

[id="backing-up-the-backend-redis-database_{context}"]
= Backing up the back-end Redis database
Expand All @@ -10,8 +10,8 @@ You can back up the Redis database by adding the required annotations and by lis

.Prerequisites

* You backed up the 3scale Operator.
* You backed up the mysql database.
* You backed up the Red{nbsp}Hat 3scale API Management operator.
* You backed up your MySQL database.
* The Redis queues have been drained before performing the backup.


Expand All @@ -23,8 +23,6 @@ You can back up the Redis database by adding the required annotations and by lis
----
$ oc edit deployment backend-redis -n threescale
----

. Add the following annotations:
+
[source,yaml]
----
Expand All @@ -46,7 +44,7 @@ post.hook.backup.velero.io/command: >-
apiVersion: velero.io/v1
kind: Backup
metadata:
name: redis-backup
name: redis-backup <1>
namespace: openshift-adp
spec:
csiSnapshotTimeout: 10m0s
Expand All @@ -69,23 +67,44 @@ spec:
snapshotVolumes: false
ttl: 720h0m0s
----
<1> The value of the `metadata.name` parameter in the backup is the same value used in the `metadata.backupName` parameter used when restoring the restoring the Redis database.

. Back up the Redis database by running the following command:
+
[source,terminal]
----
$ oc get backups.velero.io redis-backup -o yaml
$ oc create -f redis-backup.yaml
----
+
.Example output:
+
[source,terminal]
----
backup.velero.io/redis-backup created
----


.Verification

* Verify that the Redis backup is completed by running the following command::
* Verify that the Redis backup is completed by running the following command:
+
[source,terminal]
----
$ oc get backups.velero.io
$ oc get backups.velero.io redis-backup -o yaml
----

.Next steps

* Restore the Secrets and APIManager CRs.
+
.Example output:
+
[source,terminal]
----
status:
completionTimestamp: "2025-04-17T13:25:19Z"
errors: 1
expiration: "2025-05-17T13:25:16Z"
formatVersion: 1.1.0
hookStatus: {}
phase: Completed
progress: {}
startTimestamp: "2025-04-17T13:25:16Z"
version: 1
----
Loading