Terracotta Ehcache 10.7 | Terracotta Server Administration Guide | Backup, Restore and Data Migration | Online Backup
 
Online Backup
Online backup of a Terracotta cluster is performed by the cluster-tool, and is the recommended method to take a backup. The following section describes the online backup feature and the process:
Configuring the Backup feature
To be able to take cluster backups, a backup directory must be configured. If the directory specified by the backup location path is not present, it will be created during backup. This can be done using one of the following ways:
1. Using the CLI option -b or --backup-dir during server startup
2. Using the backup-dir property in the config property file during server startup
3. Using the config tool set command to set the backup-dir property at runtime
Prerequisites
Before proceeding with the online backup, ensure that:
1. At least one server in each stripe is up and running.
2. The servers have read and write permissions to the backup location.
3. Backup location has enough space available to store the backup data.
4. cluster-tool has fast connectivity to all the servers and the cluster is not heavily loaded with application requests.
Taking an online Backup
A backup is taken using the cluster-tool. Visit Cluster Tool for details on the backup command. If the backup fails for some reason, you can check the server logs for failure messages. Additionally, running the backup command using the -v (verbose) option might help.
Backup directory structure
The following diagram shows an example of the directory structure that results from a backup:
/tmp/backup1/
└── 7c868f83-5075-4b32-bef5-56f29fdcc6f0
└── server-1
└── datadir
├── ehcache
│ └── frs
│ └── default-frs-container
│ ├── default-cachedata
│ │ └── seg000000000.frs
│ └── metadata
│ └── seg000000000.frs
├── platform-data
│ ├── entityData
│ │ ├── seg000000000.frs
│ │ └── seg000000001.frs
│ └── transactionsData
│ ├── seg000000000.frs
│ └── seg000000001.frs
└── store
├── data
│ └── seg000000000.frs
└── meta
└── seg000000000.frs
where:
1. /tmp/backup1/ is the backup location defined in the config file
2. 7c868f83-5075-4b32-bef5-56f29fdcc6f0 is an ID created by the backup command to uniquely identify a backup instance
3. server-1 is the server name
4. datadir is the data directory name (for a given data directory) defined in the server config file