Mettez à niveau une installation Trident à l'aide de l'opérateur Trident ou de Helm
Vous pouvez mettre à niveau Trident à l'aide de l'opérateur Trident, soit manuellement, soit à l'aide de Helm. Vous pouvez mettre à niveau une installation de l'opérateur Trident vers une autre installation de l'opérateur Trident ou effectuer une mise à niveau d'une installation tridentctl vers une version opérateur Trident. Examinez "Sélectionnez une méthode de mise à niveau" avant de mettre à niveau une installation de l'opérateur Trident.
Mettre à niveau une installation manuelle
Vous pouvez effectuer une mise à niveau d'une installation d'opérateur Trident à l'échelle d'un cluster vers une autre installation d'opérateur Trident à l'échelle d'un cluster. Toutes les versions de Trident utilisent un opérateur à l'échelle d'un cluster.
|
|
Pour mettre à niveau Trident installé à l'aide de l'opérateur à portée d'espace de noms (versions 20.07 à 20.10), utilisez les instructions de mise à niveau "votre version installée" de Trident. |
Trident fournit un fichier bundle que vous pouvez utiliser pour installer l’opérateur et créer les objets associés pour votre version de Kubernetes.
-
Pour les clusters exécutant Kubernetes 1.24, utilisez "bundle_pre_1_25.yaml".
-
Pour les clusters exécutant Kubernetes 1.25 ou une version ultérieure, utilisez "bundle_post_1_25.yaml".
Assurez-vous d'utiliser un cluster Kubernetes exécutant "une version Kubernetes prise en charge".
-
Vérifiez votre version de Trident :
./tridentctl -n trident version
-
Mettez à jour le
operator.yaml,tridentorchestrator_cr.yaml, etpost_1_25_bundle.yamlavec le registre et les chemins d'image pour la version vers laquelle vous effectuez la mise à niveau (par exemple 25.06), ainsi que le secret correct. -
Supprimez l’opérateur Trident qui a été utilisé pour installer l’instance Trident actuelle. Par exemple, si vous effectuez une mise à niveau depuis la version 25.02, exécutez la commande suivante :
kubectl delete -f 25.02.0/trident-installer/deploy/<bundle.yaml> -n trident
-
Si vous avez personnalisé votre installation initiale à l'aide des
TridentOrchestratorattributs, vous pouvez modifier l'objetTridentOrchestratorpour modifier les paramètres d'installation. Cela peut inclure des modifications apportées pour spécifier des registres d'images Trident et CSI en miroir pour le mode hors ligne, activer les journaux de débogage ou spécifier des secrets d'extraction d'images. -
Installez Trident en utilisant le fichier YAML de bundle approprié pour votre environnement, où <bundle.yaml> est
bundle_pre_1_25.yamloubundle_post_1_25.yamlselon votre version de Kubernetes. Par exemple, si vous installez Trident 25.06.0, exécutez la commande suivante :kubectl create -f 25.06.0/trident-installer/deploy/<bundle.yaml> -n trident
-
Modifiez le trident torc pour inclure l'image 25.06.0.
Mettre à niveau une installation Helm
Vous pouvez mettre à niveau une installation Trident Helm.
|
|
Lors de la mise à niveau d'un cluster Kubernetes de la version 1.24 à la version 1.25 ou ultérieure sur lequel Trident est installé, vous devez mettre à jour values.yaml pour définir excludePodSecurityPolicy sur true ou ajouter --set excludePodSecurityPolicy=true à la commande helm upgrade avant de pouvoir mettre à niveau le cluster.
|
Si vous avez déjà mis à niveau votre cluster Kubernetes de la version 1.24 à la version 1.25 sans mettre à niveau le helm Trident, la mise à niveau du helm échouera. Pour que la mise à niveau du helm réussisse, effectuez les étapes suivantes comme prérequis :
-
Installez le plugin helm-mapkubeapis depuis https://github.com/helm/helm-mapkubeapis.
-
Effectuez un test à blanc pour la version Trident dans l'espace de noms où Trident est installé. Cela liste les ressources qui seront nettoyées.
helm mapkubeapis --dry-run trident --namespace trident
-
Effectuez une exécution complète avec helm pour effectuer le nettoyage.
helm mapkubeapis trident --namespace trident
-
Si vous "installé Trident à l'aide de Helm" , vous pouvez utiliser
helm upgrade trident netapp-trident/trident-operator --version 100.2506.0pour effectuer la mise à niveau en une seule étape. Si vous n'avez pas ajouté le dépôt Helm ou si vous ne pouvez pas l'utiliser pour effectuer la mise à niveau :-
Téléchargez la dernière version de Trident depuis "la section Assets sur GitHub".
-
Utilisez la commande
helm upgradeoùtrident-operator-25.10.0.tgzcorrespond à la version vers laquelle vous souhaitez effectuer la mise à niveau.helm upgrade <name> trident-operator-25.10.0.tgz
Si vous définissez des options personnalisées lors de l'installation initiale (comme la spécification de registres privés et en miroir pour Trident et les images CSI), ajoutez la helm upgradecommande en utilisant--setpour garantir que ces options sont incluses dans la commande de mise à niveau, sinon les valeurs seront réinitialisées à la valeur par défaut.
-
-
Exécutez
helm listpour vérifier que le graphique et la version de l'application ont tous deux été mis à niveau. Exécuteztridentctl logspour examiner les messages de débogage.
Mise à niveau d'une `tridentctl`installation vers l'opérateur Trident
Vous pouvez mettre à niveau vers la dernière version de l’opérateur Trident à partir d’une installation tridentctl existante. Les backends et les PVC existants seront automatiquement disponibles.
|
|
Avant de changer de méthode d'installation, consultez "Passer d'une méthode d'installation à une autre". |
-
Téléchargez la dernière version de Trident.
# Download the release required [25.10.0] mkdir 25.10.0 cd 25.10.0 wget https://github.com/NetApp/trident/releases/download/v25.10.0/trident-installer-25.10.0.tar.gz tar -xf trident-installer-25.10.0.tar.gz cd trident-installer
-
Créez la
tridentorchestratorCRD à partir du manifeste.kubectl create -f deploy/crds/trident.netapp.io_tridentorchestrators_crd_post1.16.yaml
-
Déployez l'opérateur à portée de cluster dans le même espace de noms.
kubectl create -f deploy/<bundle-name.yaml> serviceaccount/trident-operator created clusterrole.rbac.authorization.k8s.io/trident-operator created clusterrolebinding.rbac.authorization.k8s.io/trident-operator created deployment.apps/trident-operator created podsecuritypolicy.policy/tridentoperatorpods created #Examine the pods in the Trident namespace NAME READY STATUS RESTARTS AGE trident-controller-79df798bdc-m79dc 6/6 Running 0 150d trident-node-linux-xrst8 2/2 Running 0 150d trident-operator-5574dbbc68-nthjv 1/1 Running 0 1m30s
-
Créer une
TridentOrchestratorCR pour installer Trident.cat deploy/crds/tridentorchestrator_cr.yaml apiVersion: trident.netapp.io/v1 kind: TridentOrchestrator metadata: name: trident spec: debug: true namespace: trident kubectl create -f deploy/crds/tridentorchestrator_cr.yaml #Examine the pods in the Trident namespace NAME READY STATUS RESTARTS AGE trident-csi-79df798bdc-m79dc 6/6 Running 0 1m trident-csi-xrst8 2/2 Running 0 1m trident-operator-5574dbbc68-nthjv 1/1 Running 0 5m41s
-
Confirmez que Trident a été mis à niveau vers la version prévue.
kubectl describe torc trident | grep Message -A 3 Message: Trident installed Namespace: trident Status: Installed Version: v25.10.0