Ikhtisar Migrasi - Amazon Timestream

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

Ikhtisar Migrasi

Setelah memenuhi prasyarat:

  1. Jalankan Skrip Migrasi: Menggunakan aplikasi terminal pilihan Anda, jalankan skrip Python untuk mentransfer data dari instance InfluxDB sumber ke instans InfluxDB tujuan.

  2. Berikan Kredensial: Berikan alamat host dan port sebagai CLI opsi.

  3. Verifikasi Data: Pastikan data ditransfer dengan benar oleh:

    1. Menggunakan UI InfluxDB dan memeriksa bucket.

    2. Daftar ember denganinflux bucket list -t <destination token> --host <destination host address> --skip-verify.

    3. Menggunakan influx v1 shell -t <destination token> --host <destination host address> --skip-verify dan menjalankan SELECT * 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> untuk memverifikasi jumlah catatan yang benar telah dimigrasikan.

contoh Contoh jalankan
  1. Buka aplikasi terminal pilihan Anda dan pastikan prasyarat yang diperlukan diinstal dengan benar:

    Prasyarat skrip
  2. Arahkan ke skrip migrasi:

    Lokasi skrip
  3. Siapkan informasi berikut:

    1. Nama bucket sumber yang akan dimigrasikan.

    2. (Opsional) Pilih nama bucket baru untuk bucket yang dimigrasi di server tujuan.

    3. Token root untuk instance masuknya sumber dan tujuan.

    4. Alamat host dari instance masuknya sumber dan tujuan.

    5. (Opsional) nama bucket S3 dan kredensional; AWS Command Line Interface kredensional harus ditetapkan dalam variabel lingkungan OS.

      # AWS credentials (for timestream testing) export AWS_ACCESS_KEY_ID="xxx" export AWS_SECRET_ACCESS_KEY="xxx"
    6. Bangun perintah sebagai:

      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
    7. Jalankan skrip:

      Eksekusi skrip
    8. Tunggu skrip selesai dieksekusi.

    9. Periksa bucket yang baru dimigrasi untuk mengetahui integritas data. performance.txt File ini, yang terletak di bawah direktori yang sama tempat skrip dijalankan, berisi beberapa informasi dasar tentang berapa lama setiap langkah diambil.

Skenario migrasi

contoh Contoh 1: Migrasi Sederhana Menggunakan Penyimpanan Lokal

Anda ingin memigrasikan satu bucket, primary bucket, dari server sumber (http://localhost:8086) ke server tujuan. (http://dest-server-address:8086)

Setelah memastikan Anda memiliki TCP akses (untuk HTTP akses) ke kedua mesin yang menghosting instans InfluxDB pada port 8086 dan Anda memiliki token sumber dan tujuan dan telah menyimpannya sebagai variabel lingkungan INFLUX_SRC_TOKEN danINFLUX_DEST_TOKEN, masing-masing, untuk keamanan tambahan:

python3 influx_migration.py --src-bucket primary-bucket --src-host http://localhost:8086 --dest-host http://dest-server-address:8086

Outputnya akan serupa dengan yang berikut ini:

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

Direktori influxdb-backup-<timestamp> akan dibuat dan disimpan di direktori tempat skrip dijalankan, berisi file cadangan.

contoh Contoh 2: Migrasi Penuh Menggunakan Penyimpanan Lokal dan Pencatatan Debug

Sama seperti di atas kecuali Anda ingin memigrasikan semua bucket, token, pengguna, dan dasbor, menghapus bucket di server tujuan, dan melanjutkan tanpa konfirmasi pengguna tentang migrasi database lengkap dengan menggunakan opsi. --confirm-full Anda juga ingin melihat pengukuran kinerjanya sehingga Anda mengaktifkan logging debug.

python3 influx_migration.py --full --confirm-full --src-host http://localhost:8086 --dest-host http://dest-server-address:8086 --log-level debug

Outputnya akan serupa dengan yang berikut ini:

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

contoh Contoh 3: Penggunaan Migrasi PenuhCSV, Organisasi Tujuan, dan Bucket S3

Sama seperti contoh sebelumnya tetapi menggunakan Linux atau Mac dan menyimpan file di bucket S3,my-s3-bucket. Ini menghindari file cadangan yang membebani kapasitas penyimpanan lokal.

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

Outputnya akan serupa dengan yang berikut ini:

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