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 Elasticsearch. To ensure data integrity across indices, a backup of Optimize data consists of two Elasticsearch 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 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.
  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>