Milvus Operator を使用した Milvus クラスタのアップグレード

このガイドでは、Milvus Operator を使用して Milvus クラスタを v2.5.x から v2.6.24 にアップグレードする方法について説明します。

開始する前に

v2.6.24の新機能

Milvus 2.5.x から 2.6.24 へのアップグレードには、アーキテクチャ上の大幅な変更が含まれます:

  • コーディネーターの統合:従来の別々のコーディネーター(dataCoord 、queryCoord 、indexCoord )が、単一のmixCoord
  • 新コンポーネント:データ処理機能を強化するためのストリーミングノードの導入
  • コンポーネントの削除:indexNode が削除され、統合されました

このアップグレードプロセスにより、新しいアーキテクチャへの適切な移行が保証されます。アーキテクチャの変更に関する詳細については、「Milvus アーキテクチャの概要」を参照してください。

要件

システム要件:

  • Milvus Operatorを介してMilvusがデプロイされたKubernetesクラスタ
  • kubectl クラスタにアクセスできるよう設定済み
  • Helm 3.x がインストールされていること

互換性に関する要件:

  • Milvus v2.6.0-rc1 は v2.6.24と互換性がありません。リリース候補版からの直接アップグレードはサポートされていません。
  • 現在 v2.6.0-rc1 を実行しており、データを保持する必要がある場合は、移行の支援についてこちらのコミュニティガイドを参照してください。
  • v2.6.24 にアップグレードする前に、mixCoord を有効にした状態で v2.5.16 以降にアップグレードする必要があります。

メッセージキューの制限事項:Milvus v2.6.24 へのアップグレード時には、現在のメッセージキューの設定を維持する必要があります。アップグレード中に異なるメッセージキューシステムへ切り替えることはサポートされていません。メッセージキューシステムの変更機能は、将来のバージョンで提供される予定です。

アップグレード手順

ステップ 1: Milvus Operator のアップグレード

まず、Milvus Operator を v1.3.7 にアップグレードします:

helm repo add zilliztech-milvus-operator https://zilliztech.github.io/milvus-operator/
helm repo update zilliztech-milvus-operator
helm -n milvus-operator upgrade milvus-operator zilliztech-milvus-operator/milvus-operator

Operatorのアップグレードを確認します:

kubectl -n milvus-operator get pods

ステップ 2: Milvus クラスタのアップグレード

2.1 現在のコーディネーターの設定を確認する

クラスタがすでにmixCoord を使用しているか確認してください:

kubectl get pods

もし、個別のコーディネーターポッド(datacoord 、querycoord 、indexcoord )が表示されている場合は、次のステップでmixCoord を有効にする必要があります。

2.2 mixCoord を使用した v2.5.16 へのアップグレード

クラスタがすでに v2.5.16 以降を実行しており、mixCoord が有効になっている場合は、この手順をスキップしてください。

mixCoord を有効にし、v2.5.16にアップグレードするために、設定ファイル `milvusupgrade.yaml ` を作成します:

apiVersion: milvus.io/v1beta1
kind: Milvus
metadata:
  name: my-release  # Replace with your actual release name
spec:
  components:
    mixCoord:
      replicas: 1
    image: milvusdb/milvus:v2.5.16

設定を適用します:

kubectl patch -f milvusupgrade.yaml --patch-file milvusupgrade.yaml --type merge

完了するまで待ちます:

# Verify all pods are ready
kubectl get pods

2.3 v2.6.24 へのアップグレード

v2.5.16がmixCoord を有効にした状態で正常に動作したら、v2.6.24にアップグレードします:

設定ファイルを更新します(この例ではmilvusupgrade.yaml ):

apiVersion: milvus.io/v1beta1
kind: Milvus
metadata:
  name: my-release  # Replace with your actual release name
spec:
  components:
    image: milvusdb/milvus:v2.6.24

最終的なアップグレードを適用します:

kubectl patch -f milvusupgrade.yaml --patch-file milvusupgrade.yaml --type merge

アップグレードの確認

クラスタが新しいバージョンで実行されていることを確認します:

# Check pod status
kubectl get pods

さらにサポートが必要な場合は、Milvus のドキュメントまたはコミュニティフォーラムを参照してください。