使用 Milvus Operator 升級 Milvus 集群
本指南描述如何使用 Milvus Operator 將您的 Milvus 集群從 v2.5.x 升級到 v2.6.15。
在您開始之前
v2.6.15 的新功能
從 Milvus 2.5.x 升級到 2.6.15 涉及重大的架構改變:
- 協調器整合:傳統獨立的協調器 (
dataCoord,queryCoord,indexCoord) 已經合併為單一的協調器。mixCoord - 新元件:引進 Streaming Node 以增強資料處理能力
- 元件移除:
indexNode已移除並合併。
此升級程序可確保妥善遷移至新架構。關於架構改變的更多資訊,請參考Milvus 架構概述。
系統需求
系統需求:
- 透過 Milvus Operator 部署了 Milvus 的 Kubernetes 叢集
kubectl設定存取您的群集- 已安裝 Helm 3.x
相容性需求:
- Milvus v2.6.0-rc1 與 v2.6.15不相容。不支援從候選版本直接升級。
- 如果您目前正在執行 v2.6.0-rc1,並需要保留您的資料,請參考此社群指南以取得遷移協助。
- 在升級至 v2.6.15 之前,您必須升級至 v2.5.16 或更高版本,並啟用
mixCoord。
訊息佇列限制:升級到Milvus v2.6.15時,您必須維持目前的訊息佇列選擇。升級期間不支援在不同的訊息佇列系統之間切換。未來版本將支援變更訊息佇列系統。
升級過程
步驟 1:升級 Milvus Operator
首先,將您的 Milvus Operator 升級至 v1.3.0:
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
驗證操作員升級:
kubectl -n milvus-operator get pods
步驟 2: 升級您的 Milvus 集群
2.1 檢查目前的協調器配置
檢查您的集群是否已經使用mixCoord :
kubectl get pods
如果您看到的是獨立的協調器 pod (datacoord,querycoord,indexcoord) 而不是,您需要在下一步啟用mixCoord 。
2.2 使用 mixCoord 升級至 v2.5.16
如果您的群集已經執行 v2.5.16 或更高版本,並已啟用mixCoord ,請跳過此步驟。
建立配置檔案milvusupgrade.yaml 以啟用mixCoord 並升級至 v2.5.16:
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.15
一旦 v2.5.16 與mixCoord 成功運行,升級至 v2.6.15:
更新您的設定檔案 (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.15
套用最終升級:
kubectl patch -f milvusupgrade.yaml --patch-file milvusupgrade.yaml --type merge
驗證升級
確認您的群集正在執行新版本:
# Check pod status
kubectl get pods