Backup and restore Optimize data

Heads Up!

This release introduces breaking changes, including the utilized URL.

For example, curl 'http://localhost:8092/actuator/backups' rather than the previously used backup.

Optimize stores its data over multiple indices in the database. To ensure data integrity across indices, a backup of Optimize data consists of two Elasticsearch/OpenSearch snapshots, each containing a different set of Optimize indices. Each backup is identified by a positive integer backup ID. For example, a backup with ID 123456 consists of the following Elasticsearch snapshots:

camunda_optimize_123456_3.9.0_part_1_of_2
camunda_optimize_123456_3.9.0_part_2_of_2

Optimize provides an API to trigger a backup and retrieve information about a given backup’s state. During backup creation Optimize can continue running. The backed up data can later be restored using the standard Elasticsearch/OpenSearch snapshot restore API.

Prerequisites

The following prerequisites must be set up before using the backup API:

  1. A snapshot repository of your choice must be registered with Elasticsearch/OpenSearch.
  2. The repository name must be specified using the CAMUNDA_OPTIMIZE_BACKUP_REPOSITORY_NAME environment variable, or by adding it to your Optimize environment-config.yaml:
backup:
  repositoryName: <repository name>