Milvus から Zilliz Cloud へのバックアップツールによる移行
Zilliz Cloud は、Milvus からのデータ移行用のバックアップツールを提供しています。このバックアップツールにより、ユーザーは複雑な詳細を手動で処理する必要なく、より簡単かつ効率的にデータ移行を実行でき、使いやすさと成功率が大幅に向上します。
この機能により、さまざまな移行シナリオにおける運用の複雑さが解消されます。
- ローカルバックアップファイルを使用した移行時のファイルサイズ制限。
- バケットベースの移行を使用する際の、異なるクラウドプロバイダーのクラウドストレージバケット設定の理解。
- エンドポイントベースの移行を実行する際の、Milvus インスタンスエンドポイントのネットワークアクセシビリティの確保。
開始前に
-
組織オーナー または プロジェクト管理者 のロールが付与されていること。必要な権限がない場合は、Zilliz Cloud の組織オーナーに連絡してください。
-
ターゲットクラスターのクエリ CU 数がソースデータを収容できることを確認してください。必要なクエリ CU 数を見積もるには、計算ツール を使用してください。
手順
この手順では、Milvus Backup を使用してバックアップファイルを準備し、Zilliz Cloud にアップロードして、指定されたターゲット Zilliz Cloud クラスターに移行します。
milvus-backup をダウンロードしてください。常に最新のリリースを使用してください。
現在、Milvus 2.2 以降のバージョンから Zilliz Cloud クラスターへのデータ移行が可能です。互換性のあるソースおよびターゲットの Milvus バージョンの詳細については、Milvus Backup の概要 を参照してください。
ダウンロードしたバイナリと並列して configs フォルダーを作成し、backup.yaml を configs フォルダーにダウンロードしてください。
この手順が完了すると、ワークスペースフォルダーの構造は次のようになります。
workspace
├── milvus-backup
└── configs
└── backup.yaml
backup.yaml をカスタマイズします。
-
次の設定項目を設定します:
...cloud:address: https://api.cloud.zilliz.comapikey: <your-api-key>...-
cloud.addressZilliz Cloud コントロールプレーンのエンドポイント。
https://api.cloud.zilliz.comです。 -
cloud.apikey移行の対象クラスターを操作するのに十分な権限を持つ有効な Zilliz Cloud APIキー。詳細については、APIキー を参照してください。
-
-
以下の設定項目が正しいかどうかを確認します。
...# milvus proxy address, compatible to milvus.yamlmilvus:address: localhostport: 19530...# Related configuration of minio, which is responsible for data persistence for Milvus.minio:# Milvus storage configs, make them the same with milvus configstorageType: "minio" # support storage type: local, minio, s3, aws, gcp, ali(aliyun), azure, tc(tencent), gcpnative# You can use "gcpnative" for the Google Cloud Platform provider. Uses service account credentials for authentication.address: localhost # Address of MinIO/S3port: 9000 # Port of MinIO/S3bucketName: "a-bucket" # Milvus Bucket name in MinIO/S3, make it the same as your milvus instancebackupBucketName: "a-bucket" # Bucket name to store backup data. Backup data will store to backupBucketName/backupRootPathrootPath: "files" # Milvus storage root path in MinIO/S3, make it the same as your milvus instance...
-
Docker Compose でインストールされた Milvus インスタンスの場合、
minio.bucketNameのデフォルト値はa-bucket、rootPathのデフォルト値はfilesです。 -
Kubernetes でインストールされた Milvus インスタンスの場合、
minio.bucketNameのデフォルト値はmilvus-bucket、rootPathのデフォルト値はfileです。
Milvus インストールのバックアップを作成します。
./milvus-backup --config backup.yaml create -n my_backup
# my_backup is the name of the backup file
# and will be used in the migrate command
対象の Zilliz Cloud クラスターを作成し、クラスター ID を控えた上で、以下のコマンドを実行して移行を開始します。
./milvus-backup migrate --cluster_id inxx-xxxxxxxxxxxxxxx -n my_backup
# cluster_id is the ID of the target Zilliz Cloud cluster
# my_backup is the name of the backup file created in the above command
# The command output is similar to the following:
# Successfully triggered migration with backup name: my_backup target cluster: inxx-xxxxxxxxxxxxxxx migration job id: job-xxxxxxxxxxxxxxxxxxx.
# You can check the progress of the migration job in Zilliz Cloud console.
このコマンドを実行すると、Milvus Backup は準備されたバックアップファイルを Zilliz Cloud プラットフォームにアップロードし、移行ジョブを作成して、コマンド出力としてジョブ ID を返します。
Zilliz Cloud プラットフォームにアップロードされたバックアップファイルは、アップロードから 3 日間保持された後、削除されます。
移行プロセスの監視
Migrate をクリックすると、移行ジョブが生成されます。ジョブ ページで移行の進捗状況を確認できます。ジョブのステータスが 進行中 から 成功 に変わると、移行は完了です。
移行後、ターゲットクラスタ内のコレクション数とエンティティ数がデータソースと一致していることを確認してください。不一致が見つかった場合、エンティティが欠落しているコレクションを削除して、再度移行してください。

移行後
移行ジョブが完了した後、以下の点に注意してください:
-
インデックス作成: 移行プロセスでは、移行されたコレクションに対して AUTOINDEX が自動的に作成されます。
-
手動ロードが必要です: 自動インデックス作成が行われても、移行されたコレクションはすぐには検索やクエリ操作に利用できません。Zilliz Cloud でコレクションを手動でロードして、検索およびクエリ機能を有効にする必要があります。詳細については、Load & Release を参照してください。
移行ジョブのキャンセル
移行プロセスで問題が発生した場合は、以下の手順でトラブルシューティングを行い、移行を再開できます: