How to backup and recover BindPlane OP resources using the BindPlane command line
BindPlane OP resources can be backed up using the CLI. This method should be used in addition to backing up Bolt Store or PostgreSQL.
- BindPlane OP v1.25.0 or newer. If on an older version, upgrade before attempting a migration.
The backup and restore process will require that you have configured your BindPlane CLI profile. The profile allows you to connect to the BindPlane OP server.
In this example, the BindPlane OP server has a remote URL of
http://192.168.1.10:3001 and the profile name is "example".
Configure Profile with username and password:
1bindplane profile set "example" \ 2 --remote-url "http://192.168.1.10:3001" \ 3 --username "user" \ 4 --password "pass" 5 6bindplane profile use "example"
If using BindPlane OP Enterprise with multi-account, you can use an API key instead of username and password:
1bindplane profile set "example" \ 2 --remote-url "http://192.168.1.10:3001" \ 3 --api-key "xxx-xxx-xxx-xxx" 4 5bindplane profile use "example"
1backup_file="migration-resources-$(date '+%Y-%m-%d_%H:%M:%S').yaml" 2 3touch "$backup_file" 4 5sudo bindplane get destination -o yaml --export > "$backup_file" 6sudo bindplane get source -o yaml --export >> "$backup_file" 7sudo bindplane get processor -o yaml --export >> "$backup_file" 8sudo bindplane get configuration -o yaml --export >> "$backup_file"
After running the CLI commands, a file with the name
migration-resources-<date suffix>.yaml will exist in your working directory.
It is recommended that the resource yaml file be moved to a remote system, such as a backup server or a secure object storage service like Google Cloud Storage or Amazon S3.
BindPlane resources can be restored by using the
apply command. After configuring your CLI profile, run the following command:
1bindplane apply -f <path to resource yaml file>
BindPlane OP will create new resources, or update existing resources if they already exist.
If applying resources to an in-use system, configurations that are updated will have pending rollouts that must be triggered by the user.