Upgrade Milvus Cluster with Helm Chart
This guide describes how to upgrade your Milvus cluster from v2.5.x to v2.6.0 using Helm Chart.
Before you start
What’s new in v2.6.0
Upgrading from Milvus 2.5.x to 2.6.0 involves significant architectural changes:
- Coordinator consolidation: Legacy separate coordinators (
dataCoord
,queryCoord
,indexCoord
) have been consolidated into a singlemixCoord
- New components: Introduction of Streaming Node for enhanced data processing
- Component removal:
indexNode
removed and consolidated
This upgrade process ensures proper migration to the new architecture. For more information on architecture changes, refer to Milvus Architecture Overview.
Requirements
System requirements:
- Helm version >= 3.14.0
- Kubernetes version >= 1.20.0
- Milvus cluster deployed via Helm Chart
Compatibility requirements:
- Milvus v2.6.0-rc1 is not compatible with v2.6.0. Direct upgrades from release candidates are not supported.
- If you are currently running v2.6.0-rc1 and need to preserve your data, please refer to this community guide for migration assistance.
- You must upgrade to v2.5.16 or later with
mixCoordinator
enabled before upgrading to v2.6.0.
--reset-then-reuse-values
option whenever you use helm upgrade
.
Upgrade process
Step 1: Upgrade Helm Chart
First, upgrade your Milvus Helm chart to version 5.0.0:
helm repo add zilliztech https://zilliztech.github.io/milvus-helm
helm repo update zilliztech
https://milvus-io.github.io/milvus-helm/
has been archived. Use the new repo https://zilliztech.github.io/milvus-helm/
for chart versions 4.0.31 and later.
To check Helm chart version compatibility with Milvus versions:
helm search repo zilliztech/milvus --versions
This guide assumes you are installing the latest version. If you need to install a specific version, specify the --version
parameter accordingly.
Step 2: Upgrade to v2.5.16 with mixCoordinator
Check if your cluster currently uses separate coordinators:
kubectl get pods
If you see separate coordinator pods (datacoord
, querycoord
, indexcoord
), upgrade to v2.5.16 and enable mixCoordinator
:
helm upgrade my-release zilliztech/milvus \
--set image.all.tag="v2.5.16" \
--set mixCoordinator.enabled=true \
--set rootCoordinator.enabled=false \
--set indexCoordinator.enabled=false \
--set queryCoordinator.enabled=false \
--set dataCoordinator.enabled=false \
--reset-then-reuse-values \
--version=4.2.58
If your cluster already uses mixCoordinator
, simply upgrade the image:
helm upgrade my-release zilliztech/milvus \
--set image.all.tag="v2.5.16" \
--reset-then-reuse-values \
--version=4.2.58
Wait for the upgrade to complete:
# Verify all pods are ready
kubectl get pods
Step 3: Upgrade to v2.6.0
Once v2.5.16 is running successfully with mixCoordinator
, upgrade to v2.6.0:
helm upgrade my-release zilliztech/milvus \
--set image.all.tag="v2.6.0" \
--set streaming.enabled=true \
--set indexNode.enabled=false \
--reset-then-reuse-values \
--version=5.0.0
Verify the upgrade
Confirm your cluster is running the new version:
# Check pod status
kubectl get pods
# Verify Helm release
helm list
For additional support, consult the Milvus documentation or community forum.