Skip to main content
Une version plus récente de ce produit est disponible.
La version française est une traduction automatique. La version anglaise prévaut sur la française en cas de divergence.

Mettez à niveau Astra Trident

Contributeurs

Astra Trident suit le rythme de sa mise à jour trimestrielle, fournissant quatre versions majeures chaque année. Chaque nouvelle version s'appuie sur les versions précédentes, offrant de nouvelles fonctionnalités et améliorations des performances ainsi que des correctifs et des améliorations. Nous vous encourageons à effectuer une mise à niveau au moins une fois par an pour profiter des nouvelles fonctionnalités d'Astra Trident.

Considérations avant la mise à niveau

Lorsque vous mettez à niveau vers la dernière version d'Astra Trident, prenez en compte les points suivants :

  • Il ne doit y avoir qu'une seule instance Astra Trident installée sur tous les namespaces d'un cluster Kubernetes donné.

  • Depuis Trident 20.01, seule la version bêta de "snapshots de volume" est pris en charge. Les administrateurs Kubernetes doivent veiller à sauvegarder ou convertir en version bêta les objets de snapshot alpha en toute sécurité, afin de conserver les snapshots alpha hérités.

    • Les snapshots de volumes CSI sont désormais une fonctionnalité GA, qui commence par Kubernetes 1.20. Avant de procéder à la mise à niveau, vous devez supprimer les CRD alpha snapshot à l'aide de tridentctl obliviate alpha-snapshot-crd Pour supprimer les CRD pour la spécification alpha snapshot.

    • La version bêta des snapshots de volume introduit un ensemble modifié de CRD et un contrôleur Snapshot, qui doivent tous deux être configurés avant la mise à niveau d'Astra Trident.

    • Pour plus de détails, reportez-vous à "Ce que vous devez savoir avant de mettre à niveau votre cluster Kubernetes".

  • Toutes les mises à niveau des versions 19.04 et antérieures requièrent la migration des métadonnées Astra Trident qui lui sont propres etcd Aux objets CRD. Vérifiez le "Documentation spécifique à votre version d'Astra Trident" pour comprendre le fonctionnement de la mise à niveau.

  • Lors de la mise à niveau, il est important de fournir parameter.fsType dans StorageClasses Utilisé par Astra Trident. Vous pouvez supprimer et recréer StorageClasses sans interrompre les volumes existants.

Étape 1 : sélectionnez une version

Les versions d'Astra Trident suivent une date YY.MM convention de dénomination, où "YY" est les deux derniers chiffres de l'année et "MM" est le mois. Les versions point suivent un YY.MM.X convention, où « X » est le niveau de patch. Vous allez sélectionner la version à mettre à niveau en fonction de la version à partir de laquelle vous effectuez la mise à niveau.

  • Vous pouvez effectuer une mise à niveau directe vers n'importe quelle version cible située dans une fenêtre à quatre versions de la version installée. Par exemple, vous pouvez effectuer une mise à niveau vers 23.04 à partir de 22.04 (y compris toutes les versions de point, telles que 22.04.1) directement.

  • Si vous disposez d'une version antérieure, vous devez effectuer une mise à niveau en plusieurs étapes à l'aide de la documentation de la version concernée pour obtenir des instructions spécifiques. Pour ce faire, vous devez d'abord effectuer une mise à niveau vers la version la plus récente qui correspond à votre fenêtre des quatre versions. Par exemple, si vous exécutez 18.07 et que vous souhaitez effectuer une mise à niveau vers la version 20.07, suivez la procédure de mise à niveau en plusieurs étapes comme suit :

    1. Première mise à niveau de 18.07 à 19.07.

    2. Puis mettre à niveau de 19.07 à 20.07.

Remarque Lorsque vous effectuez une mise à niveau avec l'opérateur Trident sur OpenShift Container Platform, vous devez effectuer une mise à niveau vers Trident 21.01.1 ou une version ultérieure. L'opérateur Trident sorti avec 21.01.0 contient un problème connu qui a été résolu en 21.01.1. Pour plus de détails, consultez le "Consultez le document GitHub pour plus d'informations".

Étape 2 : déterminer la méthode d'installation d'origine

En général, vous devez effectuer une mise à niveau en utilisant la même méthode que celle utilisée pour l'installation initiale, mais vous pouvez le faire "passer d'une méthode d'installation à l'autre".

Pour déterminer quelle version vous avez utilisée pour l'installation initiale d'Astra Trident :

  1. Utiliser kubectl get pods - trident pour examiner les pods.

    • S'il n'y a pas de pod opérateur, Astra Trident a été installé avec tridentctl.

    • S'il existe un pod opérateur, Astra Trident a été installé à l'aide de l'opérateur Trident soit manuellement, soit à l'aide d'Helm.

  2. S'il y a un boîtier opérateur, utiliser kubectl describe tproc trident Pour déterminer si Astra Trident a été installé à l'aide d'Helm.

    • S'il y a une étiquette Helm, Astra Trident a été installée à l'aide d'Helm.

    • S'il n'y a pas d'étiquette Helm, Astra Trident a été installé manuellement à l'aide de l'opérateur Trident.

Étape 3 : sélectionnez une méthode de mise à niveau

Il existe deux méthodes pour mettre à niveau Astra Trident.

Quand mettre à niveau à l'aide de l'opérateur

  • Vous avez installé Astra Trident à l'origine à l'aide de l'opérateur ou de tridentctl.

  • Vous avez désinstallé CSI Trident et les métadonnées de l'installation persistent.

  • Vous disposez d'une installation Astra Trident basée sur CSI. Toutes les versions de 19.07 sont basées sur CSI. Vous pouvez examiner les pods de votre espace de nom Trident pour vérifier votre version.

    • La dénomination des pods dans les versions antérieures à 23.01 utilise : trident-csi-*

    • Le nom de pod dans la version 23.01 et ultérieures utilise :

      • trident-controller-<generated id> pour le module de contrôleur

      • trident-node-<operating system>-<generated id> pour les pods de nœuds

      • trident-operator-<generated id> pour le boîtier de l'opérateur

Avertissement N'utilisez pas l'opérateur pour mettre à niveau Trident si vous utilisez un `etcd`Version Trident basée (19.04 ou version antérieure).

Quand effectuer une mise à niveau à l'aide de tridentctl

C'est possible Si vous avez installé Astra Trident à l'origine à l'aide de `tridenctl'.

tridentctl Est la méthode classique d'installation d'Astra Trident et fournit le plus d'options pour ceux qui nécessitent une personnalisation complexe. Pour plus de détails, reportez-vous à "Choisissez votre méthode d'installation".

Modifications apportées à l'opérateur

La version 21.01 d'Astra Trident a apporté des modifications architecturales au conducteur :

  • L'opérateur est maintenant cluster-scoped. Les instances précédentes de l'opérateur Trident (versions 20.04 à 20.10) étaient namespace-scoped. Un opérateur à périmètre de bloc d'instruments est avantageux pour les raisons suivantes :

    • Responsabilité des ressources : l'opérateur gère désormais les ressources associées à une installation d'Astra Trident au niveau du cluster. Dans le cadre de l'installation d'Astra Trident, l'opérateur crée et gère plusieurs ressources à l'aide de ownerReferences. Maintenance ownerReferences Sur les ressources cluster-scoped peut générer des erreurs sur certains distributeurs Kubernetes tels qu'OpenShift. Ceci est réduit avec un opérateur à périmètre sur le cluster. Pour l'auto-rétablissement et l'application de correctifs des ressources Trident, c'est une condition essentielle.

    • Nettoyage pendant la désinstallation : une suppression complète d'Astra Trident nécessite la suppression de toutes les ressources associées. Un opérateur de type espace de noms peut rencontrer des problèmes lors de la suppression des ressources du cluster (telles que clusterRole, ClusterRoleBinding et PodSecurityPolicy) et entraîner un nettoyage incomplet. Un opérateur à périmètre de cluster élimine ce problème. Les utilisateurs peuvent désinstaller complètement Astra Trident et procéder à un nouveau battage si nécessaire.

  • TridentProvisioner est maintenant remplacé par TridentOrchestrator Ressource personnalisée utilisée pour installer et gérer Astra Trident. En outre, un nouveau champ est introduit dans le TridentOrchestrator spécifications Les utilisateurs peuvent spécifier que le namespace Trident doit être installé/mis à niveau à partir du à l'aide du spec.namespace légale. Vous pouvez voir un exemple "ici".