iagctl db migrate etcd-to-local
iagctl db migrate etcd-to-local
Migrate data from an etcd database to a local database.
The iagctl db migrate etcd-to-local command moves data from the etcd database at GATEWAY_STORE_ETCD_HOSTS to the local database at GATEWAY_APPLICATION_WORKING_DIR/gateway.db.
Before you run this command, verify that all GATEWAY_STORE_ETCD_* configuration variables are set correctly. The gateway prefixes all database keys with the cluster ID set by GATEWAY_APPLICATION_CLUSTER_ID. For example, a Python script record has a key that resembles gateway/cluster_1/services/v1/python-script/my-script.
For more information, see Store configuration variables.
Syntax
Examples
Migrate non-conflicting records
The following example moves records from etcd to the local database. If a record with the same key already exists in the local database, the gateway skips it to avoid overwriting existing data:
Migrate all records
The following example moves all records and overwrites any existing records in the local database that have conflicting keys:
Preview the migration
Use the --check flag to display a report of what the gateway would migrate without moving any data. The report shows which records the gateway would skip or replace depending on whether you include --force: