Skip to main content
NetApp Solutions

TR-4977: Oracle Database backup, restore and clone with SnapCenter Services - Azure

Contributors kevin-hoke acao8888

Allen Cao, Niyaz Mohamed, NetApp

This solution provides overview and details for Oracle database backup, restore, clone using NetApp SnapCenter SaaS using BlueXP console.

Purpose

SnapCenter Services is the SaaS version of the classic SnapCenter database management UI tool that is available through the NetApp BlueXP cloud management console. It is an integral part of the NetApp cloud-backup, data-protection offering for databases such as Oracle and HANA running on Azure NetApp Files. This SaaS-based service simplifies traditional SnapCenter standalone server deployment that generally requires a Windows server operating in a Windows domain environment.

In this documentation, we demonstrate how you can set up SnapCenter Services to backup, restore, and clone Oracle databases deployed on Azure NetApp Files volumes and Azure compute instances. It is very easy to setup data protection for Oracle database deployed on Azure NetApp Files with web based BlueXP user interface.

This solution addresses the following use cases:

  • Database backup with snapshots for Oracle databases hosted in Azure NetApp Files and Azure VMs

  • Oracle database recovery in the case of a failure

  • Fast cloning of primary databases for dev, test environments or other use cases

Audience

This solution is intended for the following audiences:

  • The DBA who manages Oracle databases running on Azure NetApp Files storage

  • The solution architect who is interested in testing Oracle database backup, restore, and clone in Azure

  • The storage administrator who supports and manages the Azure NetApp Files storage

  • The application owner who owns applications that are deployed to Azure NetApp Files storage and Azure VMs

Solution test and validation environment

The testing and validation of this solution was performed in a lab environment that might not match the final deployment environment. For more information, see the section Key factors for deployment consideration.

Architecture

This image provides a detailed picture of the BlueXP backup and recovery for applications within BlueXP console, including the UI, connector and resources it manages.

This image provides a detailed picture of BlueXP backup and recovery for applications within the BlueXP console, including the UI, the connector, and the resources it manages.

Hardware and software components

Hardware

Azure NetApp Files storage

Premium Service level

Auto QoS type, and 4TB in storage capacity in testing

Azure instance for compute

Standard B4ms (4 vcpus, 16 GiB memory)

Two instances deployed, one as primary DB server and the other as clone DB server

Software

RedHat Linux

Red Hat Enterprise Linux 8.7 (LVM) - x64 Gen2

Deployed RedHat subscription for testing

Oracle Database

Version 19.18

Applied RU patch p34765931_190000_Linux-x86-64.zip

Oracle OPatch

Version 12.2.0.1.36

Latest patch p6880880_190000_Linux-x86-64.zip

SnapCenter Service

Version v2.5.0-2822

Agent Version v2.5.0-2822

Key factors for deployment consideration

  • Connector to be deployed in the same virtual network / subnet as databases and Azure NetApp Files. When possible, the connector should be deployed in the same Azure virtual networks and resource groups, which enables connectivity to the Azure NetApp Files storage and the Azure compute instances.

  • An Azure user account or Active Directory service principle created at Azure portal for SnapCenter connector. Deploying a BlueXP Connector requires specific permissions to create and configure a virtual machine and other compute resources, to configure networking, and to get access to the Azure subscription. It also requires permissions to later create roles and permissions for the Connector to operate. Create a custom role in Azure with permissions and assign to the user account or service principle. Review the following link for details:Set up Azure permissions.

  • A ssh key pair created in the Azure resource group. The ssh key pair is assigned to the Azure VM user for logging into the connector host and also the database VM host for deploying and executing a plug-in. BlueXP console UI uses the ssh key to deploy SnapCenter service plugin to database host for one-step plugin installation and application host database discovery.

  • A credential added to the BlueXP console setting. To add Azure NetApp Files storage to the BlueXP working environment, a credential that grants permissions to access Azure NetApp Files from the BlueXP console needs to be set up in the BlueXP console setting.

  • java-11-openjdk installed on the Azure VM database instance host. SnapCenter service installation requires java version 11. It needs to be installed on application host before plugin deployment attempt.

Solution deployment

There is extensive NetApp documentation with a broader scope to help you protect your cloud-native application data. The goal of this documentation is to provide step-by-step procedures that cover SnapCenter Service deployment with the BlueXP console to protect your Oracle database deployed on an Azure NetApp Files storage and an Azure compute instance.

To get started, complete the following steps:

Prerequisites for SnapCenter service deployment

Details

Deployment requires the following prerequisites.

  1. A primary Oracle database server on an Azure VM instance with an Oracle database fully deployed and running.

  2. An Azure NetApp Files storage service capacity pool deployed in Azure that has capacity to meet the database storage needs listed in hardware component section.

  3. A secondary database server on an Azure VM instance that can be used for testing the cloning of an Oracle database to an alternate host for the purpose of supporting a dev/test workload or any use cases that requires a full data set of production Oracle database.

  4. For additional information for Oracle database deployment on Azure NetApp Files and Azure compute instance, see Oracle Database Deployment and Protection on Azure NetApp Files.

Onboarding to BlueXP preparation

Details
  1. Use the link NetApp BlueXP to sign up for BlueXP console access.

  2. Create an Azure user account or an Active Directory service principle and grant permissions with role in Azure portal for Azure connector deployment.

  3. To set up BlueXP to manage Azure resources, add a BlueXP credential with details of an Active Directory service principal that BlueXP can use to authenticate with Azure Active Directory (App client ID), a client secret for the service principal application (Client Secret), and the Active Directory ID for your organization (Tenant ID).

  4. You also need the Azure virtual network, resources group, security group, an SSH key for VM access, etc. ready for connector provisioning and database plugin installation.

Deploy a connector for SnapCenter services

Details
  1. Login to the BlueXP console.

    Screenshot showing this step in the GUI.

  2. Click on Connector drop down arrow and Add Connector to launch the connector provisioning workflow.

    Screenshot showing this step in the GUI.

  3. Choose your cloud provider (in this case, Microsoft Azure).

    Screenshot showing this step in the GUI.

  4. Skip the Permission, Authentication, and Networking steps if you already have them set up in your Azure account. If not, you must configure these before proceeding. From here, you could also retrieve the permissions for the Azure policy that is referenced in the previous section "Onboarding to BlueXP preparation."

    Screenshot showing this step in the GUI.

  5. Click on Skip to Deployment to configure your connector Virtual Machine Authentication. Add the SSH key pair you have created in Azure resource group during onboarding to BlueXP preparation for connector OS authentication.

    Screenshot showing this step in the GUI.

  6. Provide a name for the connector instance, select Create and accept default Role Name under Details, and choose the subscription for the Azure account.

    Screenshot showing this step in the GUI.

  7. Configure networking with the proper VNet, Subnet, and disable Public IP but ensure that the connector has the internet access in your Azure environment.

    Screenshot showing this step in the GUI.

  8. Configure the Security Group for the connector that allows HTTP, HTTPS, and SSH access.

    Screenshot showing this step in the GUI.

  9. Review the summary page and click Add to start connector creation. It generally takes about 10 mins to complete deployment. Once completed, the connector instance VM appears in the Azure portal.

    Screenshot showing this step in the GUI.

  10. After the connector is deployed, the newly created connector appears under Connector drop-down.

    Screenshot showing this step in the GUI.

Define a credential in BlueXP for Azure resources access

Details
  1. Click on setting icon on top right corner of BlueXP console to open Account credentials page, click Add credentials to start credential configuration workflow.

    Screenshot showing this step in the GUI.

  2. Choose credential location as - Microsoft Azure - BlueXP.

    Screenshot showing this step in the GUI.

  3. Define Azure credentials with proper Client Secret, Client ID, and Tenant ID, which should have been gathered during previous BlueXP onboarding process.

    Screenshot showing this step in the GUI.

  4. Review and Add.
    Screenshot showing this step in the GUI.

  5. You may also need to associate a Marketplace Subscription with the credential.
    Screenshot showing this step in the GUI.

SnapCenter services setup

Details

With the Azure credential configured, SnapCenter services can now be set up with the following procedures:

  1. Back to Canvas page, from My Working Environment click Add working Environment to discover Azure NetApp Files deployed in Azure.

    Screenshot showing this step in the GUI.

  2. Choose Microsoft Azure as the location and click on Discover.

    Screenshot showing this step in the GUI.

  3. Name Working Environment and choose Credential Name created in previous section, and click Continue.

    Screenshot showing this step in the GUI.

  4. BlueXP console returns to My working environments and discovered Azure NetApp Files from Azure now appears on Canvas.

    Screenshot showing this step in the GUI.

  5. Click on Azure NetApp Files icon, then Enter Working Environment to view Oracle database volumes deployed in Azure NetApp Files storage.

    Screenshot showing this step in the GUI.

  6. From the left-hand sidebar of the console, hover your mouse over the protection icon, and then click Protection > Applications to open the Applications launch page. Click Discover Applications.

    Screenshot showing this step in the GUI.

  7. Select Cloud Native as the application source type.

    Screenshot showing this step in the GUI.

  8. Choose Oracle for the application type, click on Next to open host details page.

    Screenshot showing this step in the GUI.

  9. Select Using SSH and provide the Oracle Azure VM details such as IP address, Connector, Azure VM management Username such as azureuser. Click on Add SSH Private Key to paste in the SSH key pair that you used to deploy the Oracle Azure VM. You will also be prompted to confirm the fingerprint.

    Screenshot showing this step in the GUI.
    Screenshot showing this step in the GUI.

  10. Move on to next Configuration page to setup sudoer access on Oracle Azure VM.

    Screenshot showing this step in the GUI.

  11. Review and click on Discover Applications to install a plugin on the Oracle Azure VM and discover Oracle database on the VM in one step.

    Screenshot showing this step in the GUI.

  12. Discovered Oracle databases on Azure VM are added to Applications, and the Applications page lists the number of hosts and Oracle databases within the environment. The database Protection Status initially shows as Unprotected.

    Screenshot showing this step in the GUI.

This completes the initial setup of SnapCenter services for Oracle. The next three sections of this document describe Oracle database backup, restore, and clone operations.

Oracle database backup

Details
  1. Our test Oracle database in Azure VM is configured with three volumes with an aggregate total storage about 1.6 TiB. This gives context about the timing for the snapshot backup, restore, and clone of a database of this size.

[oracle@acao-ora01 ~]$ df -h
Filesystem                 Size  Used Avail Use% Mounted on
devtmpfs                   7.9G     0  7.9G   0% /dev
tmpfs                      7.9G     0  7.9G   0% /dev/shm
tmpfs                      7.9G   17M  7.9G   1% /run
tmpfs                      7.9G     0  7.9G   0% /sys/fs/cgroup
/dev/mapper/rootvg-rootlv   40G   23G   15G  62% /
/dev/mapper/rootvg-usrlv   9.8G  1.6G  7.7G  18% /usr
/dev/sda2                  496M  115M  381M  24% /boot
/dev/mapper/rootvg-varlv   7.9G  787M  6.7G  11% /var
/dev/mapper/rootvg-homelv  976M  323M  586M  36% /home
/dev/mapper/rootvg-optlv   2.0G  9.6M  1.8G   1% /opt
/dev/mapper/rootvg-tmplv   2.0G   22M  1.8G   2% /tmp
/dev/sda1                  500M  6.8M  493M   2% /boot/efi
172.30.136.68:/ora01-u01   100G   23G   78G  23% /u01
172.30.136.68:/ora01-u03   500G  117G  384G  24% /u03
172.30.136.68:/ora01-u02  1000G  804G  197G  81% /u02
tmpfs                      1.6G     0  1.6G   0% /run/user/1000
[oracle@acao-ora01 ~]$
  1. To protect database, click the three dots next to the database Protection Status, and then click Assign Policy to view the default preloaded or user defined database protection policies that can be applied to your Oracle databases. Under Settings - Policies, you have option to create your own policy with a customized backup frequency and backup data-retention window.

    Screenshot showing this step in the GUI.

  2. When you are happy with the policy configuration, you can then Assign your policy of choice to protect the database.

    Screenshot showing this step in the GUI.

  3. After the policy is applied, the database protection status changed to Protected with a green check mark. BlueXP executes the snapshot backup according to the schedule defined. In addition, ON-Demand Backup is available from the three-dot drop down menu as shown below.

    Screenshot showing this step in the GUI.

  4. From Job Monitoring tab, backup job details can be viewed. Our test results showed that it took about 4 minutes to backup an Oracle database about 1.6 TiB.

    Screenshot showing this step in the GUI.

  5. From three-dot drop down menu View Details, you can view the backup sets created from snapshot backup.

    Screenshot showing this step in the GUI.

  6. Database backup details include the Backup Name, Backup Type, SCN, RMAN Catalog, and Backup Time. A backup set contains application-consistent snapshots for data volume and log volume respectively. A log volume snapshot takes place right after a database data volume snapshot. You could apply a filter if you are looking for a particular backup in the backup list.

    Screenshot showing this step in the GUI.

Oracle database restore and recovery

Details
  1. For a database restore, click the three-dot drop down menu for the particular database to be restored in Applications, then click Restore to initiate database restore and recovery workflow.

    Screenshot showing this step in the GUI.

  2. Choose your Restore Point by time stamp. Each time stamp in the list represents an available database backup set.

    Screenshot showing this step in the GUI.

  3. Choose your Restore Location to original location for an Oracle database in place restore and recovery.

    Screenshot showing this step in the GUI.

  4. Define your Restore Scope, and Recovery Scope. All Logs mean a full recovery up to date including current logs.

    Screenshot showing this step in the GUI.

  5. Review and Restore to start database restore and recovery.

    Screenshot showing this step in the GUI.

  6. From the Job Monitoring tab, we observed that it took 2 minutes to run a full database restore and recovery up to date.

    Screenshot showing this step in the GUI.

Oracle database clone

Details

Database clone procedures are similar to restore but to an alternate Azure VM with identical Oracle software stack pre-installed and configured.

Note Ensure that your Azure NetApp File storage has sufficient capacity for a cloned database the same size as the primary database to be cloned. The alternate Azure VM has been added to Applications.
  1. Click the three-dot drop down menu for the particular database to be cloned in Applications, then click Restore to initiate clone workflow.

    Figure showing input/output dialog or representing written content

  2. Select the Restore Point and check the Restore to alternate location.

    Figure showing input/output dialog or representing written content

  3. In the next Configuration page, set alternate Host, new database SID, and Oracle Home as configured at alternate Azure VM.

    Figure showing input/output dialog or representing written content

  4. Review General page shows the details of cloned database such as SID, alternate host, data file locations, recovery scope etc.

    Figure showing input/output dialog or representing written content

  5. Review Database parameters page shows the details of cloned database configuration as well as some database parameters setting.

    Figure showing input/output dialog or representing written content

  6. Monitor the cloning job status from the Job Monitoring tab, we observed that it took 8 minutes to clone a 1.6 TiB Oracle database.

    Figure showing input/output dialog or representing written content

  7. Validate the cloned database in BlueXP Applications page that showed the cloned database was immediately registered with BlueXP.

    Figure showing input/output dialog or representing written content

  8. Validate the cloned database on the Oracle Azure VM that showed the cloned database was running as expected.

    Figure showing input/output dialog or representing written content

This completes the demonstration of an Oracle database backup, restore, and clone in Azure with NetApp BlueXP console using SnapCenter Service.

Additional information

To learn more about the information that is described in this document, review the following documents and/or websites: