Mettre à niveau les clusters Anthos sur Bare Metal

Mettre à niveau les clusters Anthos sur Bare Metal

Lorsque vous installez une nouvelle version de bmctl, vous pouvez mettre à niveau les clusters existants créés avec une version antérieure. La mise à niveau d'un cluster vers la dernière version des clusters Anthos sur bare metal offre des fonctionnalités et des correctifs supplémentaires à votre cluster. Cela garantit également que votre cluster reste compatible. Vous pouvez mettre à niveau des clusters d'administrateur, hybrides, autonomes ou d'utilisateur à l'aide de la commande bmctl upgrade cluster.

Les vérifications préliminaires sont exécutées avant une mise à niveau du cluster pour valider l'état du cluster et des nœuds.

Les exemples suivants montrent le processus de mise à niveau de la version initiale (1.6.0) vers la version 1.6.1 des clusters Anthos sur Bare Metal.

Vous pouvez passer de la version 1.6.1 à 1.6.2 de la même manière. Les mises à niveau non séquentielles (1.6.0 vers 1.6.2) sont également acceptées.

Mettre à niveau des clusters Anthos sur Bare Metal d'administrateur, autonomes ou hybrides

Lorsque vous téléchargez et installez une nouvelle version de bmctl, vous pouvez mettre à niveau vos clusters d'administrateur, hybrides et autonomes créés avec une version antérieure. Pour une version donnée de bmctl, les clusters ne peuvent être mis à niveau que vers la même version.

Pour commencer, téléchargez le fichier bmctl le plus récent, modifiez les fichiers de configuration de cluster appropriés, puis exécutez la commande bmctl upgrade cluster pour terminer la mise à niveau.

  1. Téléchargez la dernière version de bmctl depuis le bucket Cloud Storage :
    gsutil cp gs://anthos-baremetal-release/bmctl/1.6.2/linux-amd64/bmctl bmctl
    chmod a+x bmctl
    
  2. Modifiez le fichier de configuration YAML du cluster afin de modifier la version du cluster Anthos sur Bare Metal (passage de la version 1.6.1 à la version 1.6.2). Voici un exemple issu d'une configuration de cluster d'administrateur :
  3. ---
    apiVersion: baremetal.cluster.gke.io/v1
    kind: Cluster
    metadata:
      name: cluster1
      namespace: cluster-cluster1
    spec:
      # Cluster type. This can be:
      #   1) admin:  to create an admin cluster. This can later be used to create user clusters.
      #   2) user:   to create a user cluster. Requires an existing admin cluster.
      #   3) hybrid: to create a hybrid cluster that runs admin cluster components and user workloads.
      #   4) standalone: to create a cluster that manages itself, runs user workloads, but does not manage other clusters.
      type: admin
      # Anthos cluster version.
      # Change the following line from 1.6.0 to 1.6.1, shown below
      anthosBareMetalVersion: 1.6.1
  4. Utilisez la commande bmctl upgrade cluster pour effectuer la mise à niveau, où CLUSTER_NAME est le nom de votre cluster et ADMIN_KUBECONFIG spécifie le chemin d'accès au fichier kubeconfig du cluster d'administrateur :
  5. bmctl upgrade cluster -c CLUSTER_NAME --kubeconfig ADMIN_KUBECONFIG
    

Mettre à niveau un cluster d'utilisateur

Une fois que vous avez mis à niveau un cluster d'administrateur, hybride ou autonome, vous pouvez mettre à niveau le cluster d'utilisateur qu'il gère.

Commencez par modifier le fichier de configuration de cluster d'utilisateur approprié, puis exécutez la commande kubectl apply pour appliquer le fichier de configuration modifié et terminer la mise à niveau.

  1. Modifiez le fichier de configuration YAML du cluster d'utilisateur afin de modifier la version du cluster Anthos sur Bare Metal (passage de la version 1.6.0 à la version 1.6.1).
  2. ---
    apiVersion: baremetal.cluster.gke.io/v1
    kind: Cluster
    metadata:
      name: cluster1
      namespace: cluster-cluster1
    spec:
      # Cluster type. This can be:
      #   1) admin:  to create an admin cluster. This can later be used to create user clusters.
      #   2) user:   to create a user cluster. Requires an existing admin cluster.
      #   3) hybrid: to create a hybrid cluster that runs admin cluster components and user workloads.
      #   4) standalone: to create a cluster that manages itself, runs user workloads, but does not manage other clusters.
      type: user
      # Anthos cluster version.
      # Change the following line from 1.6.0 to 1.6.1, shown below
      anthosBareMetalVersion: 1.6.1
  3. Exécutez la commande kubectl pour appliquer la configuration modifiée du cluster d'utilisateur et créer le cluster :
  4.   kubectl --kubeconfig ADMIN_KUBECONFIG apply -f USER_CLUSTER_CONFIG
      
    ADMIN_KUBECONFIG spécifie le chemin d'accès au fichier kubeconfig du cluster d'administrateur, et USER_CLUSTER_CONFIG spécifie le chemin d'accès au fichier YAML du cluster utilisateur que vous avez modifié dans la section précédente. Par exemple, pour un cluster d'administrateur nommé admin et une configuration de cluster d'utilisateur nommée user1, la commande est la suivante :
    kubectl --kubeconfig bmctl-workspace/admin/admin-kubeconfig apply /
      -f bmctl-workspace/user1/user1.yaml
    

Vérifier la mise à niveau du cluster d'utilisateur

Pour vérifier la version du cluster d'utilisateur après une mise à niveau, exécutez la commande kubectl get pour renvoyer la version.

Par exemple, pour vérifier que le cluster est bien en version 1.6.1 après la mise à niveau depuis la version 1.6.0, exécutez la commande suivante :

kubectl get cluster.baremetal.cluster.gke.io -n cluster-USER_CLUSTER_NAME \
  -o jsonpath='{.status.anthosBareMetalVersion}' --kubeconfig ADMIN_KUBECONFIG

Où :

  • ADMIN_KUBECONFIG spécifie le chemin d'accès au fichier kubeconfig du cluster d'administrateur.
  • USER_CLUSTER_NAME est le nom de votre cluster d'utilisateur.

Si la mise à niveau a réussi, la commande renvoie le numéro de la version mise à niveau. Notez qu'une mise à niveau peut prendre jusqu'à 30 minutes.