使用 Milvus Operator 升级 Milvus Standalone
本指南介绍了如何使用 Milvus Operator 将您的 Milvus Standalone 部署从 v2.5.x 升级至 v3.0-beta。
开始之前
v3.0-beta 的新功能
从 Milvus 2.5.x 升级到 3.0-beta 涉及重大的架构变更:
- 协调器整合:旧版中独立的协调器(
dataCoord、queryCoord、indexCoord)已整合为单一mixCoord - 新组件:引入流式处理节点(Streaming Node)以增强数据处理能力
- 组件移除:已移除并整合
indexNode
此升级流程可确保顺利迁移至新架构。有关架构变更的更多信息,请参阅《Milvus 架构概述》。
系统要求
系统要求:
- 通过 Milvus Operator 部署了 Milvus Standalone 的 Kubernetes 集群
kubectl并已配置为可访问您的集群- 已安装 Helm 3.x
兼容性要求:
- Milvus v2.6.0-rc1 与 v3.0-beta不兼容。不支持从候选版本直接升级。
- 如果您当前正在运行 v2.6.0-rc1 且需要保留数据,请参阅此社区指南以获取迁移帮助。
- 在升级至 v3.0-beta 之前,您必须先升级至 v2.5.16 或更高版本。
消息队列限制:在升级至 Milvus v3.0-beta 时,您必须保留当前的消息队列选择。升级过程中不支持在不同的消息队列系统之间切换。未来版本将支持更改消息队列系统。
升级流程
步骤 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
验证操作员升级:
kubectl -n milvus-operator get pods
步骤 2:升级 Milvus Standalone
2.1 升级至 v2.5.16
如果您的独立部署已运行 v2.5.16 或更高版本,请跳过此步骤。
创建配置文件milvusupgrade.yaml 以升级至 v2.5.16:
apiVersion: milvus.io/v1beta1
kind: Milvus
metadata:
name: my-release # Replace with your actual release name
spec:
components:
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.2 升级至 v3.0-beta
当 v2.5.16 成功运行后,请升级至 v3.0-beta:
更新配置文件(本例中为milvusupgrade.yaml ):
apiVersion: milvus.io/v1beta1
kind: Milvus
metadata:
name: my-release # Replace with your actual release name
spec:
components:
image: milvusdb/milvus:v3.0-beta
应用最终升级:
kubectl patch -f milvusupgrade.yaml --patch-file milvusupgrade.yaml --type merge
验证升级
确认您的独立部署已运行新版本:
# Check pod status
kubectl get pods