Aggiornare o eseguire l'upgrade di un cluster a un cluster avanzato

Questo documento spiega come aggiornare o eseguire l'upgrade di un cluster alla versione 1.32 a un cluster avanzato.

Prerequisiti

  • La versione di gkectl deve essere la stessa della versione del cluster di destinazione.

    • Se necessario, consulta Scaricare gkectl per ottenere una versione supportata di gkectl.
  • Esegui sempre la diagnosi del cluster prima di aggiornarlo o eseguirne l'upgrade.

  • Assicurati che i cluster utilizzino solo le funzionalità consigliate.

  • Prima di iniziare l'aggiornamento o l'upgrade, verifica che i cluster non utilizzino funzionalità non supportate dai cluster avanzati. Se sono attive funzionalità non supportate, disattivale utilizzando l'aggiornamento prima.

    • Sebbene i cluster utente ad alta disponibilità siano obbligatori nei cluster avanzati, puoi comunque aggiornare o eseguire l'upgrade di un cluster utente non ad alta disponibilità a un cluster avanzato ad alta disponibilità seguendo questa guida.
  • Prima di aggiornare o eseguire l'upgrade di qualsiasi cluster utente, devi aggiornare o eseguire l'upgrade del cluster di amministrazione a un cluster avanzato.

  • Informazioni sull'installazione di cert-manager: cert-manager viene installato automaticamente sui cluster avanzati. Quando esegui la migrazione da un cluster non avanzato a un cluster avanzato, cert-manager integrato sostituisce automaticamente tutte le versioni di cert-manager installate dal cliente. Prima di eseguire l'aggiornamento o l'upgrade ai cluster avanzati, assicurati di non aver applicato configurazioni o funzionalità personalizzate critiche a cert-manager esistente. Per ulteriori informazioni, consulta Eseguire l'upgrade a cert-manager incluso nei cluster avanzati.

Aggiornare o eseguire l'upgrade del cluster di amministrazione a un cluster avanzato

Aggiorna

  1. Prepara il cluster avanzato:

    gkectl prepare \
        --bundle-path BUNDLE_PATH \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --advanced-cluster
    

    Sostituisci quanto segue:

    • BUNDLE_PATH: il percorso del file del bundle. Questo file si trova nella workstation di amministrazione in /var/lib/gke/bundles/. Ad esempio:

      /var/lib/gke/bundles/gke-onprem-vsphere-1.32.0-gke.1085-full.tgz
      
    • ADMIN_CLUSTER_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione.

  2. Imposta enableAdvancedCluster nel tuo file di configurazione del cluster di amministrazione su true.

  3. Aggiorna il cluster di amministrazione al cluster avanzato:

    gkectl update admin \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --config ADMIN_CLUSTER_CONFIG \
        --reuse-bootstrap-cluster
    

    Sostituisci quanto segue:

    • ADMIN_CLUSTER_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione.
    • ADMIN_CLUSTER_CONFIG: il percorso del file di configurazione del cluster di amministrazione.

    Il comando ricreerà tutti i nodi nel cluster di amministrazione.

Esegui l'upgrade

  1. Se necessario , esegui l'upgrade della workstation di amministrazione.

  2. Prepara il cluster avanzato:

    gkectl prepare \
        --bundle-path BUNDLE_PATH \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --advanced-cluster
    

    Sostituisci quanto segue:

    • BUNDLE_PATH: il percorso del file del bundle. Questo file si trova nella workstation di amministrazione in /var/lib/gke/bundles/. Ad esempio:

      /var/lib/gke/bundles/gke-onprem-vsphere-1.32.0-gke.1085-full.tgz
      
    • ADMIN_CLUSTER_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione.

  3. Imposta enableAdvancedCluster nel tuo file di configurazione del cluster di amministrazione su true.

  4. Assicurati che il campo bundlepath nel file di configurazione del cluster di amministrazione corrisponda al percorso del bundle a cui vuoi eseguire l'upgrade.

  5. Esegui l'upgrade del cluster di amministrazione al cluster avanzato:

    gkectl upgrade admin \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --config ADMIN_CLUSTER_CONFIG \
        --reuse-bootstrap-cluster
    

    Sostituisci quanto segue:

    • ADMIN_CLUSTER_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione.
    • ADMIN_CLUSTER_CONFIG: il percorso del file di configurazione del cluster di amministrazione.

    Il comando eseguirà la ricreazione di tutti i nodi nel cluster di amministrazione. Con la strategia di deployment di ricreazione, i nodi vengono aggiornati uno alla volta. Durante l'upgrade del nodo, la VM viene eliminata e poi ricreata con la nuova versione.

Dopo aver aggiornato o eseguito l'upgrade del cluster di amministrazione a un cluster avanzato:

  • I cluster utente non avanzati esistenti continuano a funzionare normalmente.

  • Puoi creare solo cluster utente avanzati gestiti dal cluster di amministrazione avanzato.

Ti consigliamo di eseguire l'upgrade di tutti i cluster utente a cluster avanzati subito dopo per mantenere un ambiente coerente e completo.

Aggiornare o eseguire l'upgrade del cluster utente a un cluster avanzato

Aggiorna

  1. Se il control plane del cluster utente non è ad alta disponibilità:

    1. Modifica masterNode.replicas da 1 a 3.

    2. Aggiungi gli indirizzi IP statici per i nodi del control plane del cluster utente alla network.controlPlaneIPBlock.ips sezione.

  2. Prepara il cluster avanzato:

    gkectl prepare \
        --bundle-path BUNDLE_PATH \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --advanced-cluster
    

    Sostituisci quanto segue:

    • BUNDLE_PATH: il percorso del file del bundle. Questo file si trova nella workstation di amministrazione in /var/lib/gke/bundles/. Ad esempio:

      /var/lib/gke/bundles/gke-onprem-vsphere-1.32.0-gke.1085-full.tgz
      
    • ADMIN_CLUSTER_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione.

  3. Imposta enableAdvancedCluster nel tuo file di configurazione del cluster utente su true.

  4. Aggiorna il cluster utente al cluster avanzato:

    gkectl update cluster \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --config USER_CLUSTER_CONFIG
    

    Sostituisci quanto segue:

    • ADMIN_CLUSTER_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione.
    • USER_CLUSTER_CONFIG: il percorso del file di configurazione del cluster utente.

    Il comando eseguirà la ricreazione di tutti i nodi nel cluster utente. Con la strategia di deployment di ricreazione, i nodi vengono aggiornati uno alla volta. Durante l'aggiornamento del nodo, la VM viene eliminata e poi ricreata con la nuova configurazione.

Esegui l'upgrade

  1. Se il control plane del cluster utente non è ad alta disponibilità:

    1. Modifica masterNode.replicas da 1 a 3.

    2. Aggiungi gli indirizzi IP statici per i nodi del control plane del cluster utente alla network.controlPlaneIPBlock.ips sezione.

  2. Prepara il cluster avanzato:

    gkectl prepare \
        --bundle-path BUNDLE_PATH \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --advanced-cluster
    

    Sostituisci quanto segue:

    • BUNDLE_PATH: il percorso del file del bundle. Questo file si trova nella workstation di amministrazione in /var/lib/gke/bundles/. Ad esempio:

      /var/lib/gke/bundles/gke-onprem-vsphere-1.32.0-gke.1085-full.tgz
      
    • ADMIN_CLUSTER_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione.

  3. Imposta enableAdvancedCluster nel tuo file di configurazione del cluster utente su true.

  4. Assicurati che il campo gkeOnPremVersion nel file di configurazione del cluster utente corrisponda alla versione di destinazione dell'upgrade.

  5. Esegui l'upgrade del cluster utente al cluster avanzato:

    gkectl upgrade cluster \
        --kubeconfig ADMIN_CLUSTER_KUBECONFIG \
        --config USER_CLUSTER_CONFIG
    

    Sostituisci quanto segue:

    • ADMIN_CLUSTER_KUBECONFIG: il percorso del file kubeconfig del cluster di amministrazione.
    • USER_CLUSTER_CONFIG: il percorso del file di configurazione del cluster utente.

    Il comando ricreerà tutti i nodi nel cluster utente.

cert-manager incluso nei cluster avanzati

cert-manager è un componente obbligatorio gestito dal sistema nei cluster avanzati.

Se utilizzi cert-manager senza cluster avanzati, controlla quanto segue prima di eseguire l'upgrade ai cluster avanzati:

  • Non sono presenti configurazioni personalizzate o flag di funzionalità in cert-manager.
  • La versione di cert-manager è la stessa o una versione precedente della versione inclusa.

Compatibilità di Apigee hybrid

cert-manager incluso è completamente compatibile con i carichi di lavoro Apigee hybrid. Quando esegui l'upgrade a un cluster avanzato, il programma di installazione potrebbe avvisarti che l'installazione di cert-manager esistente verrà sostituita. Questo è un comportamento previsto che il sistema gestisce automaticamente.

Per garantire una transizione senza problemi per i carichi di lavoro Apigee:

  • Non disinstallare manualmente cert-manager esistente prima dell'upgrade.
  • Ripristina le personalizzazioni: se gestisci cert-manager utilizzando GitOps o hai applicato configurazioni personalizzate al deployment di cert-manager, devi ripristinare queste personalizzazioni o sospendere la sincronizzazione prima dell'upgrade per evitare la deriva della configurazione e potenziali pause dell'upgrade.

Funzionalità e limitazioni

Con cert-manager incluso puoi:

  • Creare e modificare le risorse Issuer e ClusterIssuer.
  • Creare e modificare le risorse dei certificati che fanno riferimento agli emittenti e ai tipi di emittenti standard.
  • Creare e modificare le risorse Kubernetes standard utilizzate da cert-manager.
  • Creare secret Kubernetes contenenti chiavi API e farvi riferimento negli emittenti.
  • Configurare gli emittenti in modo che utilizzino risolutori HTTP-01 o DNS-01 specifici.

Non puoi personalizzare quanto segue in cert-manager incluso:

  • Impostare i valori deployment o helm.
  • Aggiungere argomenti o flag della riga di comando al file binario cert-manager.
  • Modificare i limiti delle risorse o i selettori di nodi per i pod cert-manager.
  • Modificare la logica di installazione del software cert-manager.
  • Attivare le funzionalità sperimentali.
  • Forzare l'esecuzione dei pod del control plane cert-manager su nodi di infrastruttura specifici.

Se hai vincoli specifici che ti impediscono di utilizzare cert-managerincluso, contatta Google Cloud l'assistenza per ricevere aiuto con le opzioni di configurazione avanzate.

Versioni incluse

La tabella seguente elenca le versioni di cert-manager incluse per ogni versione di Google Distributed Cloud (solo software) per VMware.

Google Distributed Cloud (solo software) per VMware Versione di cert-manager inclusa
1.32 1.17
1.33 1.18
1.34 1.19

Differenze principali dopo il passaggio ai cluster avanzati

L'upgrade o l'aggiornamento del cluster a un cluster avanzato introduce diverse differenze principali rispetto ai cluster standard. Ecco le modifiche principali nei cluster avanzati:

  • Posizione delle risorse: le risorse di cluster e macchine non si trovano più nei cluster utente. Queste risorse si trovano esclusivamente all'interno del cluster di amministrazione.

  • NodeExternalIP: NodeExternalIP non è impostato sui nodi.

  • Installazione di cert-manager: cert-manager viene installato automaticamente sui cluster avanzati. Se hai installato cert-manager nel cluster, l'aggiornamento o l'upgrade al cluster avanzato lo sovrascrive con la versione del cluster avanzato.

Per una panoramica completa delle differenze tra le funzionalità, consulta la tabella di confronto delle funzionalità.