Mettez à jour un cluster Tanzu Kubernetes en mettant un niveau la version de Version de Tanzu Kubernetes.

Vous pouvez créer une mise à jour continue d'un cluster Tanzu Kubernetes en mettant à niveau la Version de Tanzu Kubernetes. La manière dont vous procédez diffère selon la version de l'API du Service Tanzu Kubernetes Grid que vous utilisez.
Version d'API TKGS Méthode de mise à jour de la version
API v1alpha2 Mettez à jour la chaîne TKR NAME dans les propriétés spec.topology.controlPlane.tkr.refernece.name et spec.topology.nodePools[*].tkr.reference.name du manifeste du cluster. Reportez-vous à la section Mise à jour d'une version de Tanzu Kubernetes après la conversion de la spécification de cluster vers l'API TKGS v1alpha2.
API v1alpha1 Mettez à jour la version DISTRIBUTION dans les propriétés spec.distribution.version et spec.distribution.fullVersion du manifeste du cluster. Voir ci-dessous.

Conditions préalables

Vérifiez que les conditions préalables à la mise à jour des clusters Tanzu Kubernetes sont remplies. Reportez-vous à la section Mettre à jour les clusters Tanzu Kubernetes.

Cette tâche utilise la commande kubectl edit tanzukubernetescluster/CLUSTER-NAME pour mettre à jour le manifeste du cluster. La commande kubectl edit ouvre le manifeste du cluster dans l'éditeur de texte défini par votre variable d'environnement KUBE_EDITOR ou EDITOR. Lorsque vous enregistrez le fichier, le cluster est mis à jour avec les modifications. Reportez-vous à la section Spécifier un éditeur de texte par défaut pour Kubectl.

Procédure

  1. Authentifiez-vous avec le Cluster superviseur. Reportez-vous à la section Se connecter à Cluster superviseur en tant qu'utilisateur vCenter Single Sign-On.
    kubectl vsphere login --server=IP-ADDRESS --vsphere-username USERNAME
  2. Changez de contexte pour utiliser l'Espace de noms vSphere dans lequel le cluster Tanzu Kubernetes cible est provisionné.
    kubectl config use-context SUPERVISOR-NAMESPACE
  3. Obtenez le cluster et la version de l'instance cible de Tanzu Kubernetes.
    kubectl get tanzukubernetescluster
    Par exemple, le résultat à l'aide de l'API TKGS v1alpha2 :
    kubectl get tanzukubernetescluster
    NAMESPACE        NAME            CONTROL PLANE   WORKER   TKR NAME                             AGE    READY   TKR COMPATIBLE   UPDATES AVAILABLE
    tkgs-cluster-1   test-cluster    3               3        v1.21.2---vmware.1-tkg.1.ee25d55     38h    True    True             [1.21.2+vmware.1-tkg.1.ee25d55]
    Par exemple, le résultat à l'aide de l'API TKGS v1alpha1 :
    kubectl get tanzukubernetescluster
    NAME             CONTROL PLANE   WORKER   DISTRIBUTION                     AGE   PHASE
    tkgs-cluster-1   3               3        v1.19.16+vmware.1-tkg.1.df910e2  19h   running
  4. Répertoriez les versions de Tanzu Kubernetes disponibles.
    kubectl get tanzukubernetesreleases
  5. Exécutez la commande suivante pour modifier le manifeste du cluster.
    kubectl edit tanzukubernetescluster/CLUSTER-NAME
  6. Modifiez le manifeste en mettant à jour la Version de Tanzu Kubernetes. La manière dont vous procédez diffère selon la version de l'API TKGS que vous utilisez.
    Si vous utilisez l’API TKGS v1alpha2, mettez à jour la chaîne TKR NAME. Reportez-vous à la section Mise à jour d'une version de Tanzu Kubernetes après la conversion de la spécification de cluster vers l'API TKGS v1alpha2.
    Si vous utilisez l'API TKGS v1alpha1, mettez à jour le manifeste à partir de, par exemple :
    spec:
      distribution:
        fullVersion: v1.19.16+vmware.1-tkg.1.df910e2
        version: v1.19.16
    En utilisant, par exemple :
    spec:
      distribution:
        fullVersion: null
        version: v1.20.12
    Note : Si vous utilisez l'API TKGS v1alpha1, vous pouvez spécifier la version complète ou utiliser un raccourci de version, tel que version: v1.20.12, qui est résolue en l'image la plus récente correspondant à cette version de correctif, ou version: v1.20, qui est résolue en la version de correctif correspondante la plus récente. La version résolue s'affiche en tant que fullVersion dans le manifeste du cluster. Pour effectuer une mise à niveau de la version à l'aide d'un raccourci, vous devez effacer ou annuler la fullVersion pour éviter une éventuelle discordance de version pendant la découverte.
  7. Enregistrez les modifications que vous avez apportées au fichier de manifeste.
    Lorsque vous enregistrez le fichier, kubectl applique les modifications au cluster. En arrière-plan, le service de machine virtuelle sur le cluster superviseur provisionne le nouveau nœud worker.
  8. Vérifiez que kubectl confirme que les modifications apportées au manifeste ont été enregistrées.
    kubectl edit tanzukubernetescluster/tkgs-cluster-1
    tanzukubernetescluster.run.tanzu.vmware.com/tkgs-cluster-1 edited
    Note : Si vous recevez une erreur ou si kubectl ne confirme pas la modification du manifeste du cluster, assurez-vous d'avoir configuré votre éditeur de texte par défaut à l'aide de la variable d'environnement KUBE_EDITOR. Reportez-vous à la section Spécifier un éditeur de texte par défaut pour Kubectl.
  9. Vérifiez que le cluster est en mise à jour.
    kubectl get tanzukubernetescluster
    NAME             CONTROL PLANE   WORKER   DISTRIBUTION                     AGE   PHASE
    tkgs-cluster-1   3               3        v1.20.12+vmware.1-tkg.1.b9a42f3  21h   updating
  10. Vérifiez que le cluster est mis à jour.
    kubectl get tanzukubernetescluster
    NAME             CONTROL PLANE   WORKER   DISTRIBUTION                     AGE   PHASE
    tkgs-cluster-1   3               3        v1.20.12+vmware.1-tkg.1.b9a42f3   22h   running