Mise à niveau du cluster Milvus avec Milvus Operator
Ce guide décrit comment mettre à niveau votre cluster Milvus de la version 2.5.x à la version 2.6.16 à l'aide de Milvus Operator.
Avant de commencer
Nouveautés de la version 2.6.16
La mise à niveau de Milvus 2.5.x vers 2.6.16 implique des changements architecturaux importants :
- Consolidation des coordinateurs: Les anciens coordinateurs séparés (
dataCoord,queryCoord,indexCoord) ont été consolidés en un seul.mixCoord - Nouveaux composants: Introduction d'un nœud de streaming pour un meilleur traitement des données
- Suppression de composants:
indexNodesupprimé et consolidé
Ce processus de mise à niveau garantit une migration correcte vers la nouvelle architecture. Pour plus d'informations sur les modifications de l'architecture, voir l'aperçu de l'architecture Milvus.
Exigences
Configuration requise :
- Cluster Kubernetes avec Milvus déployé via Milvus Operator
kubectlconfiguré pour accéder à votre cluster- Helm 3.x installé
Conditions de compatibilité :
- Milvus v2.6.0-rc1 n'est pas compatible avec v2.6.16. Les mises à niveau directes à partir des versions candidates ne sont pas prises en charge.
- Si vous utilisez actuellement la version 2.6.0-rc1 et que vous devez préserver vos données, veuillez vous référer à ce guide de la communauté pour obtenir de l'aide à la migration.
- Vous devez passer à la version 2.5.16 ou à une version ultérieure avec
mixCoordactivé avant de passer à la version 2.6.16.
Limitations de la file d'attente des messages: Lors de la mise à niveau vers Milvus v2.6.16, 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 prochaines versions.
Processus de mise à niveau
Etape 1 : Mise à niveau de Milvus Operator
Commencer par mettre à niveau votre Milvus Operator vers la version 1.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
Vérifier la mise à niveau de l'opérateur :
kubectl -n milvus-operator get pods
Etape 2 : Mise à niveau de votre cluster Milvus
2.1 Vérifier la configuration actuelle du coordinateur
Vérifiez si votre cluster utilise déjà mixCoord:
kubectl get pods
Si vous voyez des pods coordinateurs séparés (datacoord, querycoord, indexcoord) à la place, vous devez activer mixCoord dans l'étape suivante.
2.2 Mise à jour vers la version 2.5.16 avec mixCoord
Sautez cette étape si votre cluster fonctionne déjà avec la version 2.5.16 ou une version plus récente et que mixCoord est activé.
Créez un fichier de configuration milvusupgrade.yaml pour activer mixCoord et passer à la version 2.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
Appliquer la configuration :
kubectl patch -f milvusupgrade.yaml --patch-file milvusupgrade.yaml --type merge
Attendez la fin de l'opération :
# Verify all pods are ready
kubectl get pods
2.3 Mise à niveau vers la version 2.6.16
Une fois que la version 2.5.16 fonctionne correctement avec mixCoord, passez à la version 2.6.16 :
Mettez à jour votre fichier de configuration (milvusupgrade.yaml dans cet exemple) :
apiVersion: milvus.io/v1beta1
kind: Milvus
metadata:
name: my-release # Replace with your actual release name
spec:
components:
image: milvusdb/milvus:v2.6.16
Appliquer la mise à niveau finale :
kubectl patch -f milvusupgrade.yaml --patch-file milvusupgrade.yaml --type merge
Vérifier la mise à niveau
Confirmez que votre cluster exécute la nouvelle version :
# Check pod status
kubectl get pods
Pour obtenir une assistance supplémentaire, consultez la documentation Milvus ou le forum de la communauté.