Mise à niveau du cluster Milvus à l'aide d'un Helm Chart
Ce guide décrit comment mettre à niveau votre cluster Milvus de la version v2.5.x à la version v3.0-beta à l'aide d'un Helm Chart.
Avant de commencer
Nouveautés de la version 3.0-beta
La mise à niveau de Milvus 2.5.x vers la version 3.0-beta implique des changements architecturaux importants :
- Consolidation des coordinateurs: les anciens coordinateurs distincts (
dataCoord,queryCoord,indexCoord) ont été regroupés en un seulmixCoord - Nouveaux composants: introduction du nœud de streaming pour un traitement amélioré des données
- Suppression de composants:
indexNodea été supprimé et consolidé
Ce processus de mise à niveau garantit une migration correcte vers la nouvelle architecture. Pour plus d’informations sur les modifications apportées à l’architecture, consultez la présentation de l’architecture de Milvus.
Configuration requise
Configuration système requise :
- Version de Helm >= 3.14.0
- Version de Kubernetes >= 1.20.0
- Cluster Milvus déployé via Helm Chart
Exigences de compatibilité :
- Milvus v2.6.0-rc1 n' est pas compatible avec la version v3.0-beta. Les mises à niveau directes à partir de versions candidates ne sont pas prises en charge.
- Si vous utilisez actuellement la version v2.6.0-rc1 et que vous souhaitez conserver vos données, veuillez consulter ce guide de la communauté pour obtenir de l'aide concernant la migration.
- Vous devez effectuer une mise à niveau vers la version v2.5.16 ou ultérieure avec l’option «
mixCoordinator» activée avant de passer à la version v3.0-beta.
Limitations relatives aux files d’attente de messages: lors de la mise à niveau vers Milvus v3.0-beta, vous devez conserver votre choix actuel de file d’attente de messages. Le passage d’un système de file d’attente de messages à un autre pendant la mise à niveau n’est pas pris en charge. La prise en charge du changement de système de file d’attente de messages sera disponible dans les versions futures.
--reset-then-reuse-values chaque fois que vous utilisez helm upgrade.
Processus de mise à jour
Étape 1 : Mise à niveau du chart Helm
Commencez par mettre à jour votre chart Helm Milvus vers la version 5.0.22 :
helm repo add zilliztech https://zilliztech.github.io/milvus-helm
helm repo update zilliztech
https://milvus-io.github.io/milvus-helm/ a été archivé. Utilisez le nouveau dépôt https://zilliztech.github.io/milvus-helm/ pour les versions 4.0.31 et ultérieures des charts.
Pour vérifier la compatibilité des versions des Helm Charts avec celles de Milvus :
helm search repo zilliztech/milvus --versions
Ce guide part du principe que vous installez la dernière version. Si vous devez installer une version spécifique, spécifiez le paramètre --version en conséquence.
Étape 2 : Mise à niveau vers la version 2.5.16 avec mixCoordinator
Vérifiez si votre cluster utilise actuellement des coordinateurs distincts :
kubectl get pods
Si vous voyez des pods de coordinateurs distincts (datacoord, querycoord, indexcoord), effectuez la mise à niveau vers la v2.5.16 et activez 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 votre cluster utilise déjà mixCoordinator, il vous suffit de mettre à jour l'image :
helm upgrade my-release zilliztech/milvus \
--set image.all.tag="v2.5.16" \
--reset-then-reuse-values \
--version=4.2.58
Attendez que la mise à jour soit terminée :
# Verify all pods are ready
kubectl get pods
Étape 3 : Passez à la version v3.0-beta
Une fois que la version 2.5.16 fonctionne correctement avec mixCoordinator, effectuez la mise à niveau vers la version 3.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
Vérifiez la mise à jour
Vérifiez que votre cluster exécute bien la nouvelle version :
# Check pod status
kubectl get pods
# Verify Helm release
helm list
Pour obtenir une assistance supplémentaire, consultez la documentation Milvus ou le forum de la communauté.