Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
Información general sobre la migración
Tras cumplir los requisitos previos:
Ejecute el script de migración: con una aplicación de terminal de su elección, ejecute el script de Python para transferir datos de la instancia de InfluxDB de origen a la instancia de InfluxDB de destino.
Proporcione credenciales: proporcione direcciones de host y puertos como opciones. CLI
Verifique los datos: asegúrese de que los datos se transfieran correctamente de la siguiente manera:
Uso de la interfaz de usuario de InfluxDB e inspección de los cubos.
Listar los cubos con.
influx bucket list -t <destination token> --host <destination host address> --skip-verify
Se utiliza
influx v1 shell -t <destination token> --host <destination host address> --skip-verify
y ejecutaSELECT * FROM <migrated bucket>.<retention period>.<measurement name> LIMIT 100 to view contents of a bucket or SELECT COUNT(*) FROM <migrated bucket>.<retention period>.<measurment name>
para comprobar que se ha migrado el número correcto de registros.
ejemplo Ejemplo de ejecución
Abre la aplicación de terminal que prefieras y asegúrate de que los requisitos previos necesarios estén correctamente instalados:
Navegue hasta el script de migración:
Prepare la siguiente información:
Nombre del depósito de origen que se va a migrar.
(Opcional) Elija un nombre nuevo para el depósito migrado en el servidor de destino.
Token raíz para las instancias de afluencia de origen y destino.
Dirección de host de las instancias de afluencia de origen y destino.
(Opcional) Nombre y credenciales del bucket de S3; AWS Command Line Interface las credenciales deben configurarse en las variables de entorno del sistema operativo.
# AWS credentials (for timestream testing) export AWS_ACCESS_KEY_ID="xxx" export AWS_SECRET_ACCESS_KEY="xxx"
Construya el comando de la siguiente manera:
python3 influx_migration.py --src-bucket [source-bucket-name] --dest-bucket [dest-bucket-name] --src-host [source host] --dest-host [dest host] --s3-bucket [s3 bucket name](optional) --log-level debug
Ejecute el script:
Espere a que el script termine de ejecutarse.
Compruebe la integridad de los datos del depósito recién migrado,
performance.txt
. Este archivo, ubicado en el mismo directorio en el que se ejecutó el script, contiene información básica sobre la duración de cada paso.
Escenarios de migración
ejemplo Ejemplo 1: migración sencilla mediante almacenamiento local
Desea migrar un único depósito, el depósito principal, del servidor de origen (http://localhost:8086)
a un servidor de destino. (http://dest-server-address:8086)
Después de asegurarse de que tiene TCP acceso (para HTTP acceder) a las dos máquinas que alojan las instancias de InfluxDB en el puerto 8086 y de que dispone de los tokens de origen y de destino y los ha almacenado como variables de entorno INFLUX_SRC_TOKEN
yINFLUX_DEST_TOKEN
, respectivamente, para mayor seguridad:
python3 influx_migration.py --src-bucket primary-bucket --src-host http://localhost:8086 --dest-host http://dest-server-address:8086
El resultado debería tener un aspecto similar al siguiente:
INFO: influx_migration.py: Backing up bucket data and metadata using the InfluxDB CLI 2023/10/26 10:47:15 INFO: Downloading metadata snapshot 2023/10/26 10:47:15 INFO: Backing up TSM for shard 1 2023/10/26 10:47:15 INFO: Backing up TSM for shard 8245 2023/10/26 10:47:15 INFO: Backing up TSM for shard 8263 [More shard backups . . .] 2023/10/26 10:47:20 INFO: Backing up TSM for shard 8240 2023/10/26 10:47:20 INFO: Backing up TSM for shard 8268 2023/10/26 10:47:20 INFO: Backing up TSM for shard 2 INFO: influx_migration.py: Restoring bucket data and metadata using the InfluxDB CLI 2023/10/26 10:47:20 INFO: Restoring bucket "96c11c8876b3c016" as "primary-bucket" 2023/10/26 10:47:21 INFO: Restoring TSM snapshot for shard 12772 2023/10/26 10:47:22 INFO: Restoring TSM snapshot for shard 12773 [More shard restores . . .] 2023/10/26 10:47:28 INFO: Restoring TSM snapshot for shard 12825 2023/10/26 10:47:28 INFO: Restoring TSM snapshot for shard 12826 INFO: influx_migration.py: Migration complete
El directorio se influxdb-backup-<timestamp>
creará y almacenará en el directorio desde el que se ejecutó el script, que contiene los archivos de respaldo.
ejemplo Ejemplo 2: migración completa mediante almacenamiento local y registro de depuración
Igual que en el caso anterior, excepto que desea migrar todos los depósitos, símbolos, usuarios y paneles, eliminar los depósitos del servidor de destino y continuar sin que el usuario confirme la migración completa de la base de datos mediante esta opción. --confirm-full
También querrá ver cuáles son las medidas de rendimiento para poder habilitar el registro de depuración.
python3 influx_migration.py --full --confirm-full --src-host http://localhost:8086 --dest-host http://dest-server-address:8086 --log-level debug
El resultado debería tener un aspecto similar al siguiente:
INFO: influx_migration.py: Backing up bucket data and metadata using the InfluxDB CLI 2023/10/26 10:55:27 INFO: Downloading metadata snapshot 2023/10/26 10:55:27 INFO: Backing up TSM for shard 6952 2023/10/26 10:55:27 INFO: Backing up TSM for shard 6953 [More shard backups . . .] 2023/10/26 10:55:36 INFO: Backing up TSM for shard 8268 2023/10/26 10:55:36 INFO: Backing up TSM for shard 2 DEBUG: influx_migration.py: backup started at 2023-10-26 10:55:27 and took 9.41 seconds to run. INFO: influx_migration.py: Restoring bucket data and metadata using the InfluxDB CLI 2023/10/26 10:55:36 INFO: Restoring KV snapshot 2023/10/26 10:55:38 WARN: Restoring KV snapshot overwrote the operator token, ensure following commands use the correct token 2023/10/26 10:55:38 INFO: Restoring SQL snapshot 2023/10/26 10:55:39 INFO: Restoring TSM snapshot for shard 6952 2023/10/26 10:55:39 INFO: Restoring TSM snapshot for shard 6953 [More shard restores . . .] 2023/10/26 10:55:49 INFO: Restoring TSM snapshot for shard 8268 2023/10/26 10:55:49 INFO: Restoring TSM snapshot for shard 2 DEBUG: influx_migration.py: restore started at 2023-10-26 10:55:36 and took 13.51 seconds to run. INFO: influx_migration.py: Migration complete
ejemplo Ejemplo 3: migración completa con la organización CSV de destino y el bucket de S3
Igual que en el ejemplo anterior, pero con Linux o Mac y almacenando los archivos en el bucket de S3,my-s3-bucket
. Esto evita que los archivos de respaldo sobrecarguen la capacidad de almacenamiento local.
python3 influx_migration.py --full --src-host http://localhost:8086 --dest-host http://dest-server-address:8086 --csv --dest-org MyOrg --s3-bucket my-s3-bucket
El resultado debería tener un aspecto similar al siguiente:
INFO: influx_migration.py: Creating directory influxdb-backups INFO: influx_migration.py: Mounting influxdb-migration-bucket INFO: influx_migration.py: Creating directory influxdb-backups/my-s3-bucket/influxdb-backup-1698352128323 INFO: influx_migration.py: Backing up bucket data and metadata using the InfluxDB v2 API INFO: influx_migration.py: Restoring bucket data and metadata from csv INFO: influx_migration.py: Restoring bucket some-bucket INFO: influx_migration.py: Restoring bucket another-bucket INFO: influx_migration.py: Restoring bucket primary-bucket INFO: influx_migration.py: Migration complete INFO: influx_migration.py: Unmounting influxdb-backups INFO: influx_migration.py: Removing temporary mount directory