Esegui l'upgrade dei cluster

Quando installi una nuova versione di bmctl, puoi eseguire l'upgrade dei cluster esistenti creati con una versione precedente. L'upgrade di un cluster alla versione più recente di Cluster Anthos su Bare Metal offre ulteriori funzionalità e correzioni al cluster. Inoltre, garantisce che il cluster rimanga supportato. Puoi eseguire l'upgrade di cluster di amministrazione, ibridi, autonomi o utente con il comando bmctl upgrade cluster.

Considerazioni sull'upgrade

Le seguenti sezioni descrivono le regole e le best practice da considerare prima di eseguire l'upgrade di un cluster.

Funzionalità di anteprima

Le funzionalità di anteprima sono soggette a modifica e vengono fornite solo a scopo di test e valutazione. Non utilizzare le funzionalità di anteprima nei cluster di produzione. Non garantiamo che sia possibile eseguire l'upgrade dei cluster che utilizzano le funzionalità di anteprima. In alcuni casi, blocchiamo esplicitamente gli upgrade per i cluster che utilizzano le funzionalità di anteprima.

Per informazioni sull'interruzione delle modifiche relative all'upgrade, consulta le note di rilascio.

SELinux

Se vuoi abilitare SELinux per proteggere i container, devi assicurarti che sia abilitato in modalità Enforced su tutte le macchine host. A partire da Cluster Anthos on bare metal release 1.9.0 o versioni successive, puoi abilitare o disabilitare SELinux prima o dopo la creazione del cluster o gli upgrade del cluster. SELinux è abilitato per impostazione predefinita su Red Hat Enterprise Linux (RHEL) e CentOS. Se SELinux è disabilitato sulle macchine host o se non sei sicuro, consulta Proteggere i container tramite SELinux per istruzioni su come abilitarlo.

Cluster Anthos on bare metal supporta SELinux solo nei sistemi RHEL e CentOS.

Regole di versione per gli upgrade

Quando scarichi e installi una nuova versione di bmctl, puoi eseguire l'upgrade dei tuoi cluster di amministrazione, ibridi, autonomi e creati o aggiornati con una versione precedente di bmctl. Non è possibile eseguire il downgrade dei cluster a una versione precedente.

Puoi eseguire l'upgrade di un cluster solo a una versione che corrisponde alla versione di bmctl in uso. Ciò significa che se utilizzi la versione 1.11.8 di bmctl, puoi eseguire l'upgrade di un cluster solo alla versione 1.11.8.

Upgrade della versione patch

Per una determinata versione secondaria, puoi eseguire l'upgrade a qualsiasi versione patch superiore. Ciò significa che puoi eseguire l'upgrade di un cluster di versione 1.11.X alla versione 1.11.Y purché Y sia maggiore di X. Ad esempio, puoi eseguire l'upgrade da 1.10.0 a 1.10.1 e da 1.10.1 a 1.10.3. Ti consigliamo di eseguire l'upgrade alla versione più recente della patch ogni volta che è possibile per assicurarti che i cluster dispongano delle correzioni di sicurezza più recenti.

Upgrade della versione secondaria

Puoi eseguire l'upgrade dei cluster da una versione secondaria a quella successiva, indipendentemente dalla versione della patch. In questo modo puoi eseguire l'upgrade da 1.N.X a 1.N+1.Y, dove 1.N.X è la versione del cluster e N+1 è la successiva versione secondaria disponibile. In questo caso, le versioni delle patch X e Y non influiscono sulla logica di upgrade. Ad esempio, puoi eseguire l'upgrade da 1.10.3 a 1.11.8.

Non puoi saltare le versioni secondarie durante l'upgrade dei cluster. Se tenti di eseguire l'upgrade a una versione secondaria con due o più versioni secondarie di versione superiore rispetto alla versione del cluster, bmctl genera un errore. Ad esempio, non puoi eseguire l'upgrade di un cluster versione 1.9.0 alla versione 1.11.0.

Un cluster di amministrazione può gestire i cluster utente che si trovano nella stessa o precedente versione secondaria. I cluster utente gestiti non possono essere più di una versione secondaria rispetto al cluster di amministrazione, quindi prima di eseguire l'upgrade di un cluster di amministrazione a una nuova versione secondaria, assicurati che tutti i cluster utente gestiti abbiano la stessa versione secondaria del cluster di amministrazione.

Gli esempi nelle seguenti istruzioni di upgrade mostrano il processo di upgrade dalla versione 1.10.2 ai cluster Anthos su Bare Metal 1.11.8.

Densità dei pod

Cluster Anthos on bare metal supporta la configurazione di un massimo di 250 pod per nodo con nodeConfig.PodDensity.MaxPodsPerNode. Puoi configurare la densità dei pod solo durante la creazione del cluster. Non puoi aggiornare le impostazioni di densità dei pod per i cluster esistenti.

Problemi noti

Per informazioni sui potenziali problemi relativi agli upgrade dei cluster, consulta la pagina relativa all'upgrade dei cluster Anthos su Bare Metal nella pagina Problemi noti.

Eseguire l'upgrade di cluster di amministrazione, autonomi, ibridi o utente

Quando scarichi e installi una nuova versione di bmctl, puoi eseguire l'upgrade dei tuoi cluster di amministrazione, ibridi, autonomi e creati con una versione precedente. Per una determinata versione di bmctl, è possibile eseguire l'upgrade di un cluster alla stessa versione.

Per prima cosa, scarica la versione più recente di bmctl, quindi modifica i file di configurazione del cluster appropriati, quindi invia il comando bmctl upgrade cluster per completare l'upgrade.

  1. Scarica l'ultima versione di bmctl dal bucket Cloud Storage e utilizza chmod per concedere a bmctl le autorizzazioni di esecuzione per tutti gli utenti:

    gsutil cp gs://anthos-baremetal-release/bmctl/1.11.8/linux-amd64/bmctl bmctl
    chmod a+x bmctl
    
  2. Modifica il file di configurazione del cluster per cambiare la versione del cluster Anthos clusters on bare metal da 1.10.2 a 1.11.8. Di seguito è riportato un esempio di configurazione di un cluster di amministrazione:

    ---
    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.10.2 to 1.11.8, shown below
      anthosBareMetalVersion: 1.11.8
    
  3. Quando esegui l'upgrade dei cluster a 1.11.8, devi registrare i cluster con Connect al tuo progettoflotte, se non sono già stati registrati.

    1. Creare manualmente gli account di servizio e recuperare i file della chiave JSON come descritto in Configurare gli account di servizio per l'utilizzo con Connect nella pagina Abilitazione dei servizi e degli account di servizio Google.
    2. Fai riferimento alle chiavi JSON scaricate nei campi gkeConnectAgentServiceAccountKeyPath e gkeConnectRegisterServiceAccountKeyPath associati del file di configurazione del cluster.
  4. Utilizza il comando bmctl upgrade cluster per completare l'upgrade:

    bmctl upgrade cluster -c CLUSTER_NAME --kubeconfig ADMIN_KUBECONFIG
    

    Sostituisci quanto segue:

    • CLUSTER_NAME: il nome del cluster di cui eseguire l'upgrade.
    • ADMIN_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione.

    I controlli preflight vengono eseguiti come parte dell'upgrade del cluster per convalidare lo stato del cluster e l'integrità del nodo. L'upgrade del cluster non viene eseguito se i controlli preflight non sono riusciti.