Actualizar el clúster de Milvus con Helm Chart

Esta guía describe cómo actualizar tu clúster de Milvus de la versión 2.5.x a la versión 3.0-beta utilizando Helm Chart.

Antes de empezar

Novedades de la versión v3.0-beta

La actualización de Milvus 2.5.x a la versión 3.0-beta conlleva cambios arquitectónicos significativos:

  • Consolidación del coordinador: los coordinadores independientes heredados (dataCoord, queryCoord, indexCoord) se han consolidado en uno solo mixCoord
  • Nuevos componentes: Introducción del nodo de streaming para mejorar el procesamiento de datos
  • Eliminación de componentes: se ha eliminado y consolidado indexNode

Este proceso de actualización garantiza una migración adecuada a la nueva arquitectura. Para obtener más información sobre los cambios en la arquitectura, consulte la Descripción general de la arquitectura de Milvus.

Requisitos

Requisitos del sistema:

  • Versión de Helm >= 3.14.0
  • Versión de Kubernetes >= 1.20.0
  • Clúster de Milvus implementado mediante Helm Chart

Requisitos de compatibilidad:

  • Milvus v2.6.0-rc1 no es compatible con la versión v3.0-beta. No se admiten actualizaciones directas desde versiones candidatas.
  • Si actualmente estás ejecutando la versión v2.6.0-rc1 y necesitas conservar tus datos, consulta esta guía de la comunidad para obtener ayuda con la migración.
  • Debes actualizar a la versión v2.5.16 o posterior con la opción « mixCoordinator » habilitada antes de actualizar a la v3.0-beta.

Limitaciones de la cola de mensajes: al actualizar a Milvus v3.0-beta, debe mantener su elección actual de cola de mensajes. No se admite el cambio entre diferentes sistemas de colas de mensajes durante la actualización. La compatibilidad con el cambio de sistemas de colas de mensajes estará disponible en futuras versiones.

A partir de la versión 4.2.21 del gráfico Helm de Milvus, hemos introducido el gráfico pulsar-v3.x como dependencia. Para garantizar la compatibilidad con versiones anteriores, actualiza tu Helm a la versión 3.14 o posterior y asegúrate de añadir la opción --reset-then-reuse-values siempre que utilices helm upgrade.

Proceso de actualización

Paso 1: Actualizar el gráfico de Helm

En primer lugar, actualice su gráfico Helm de Milvus a la versión 5.0.22:

helm repo add zilliztech https://zilliztech.github.io/milvus-helm
helm repo update zilliztech
El repositorio de gráficos Helm de Milvus en https://milvus-io.github.io/milvus-helm/ ha sido archivado. Utilice el nuevo repositorio https://zilliztech.github.io/milvus-helm/ para las versiones 4.0.31 y posteriores del gráfico.

Para comprobar la compatibilidad de la versión del Helm Chart con las versiones de Milvus:

helm search repo zilliztech/milvus --versions

Esta guía da por hecho que está instalando la última versión. Si necesita instalar una versión específica, especifique el parámetro --version en consecuencia.

Paso 2: Actualizar a la v2.5.16 con mixCoordinator

Comprueba si tu clúster utiliza actualmente coordinadores independientes:

kubectl get pods

Si ves pods de coordinador independientes (datacoord, querycoord, indexcoord), actualiza a la v2.5.16 y habilita 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

Si su clúster ya utiliza mixCoordinator, simplemente actualice la imagen:

helm upgrade my-release zilliztech/milvus \
  --set image.all.tag="v2.5.16" \
  --reset-then-reuse-values \
  --version=4.2.58

Espera a que finalice la actualización:

# Verify all pods are ready
kubectl get pods

Paso 3: Actualizar a la versión v3.0-beta

Una vez que la versión v2.5.16 se ejecute correctamente con mixCoordinator, actualice a la versión v3.0-beta:

helm upgrade my-release zilliztech/milvus \
  --set image.all.tag="v3.0-beta" \
  --set streaming.enabled=true \
  --set indexNode.enabled=false \
  --reset-then-reuse-values \
  --version=5.0.22

Comprueba la actualización

Confirma que tu clúster está ejecutando la nueva versión:

# Check pod status
kubectl get pods

# Verify Helm release
helm list

Si necesitas ayuda adicional, consulta la documentación de Milvus o el foro de la comunidad.