Upgrade di Cluster Anthos su Bare Metal

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 dei cluster di amministrazione, ibrido, autonomo 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 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 attivare SELinux per proteggere i tuoi container, devi assicurarti che SELinux sia abilitato in modalità Enforced su tutte le tue macchine host. A partire dai cluster Anthos su Bare Metal versione 1.9.0 o 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 non ne hai la certezza, consulta Sicurezza dei container tramite SELinux per le istruzioni su come abilitarlo.

I cluster Anthos su Bare Metal supportano SELinux solo in 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 amministrativi, ibridi, autonomi e di utenti creati o aggiornati con una versione precedente di bmctl. Impossibile 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. In altre parole, se utilizzi la versione 1.10.8 di bmctl, puoi eseguire l'upgrade di un cluster solo alla versione 1.10.8.

Upgrade della versione della patch

Per una determinata versione secondaria, puoi eseguire l'upgrade a qualsiasi versione patch superiore. In altre parole, puoi eseguire l'upgrade di un cluster di versione 1.10.X alla versione 1.10.Y purché Y sia maggiore di X. Ad esempio, puoi eseguire l'upgrade da 1.9.0 a 1.9.1 e da 1.9.1 a 1.9.3. Ti consigliamo di eseguire l'upgrade alla versione più recente della patch, quando possibile, per garantire che i tuoi cluster dispongano delle ultime correzioni relative alla sicurezza.

Upgrade della versione secondaria

Puoi eseguire l'upgrade dei cluster da una versione secondaria a quella successiva, indipendentemente dalla versione della patch. In altre parole, puoi eseguire l'upgrade da 1.N.X a 1.N+1.Y, dove 1.N.X è la versione del tuo cluster e N+1 è la successiva versione secondaria disponibile. Le versioni della patch, X e Y, in questo caso non influiscono sulla logica di upgrade. Ad esempio, puoi eseguire l'upgrade da 1.9.3 a 1.10.8.

Non puoi saltare le versioni secondarie quando esegui l'upgrade dei cluster. Se provi a eseguire l'upgrade a una versione secondaria di almeno due versioni secondarie rispetto alla versione del cluster, bmctl emette un errore. Ad esempio, non puoi eseguire l'upgrade di un cluster di versione 1.8.0 alla versione 1.10.0.

Un cluster di amministrazione può gestire i cluster utente che si trovano nella stessa versione precedente o 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 di utenti gestiti si trovino nella stessa versione secondaria del cluster di amministrazione.

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

Densità pod

I cluster Anthos su Bare Metal supportano 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 Eseguire l'upgrade dei cluster Anthos su Bare Metal nella pagina Problemi noti.

Eseguire l'upgrade dei cluster di amministrazione, autonomi, ibridi o degli utenti

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

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

  1. Scarica la versione più recente 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.10.8/linux-amd64/bmctl bmctl
    chmod a+x bmctl
    
  2. Modifica il file di configurazione del cluster per cambiare la versione del cluster Anthos su Bare Metal da 1.9.2 a 1.10.8. Di seguito è riportato un esempio di configurazione del 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.9.2 to 1.10.8, shown below
      anthosBareMetalVersion: 1.10.8
    
  3. Quando esegui l'upgrade dei cluster a 1.10.8, devi registrare i cluster con Connect to il tuo progetto, se non sono già stati registrati.

    1. Crea manualmente gli account di servizio e recupera 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 preliminari vengono eseguiti come parte dell'upgrade del cluster per convalidare lo stato del cluster e l'integrità del nodo. L'upgrade del cluster non procede se i controlli preliminari non hanno esito positivo.