Multi Account Migration

How to migrate resources from one account to another, on the same system or a different system

Multi Account

Multi Account BindPlane is an Enterprise feature that allows users to create multiple tenants (accounts). Each account can have its own users, configurations, and managed agents. Multi Account support user invitation in order to support collaboration between multiple users.

Objective

Export resources from an individual BindPlane OP account and import them into another account on the same system or a different BindPlane OP system.

Prerequisites

The following requirements must be met:

  • You are running BindPlane OP Enterprise. See Upgrade to BindPlane OP Enterprise.
  • BindPlane OP v1.25.0 or newer. If on an older version, upgrade before attempting a migration.
  • BindPlane OP is configured with multi account enabled.

Procedure

The migration procedure has the following steps:

  1. Create API Keys
  2. Configure BindPlane CLI profiles
  3. Export resources from account
  4. Import resources to new account
  5. Validate
  6. Migrate Agents

Create API Keys

Following the API Keys documentation, create an API key for your source and destination accounts. We are going to refer to them as "export" and "import".

Note the API keys but do not create their profiles. Follow the next section for profile instructions.

Configure CLI Profiles

Configure your BindPlane CLI with two profiles. One for the source account and server, and another for the target account and server.

Create export profile:

bindplane profile set "export" \
  --server-url "http://192.168.1.9:3001" \
  --api-key "xxxx-xxxx-xxxx-xxxx-xxxxxx"

Create the import profile:

bindplane profile set "import" \
  --server-url "http://192.168.1.10:3001" \
  --api-key "xxxx-xxxx-xxxx-xxxx-xxxxxx"

Replace the values for remote url and api key with your BindPlane OP server remote url(s) and api keys.

Export Resources

Switch to the export profile:

bindplane profile use "export"

Export destinations, sources, processors, and configurations from the account:

touch migration-resources.yaml
bindplane get destination -o yaml --export > "migration-resources.yaml"
bindplane get source -o yaml --export >> "migration-resources.yaml"
bindplane get processor -o yaml --export >> "migration-resources.yaml"
bindplane get configuration -o yaml --export >> "migration-resources.yaml"

Import Resources

Switch to the import profile:

bindplane profile use "import"

Import destinations, sources, processors, and configurations using the apply command:

bindplane apply -f "migration-resources.yaml"

Validate

Log into the BindPlane OP account and ensure the configurations and destinations are present. If everything looks right, the migration is finished.

Migrate Agents

Previously connected agents will need to be updated with the new account's secret key. Follow the Migrate Agents documentation.