Cette tâche décrit comment mettre à jour la version de Version de Tanzu Kubernetes pour un cluster TKG en modifiant le manifeste du cluster TKG.

Vous pouvez initier une mise à jour continue d'un cluster TKGS en mettant à niveau la version de Version de Tanzu Kubernetes à l'aide de la commande kubectl edit.
Note : Vous ne pouvez pas utiliser la commande kubectl apply pour mettre à jour la version de TKR pour un cluster déployé.

Conditions préalables

Cette tâche nécessite l'utilisation de la Commande d'édition de kubectl. Cette commande 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. Pour configurer un éditeur pour kubectl afin de pouvoir exécuter la commande kubectl edit, reportez-vous à la section #GUID-104C2238-1D65-402A-85F0-742DAB49AB1A.

Procédure

  1. Authentifiez-vous avec le Superviseur.
    kubectl vsphere login --server=IP-ADDRESS --vsphere-username USERNAME
  2. Changez de contexte pour utiliser l'Espace de noms vSphere dans lequel le cluster de charge de travail cible est provisionné.
    kubectl config use-context SUPERVISOR-NAMESPACE
  3. Procurez-vous le cluster TKG cible et la version.
    Cluster v1alpha3 :
    kubectl get tanzukubernetescluster
    Cluster v1beta1 :
    kubectl get cluster
  4. Répertoriez les versions de Tanzu Kubernetes disponibles.
    kubectl get tanzukubernetesreleases
  5. Exécutez la commande suivante pour modifier le manifeste du cluster.
    Cluster v1alpha3 :
    kubectl edit tanzukubernetescluster/CLUSTER-NAME
    Cluster v1beta1 :
    kubectl edit cluster/CLUSTER-NAME
  6. Modifiez le manifeste en mettant à jour la chaîne de la Version de Tanzu Kubernetes.
    Par exemple, pour un cluster v1alpha3, passez de TKR v1.25.7 :
    topology:
      controlPlane:
       replicas: 1
       storageClass: vsan-default-storage-policy
       tkr:
        reference:
         name: v1.25.7---vmware.3-fips.1-tkg.1
       vmClass: guaranteed-large
      nodePools:
      - name: worker-tkg-pool01
       replicas: 3
       storageClass: vsan-default-storage-policy
       tkr:
        reference:
         name: v1.25.7---vmware.3-fips.1-tkg.1
       vmClass: guaranteed-large
       volumes:
       - capacity:
         storage: 128Gi
        mountPath: /var/lib/containerd
        name: containerd
    À TKR v1.26.5 :
    topology:
      controlPlane:
       replicas: 1
       storageClass: vsan-default-storage-policy
       tkr:
        reference:
         name: v1.26.5---vmware.2-fips.1-tkg.1
       vmClass: guaranteed-large
      nodePools:
      - name: worker-tkg-pool01
       replicas: 3
       storageClass: vsan-default-storage-policy
       tkr:
        reference:
         name: v1.26.5---vmware.2-fips.1-tkg.1
       vmClass: guaranteed-large
       volumes:
       - capacity:
         storage: 128Gi
        mountPath: /var/lib/containerd
        name: containerd
    Note : Le plan de contrôle et les nœuds worker doivent avoir la même version de TKR. Vous pouvez mettre à jour toutes les instances de TKr ou mettre à jour la version du plan de contrôle et supprimer le nom TKR des nœuds worker.
    Par exemple, pour un cluster v1beta1 remplacez TKR v1.25.7 :
    apiVersion: cluster.x-k8s.io/v1beta1
      ...
      topology:
        class: tanzukubernetescluster
        version: v1.25.7---vmware.3-fips.1-tkg.1
        controlPlane:
          replicas: 3
        workers:
          ...
        variables:
          ...
     
    À TKR v1.26.5 :
    apiVersion: cluster.x-k8s.io/v1beta1
      ...
      topology:
        class: tanzukubernetescluster
        version: v1.26.5---vmware.2-fips.1-tkg.1
        controlPlane:
          replicas: 3
        workers:
          ...
        variables:
          ...
  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 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/tkg-cluster-1
    tanzukubernetescluster.run.tanzu.vmware.com/tkg-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 #GUID-104C2238-1D65-402A-85F0-742DAB49AB1A.
  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.26.5---vmware.2-fips.1-tkg.1  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.26.5---vmware.2-fips.1-tkg.1   22h   running