About Backup and Restoration of Oracle Java Cloud Service Instances

By backing up your Oracle Java Cloud Service instances, you can preserve them in a particular state. If you later make configuration changes to a service that you don’t want, you can undo them by restoring the service instance’s configuration data from a backup. You can also restore the software to its current official patch set update (PSU) level.

Contents of a Backup

What a backup contains depends on whether the backup is an incremental backup or a full backup.

Oracle Java Cloud Service ensures that backups contain only the volumes and other metadata that are needed for a proper restoration of a service instance. For details about the volumes that are backed up, see About the Disk Volumes.

Topics:

Contents of a Full Backup

A full backup contains all the runtime artifacts required to restore the service instance’s configuration data.

Specifically, a full backup contains these items:

  • The Oracle WebLogic Server domain configuration of the service instance, which consists of these items:

    • The $DOMAIN_HOME volume of each virtual machine

      This includes any Managed Server persistent stores that are not stored in the database. WebLogic Server persistent stores are used for transaction logs and Java Message Service (JMS) providers.

    • Oracle WebLogic Server domain configuration files in the $MW_HOME volume of the Administration Server virtual machine

  • Oracle Traffic Director configuration for the load balancer

Note:

Oracle Java Cloud Service does not back up any software, including Oracle Fusion Middleware software installed on the $MW_HOME volume. You are responsible for ensuring that you can re-install any software that you have installed on a service instance’s VMs if necessary.

For more information about the disk volumes in a service instance see About the Disk Volumes.

Contents of an Incremental Backup

An incremental backup contains changes to configuration data on all virtual machines since the last scheduled full backup.

Note:

All incremental backups are automated scheduled backups. You cannot create an incremental backup on demand.

While creating an incremental backup, Oracle Java Cloud Service promotes the backup to a full backup if any of the following conditions are met:

  • The configuration data of the service instance has been restored since the last scheduled full backup.

  • The service instance has been scaled out since the last scheduled full backup.

  • Oracle Java Cloud Service can now reach a virtual machine that it could not reach during the last scheduled full backup.

  • The last full scheduled backup is no longer available.

You can recognize a promoted backup in the list of available backups from its type and creation time. Any full, automated backup created at the scheduled time for an incremental backup has been promoted.

Contents of a Database Backup

A database backup contains Oracle Fusion Middleware component schemas and application data for an Oracle Java Cloud Service instance.

Oracle Java Cloud Service can only back up this database if the service instance is connected to an Oracle Database Cloud Service database deployment. See Items that Are Not Backed Up.

All scheduled automated backups include a database backup. You can choose whether or not to include a database backup in backups that you initiate. For more information, see:

When you initiate an on-demand backup, you have the option to keep the backup forever (it will not expire and not be deleted automatically). The extent of a database backup depends on whether the backup is to be kept forever:

  • If the backup is to be kept forever, the database backup is a full backup.

  • Otherwise, the Recovery Manager (RMAN) software that backs up the database determines whether the backup shall be a full backup or an incremental backup.

Note:

To ensure that you can restore the database for an Oracle Java Cloud Service instance without risking data loss for other service instances, do not use the same Oracle Database Cloud Service database deployment with multiple Oracle Java Cloud Service instances. Backups of an Oracle Database Cloud Service database deployment that is used with multiple Oracle Java Cloud Service instances contain data for all the Oracle Java Cloud Service instances. If you restore the database while restoring an Oracle Java Cloud Service instance, data for all the Oracle Java Cloud Service instances is restored.

Links Between an Incremental Backup and Its Related Full Backup

Each incremental backup is linked to the last full scheduled backup that was performed before the incremental backup. As a result, each full scheduled backup is linked to all incremental backups that were performed between that full backup and the next scheduled full backup.

You can restore a service instance from an incremental backup without the need to restore the full backup to which the incremental backup is linked. Oracle Java Cloud Service restores all the data from the linked full backup required for a complete restoration of the service instance. For more information, see Restoring an Oracle Java Cloud Service Instance from a Backup.

However, you cannot delete or archive a full backup with linked incremental backups without deleting or archiving the incremental backups. For more information, see:

Items that Are Not Backed Up

Oracle Java Cloud Service ensures that backups contain only the information that is needed for a proper restoration of a service instance.

Therefore, the following items are not backed up:

  • Users' custom volumes

  • The $JDK_HOME volume, which contains the JDK software

  • Software binary files in the $MW_HOME volume

Additionally, Oracle Java Cloud Service does not back up the database unless it is connected to an Oracle Database Cloud Service database deployment. For other types of databases, you can manually coordinate the database backups to occur on the same schedule as Oracle Java Cloud Service. Similarly, if you use Oracle Java Cloud Service to restore a service instance from a backup, you can also separately restore the database from a backup taken at the same time.

How Backups Are Initiated

Backups are initiated in several different ways.

  • Oracle Java Cloud Service initiates scheduled automated backups on the following default schedule:

    • Full backups are initiated weekly starting 12 hours after a service instance was created, rounded to the nearest five-minute interval.

      For example, if a service instance is created at 1:01 PM on a Monday, full backups are initiated at 1:00 AM on Tuesdays.

    • Incremental backups are initiated every day except the day of a full backup at the same time that full backups are initiated.

      For example, if a service instance is created at 1:01 PM on a Monday, incremental backups are initiated at 1:00 AM every day except Tuesdays.

    You can change the schedule on which automated backups are initiated. See Configuring Automated Backups for an Oracle Java Cloud Service Instance.

  • You can initiate a backup immediately without having to wait for the next scheduled backup as explained in Initiating an On-Demand Backup of an Oracle Java Cloud Service Instance.

  • Oracle Java Cloud Service initiates a full backup immediately before a service instance is patched, scaled in, or scaled out.

Backups are enabled by default in Oracle Java Cloud Service, but you can disable this feature on new and existing service instances. See:

Where Backups Are Stored

Oracle Java Cloud Service stores all backups on a remote file system. To speed up restorations from recent backups, Oracle Java Cloud Service also keeps a local copy of any backup it has recently created.

Note:

Do not attempt to download the backup files generated by Oracle Java Cloud Service. These files are encrypted and not accessible offline. You must use Oracle Java Cloud Service to restore a service instance from a backup.

How Backups on a Remote File System Are Stored

By default, Oracle Java Cloud Service stores backups on the remote file system that was specified when the service instance was created. You can choose to store the backups on a different file system as explained in Configuring Automated Backups for an Oracle Java Cloud Service Instance on OPCM.

Note:

If the file system contains backup archives that Oracle Java Cloud Service has moved there, it cannot be changed.

Oracle Java Cloud Service automatically deletes a backup when the retention period for the backup has elapsed.

How Local Copies of Backups Are Stored

Oracle Java Cloud Service stores local copies in a dedicated volume mounted on the block storage attached to the virtual machine where the Administration Server is running. A backup fails if there is insufficient free space on this volume.

How long Oracle Java Cloud Service keeps the local copy of a backup before deleting it depends on the extent of the backup:

  • For an incremental backup, Oracle Java Cloud Service keeps the local copy for seven days.

  • For a full backup, Oracle Java Cloud Service keeps the local copy for as long as the local copy of its last related incremental backups is kept, or for seven days, whichever is longer.

How Backups and Local Copies Are Deleted Automatically

After completing the day’s scheduled backup, Oracle Java Cloud Service deletes any backups or local copies that are due to be deleted that day. If the scheduled backup fails because of insufficient space, backups and local copies that are due to be deleted are still deleted.

Note:

When an Oracle Java Cloud Service instance is deleted, all its backups are deleted.

What Happens During a Backup

During a backup of an Oracle Java Cloud Service instance, the service instance continues to run and all applications deployed to the service instance remain available.

To prevent configuration changes during a backup, Oracle Java Cloud Service locks the Oracle WebLogic Server domain. After locking the domain, Oracle Java Cloud Service backs up files on each node as described in Contents of a Backup.

Note:

Do not to attempt to start the administration server while a backup is in progress.

While the backup is in progress, you cannot start any other management operation on the service instance.

When the backup is complete, Oracle Java Cloud Service unlocks the Oracle WebLogic Server domain. If the backup is a scheduled backup, Oracle Java Cloud Service also cleans up aged backups as follows:

  • It deletes from local storage all backups old enough to be stored only on a remote file system.

  • It deletes from wherever they are stored any remaining copies of backups whose retention period has elapsed.

If the scheduled backup fails because of insufficient space, the aged backups are still cleaned up.

If the backup includes a database backup, Oracle Java Cloud Service uses Recovery Manager (RMAN) to back up the Oracle Database Cloud Service database deployment. The backup of the database is coordinated with the backup of other volumes.

Note:

Oracle Java Cloud Service does not automatically remove transaction records when backing up a service instance. Therefore, you must remove transaction records after you restore a service instance from a backup.

How Restorations Are Initiated

Restorations are initiated in several different ways.

  • You can initiate a restoration as explained in Restoring an Oracle Java Cloud Service Instance from a Backup.

  • When a patch is rolled back, Oracle Java Cloud Service initiates a restoration to return the software to the official PSU level it was at before the patch was applied. The restoration that Oracle Java Cloud Service initiates appears in the instance’s restoration history on the Backup page.

What Happens when a Service Instance Is Restored

When restoration of a service instance is initiated, Oracle Java Cloud Service shuts down the service instance's servers. After the restoration is complete, Oracle Java Cloud Service restarts the service instance's servers.

If the hosts in the backup and the service instance don’t match, how Oracle Java Cloud Service handles the mismatch depends on the cause of the mismatch.

The Service Instance Contains Managed Server Hosts Not in the Backup

If the service instance contains any managed server hosts that are not in the backup, Oracle Java Cloud Service warns you that it cannot restore the managed server hosts that are not part of the backup.

Before trying to restore again, you can scale in the service instance to delete the nodes that correspond to these managed server hosts. For more information, see Scaling In an Oracle Java Cloud Service Instance.

If you choose to continue without scaling in the service instance, Oracle Java Cloud Service asks you to confirm that you understand that the service instance will be scaled in automatically.

The Service Instance Contains Hosts on the Coherence Data Tier Not in the Backup

When Oracle Coherence is enabled for a service instance: Managed Servers configured on the Coherence data tier are identified by managedserver_server_n_DG. If a service instance contains Managed Server hosts on the Coherence data tier that are not in the backup, scale in the service instance by removing the capacity unit that manages those specific nodes and the corresponding managed server hosts before trying to restore the service instance. For information about removing a specific capacity unit, see Scaling the Coherence Data Tier by Using the Oracle Java Cloud Service Console.

The Backup Contains Hosts Not in the Service Instance

If the backup contains any hosts that are not in the service instance, Oracle Java Cloud Service does not attempt to remove the managed servers on these hosts from the administration server configuration. You must use Oracle WebLogic Server to remove the managed servers on these hosts from the administration server configuration.