Skip to main content
Version: Develop

a9s Backup Manager BOSH Properties

Backup Manager Worker

The a9s Backup Manager employs workers to manage a backup's creation, deletion and overall status monitoring. To ensure that tasks do not block another one, the a9s Backup Manager has a minimum of 4 workers by default:

  • One to create backups and monitor their status.
  • One to monitor the status of restores.
  • One to delete old backups.
  • One to all tasks.

It is possible to configure these workers in the manifest using the anynines-backup-manager.workers property. The following options are supported:

  • queues: A comma separated list of queue names, whose jobs are to be processed by this worker group. Please see Queues for further information.
  • count: Number of workers to process the jobs in the queues. If not set, only one worker will be used.

Example:

[{ queues: "<queue-name-1>, <queue-name-2>" }, { queues: "<queue-name-3>", count: 3 }]

Queues

You can find the existing a9s Backup Manager worker queues below.

NamePurpose
backup_all_jobInitializes a full backup of all Service Instances of all configured Service Brokers. The actual backup is not performed in this queue.
backup_agent_backupsPrepares the necessary backup information and sends the backup request to the Backup Agent of the Service Instance which should be backed up.
backup_watcher_jobRequests the status of the current backup from the Service Instance's Backup Agent. It only talks to Service Instances where a backup is currently performed.
restore_watcher_jobRequests the status of the current restore from the Service Instance's Backup Agent. It only talks to Service Instances where a restore is currently performed.
initialize_backup_deletion_jobEvaluates all Service Instances that have backups which can be deleted.
backup_deleter_jobDeletes backups from Service Instances. This only happens if there is a given amount of newer backups available.
update_instance_state_jobAsks for all instances that got deleted since the last request. The result is used to delete backups of deleted Service Instances.

Configurable Properties

The following table lists the configurable properties of the a9s Backup Manager. These properties must be configured directly in the a9s Backup Manager BOSH release.

NameTypeDefault ValueDescription
max_attemptsInteger5Maximum attempts the backup_agent_backups job will retry when an error occurs along the jobs processing.
parallel_manual_backup_tasksInteger-2Maximum number of parallel manually triggered backup tasks. The accepted values are: >= 1 as a limit, -1 to disable the limitation and -2 follows the same limitations as the automatic backups
shared_parallel_backup_tasksInteger5Default global maximum number of parallelly running backup tasks
backups.cleanup_table_waiting_timeInteger180The number of days after which deleted backups are removed from the database.
info

The limits of the automatic backups are related to the following properties:

  • shared_parallel_backup_tasks, which acts as a global limit
  • parallel_backups_limit, which is a per Data Service limit, and part of the Service Broker Configuration hash. When set, shared_parallel_backup_tasks is ignored in favor of it. For more details on how to set this property see here.

Example:

# backup-service.yml

(...)

instance_groups:
- name: backup-manager
(...)
jobs:
- name: anynines-backup-manager
properties:
anynines-backup-manager:
shared_parallel_backup_tasks: 5
parallel_manual_backup_tasks: -2
jobs.backup_agent:
max_attempts: 5

(...)
Known Issues

When the max_attempts property value is too high (e.g. 32), the job queues might increase too much, leading to a bottleneck when processing the big amount of jobs.

Service Broker Configuration

The a9s Backup Manager relies on the a9s Service Brokers of the different Data Services that are provided by the a9s Data Service Framework to have an up-to-date list of deployed Service Instances. Backups can only be created for Service Instances that are known by the a9s Backup Manager.

For further information, please have a look here.

TLS Configuration

The a9s Backup Manager comes with TLS (HTTPS) enabled for its API by default.

note

The a9s Backup Manger is configured to listen to HTTP and HTTPS by default since some components still rely on HTTP communication with this service. HTTP will be disabled by default in coming releases.

anynines-backup-manager.protocols

For more details on this property, please refer to the a9s Framework TLS configuration documentation.