Gerät aktualisieren und patchen

Auf dieser Seite werden die Schritte zum Aktualisieren und Patchen Ihres Google Distributed Cloud (GDC) mit Air Gap-Appliance-Geräts beschrieben.

Vorbereitung auf das Upgrade

Achten Sie darauf, dass Sie die in diesem Abschnitt aufgeführten Anforderungen vor dem Upgrade erfüllen.

Hinweis

Prüfen Sie die Voraussetzungen für Laptops, um sicherzustellen, dass der Laptop, den Sie für die Update- und Patch-Upgrades verwenden, die physischen Spezifikationen und andere Anforderungen erfüllt.

Sie müssen zuerst die folgenden Aktionen in Bezug auf die gdcloud-Befehlszeilenschnittstellentools (CLI) ausführen:

  1. Herunterladen der gdcloud CLI-Tools.
  2. Installieren Sie die gdcloud CLI-Tools.
  3. Upgrade der gdcloud-CLI-Tools nach Bedarf
  4. Achten Sie darauf, dass docker-credential-gdcloud vorhanden ist.
  5. Prüfen Sie, ob auf dem HPE Chassis Manager die Firmwareversion 2.10.12 oder höher ausgeführt wird. Wenn Sie von einer früheren Firmwareversion aktualisieren, lesen Sie HPE Chassis Manager-Firmware aktualisieren.

Artefakte auf den Upgrade-Computer übertragen

Sie benötigen Zugriff auf den Cloud Storage-Bucket.

Führen Sie die folgenden Schritte aus, um die Artefakte auf den Laptop zu übertragen, den Sie für die Update- und Patch-Upgrades verwenden:

  1. Laden Sie das Paket basierend auf der ausgewählten Patch-Version herunter:

    VERSION=<x.x.x-gdch.yyy>
    RELEASE_SUFFIX="_te"
    DOWNLOADER=gdch-downloader-prod${RELEASE_SUFFIX}-$VERSION.sh
    gcloud storage cp "gs://$GCS_BUCKET/$VERSION/$DOWNLOADER" .
    gcloud storage cp "gs://$GCS_BUCKET/$VERSION/${DOWNLOADER}.sig" .
    
    PUBLIC_KEY=$(cat <<-PUBEND
    -----BEGIN PUBLIC KEY-----
    MFkwEwYHKoZIzj0CAQYIKoZIzj0DAQcDQgAEn46iVSyFXsvuKLZ4dVOr2AqlXDnR
    5cKztkpraexHDxn/ozq03EvrdkRmZkSACFfcaEFyitpraidgAx8sPjvzXQ==
    -----END PUBLIC KEY-----
    PUBEND
    )
    echo "${PUBLIC_KEY}" > "key.pub"
    DOWNLOADER=gdch-downloader-${PRODUCT}-$VERSION.sh
    
    gcloud storage cp "gs://${GCS_BUCKET:-private-cloud-release}/$VERSION/$DOWNLOADER*" .
       openssl dgst -sha256 -verify "key.pub" -signature "${DOWNLOADER}.sig" ${DOWNLOADER} && chmod +x $DOWNLOADER && ./$DOWNLOADER --skip-unzip
    

    Mit diesem Befehl werden das Update-Paket und das Downloader-Skript in das aktuelle Verzeichnis heruntergeladen, z. B. /home/download.

  2. Führen Sie tree -L 3 /home/download aus.

    Beispielausgabe:

    /home/download
    ├── gdch
    │   └── x.x.x-gdch.x
    │       ├── bootstrapper
    │       │   ├── bootstrapper.iso
    │       │   └── bootstrapper.iso.sig
    │       ├── gdch-prod_te-x.x.x-gdch.x-sbom.tar.gz
    │       ├── gdch-prod_te-x.x.x-gdch.x-sbom.tar.gz.sig
    │       ├── prod_te_gdch.tar.gz
    │       └── prod_te_gdch.tar.gz.sig
    ├── gdch-downloader-prod_te-x.x.x-gdch.x.sh
    ├── gdch-downloader-prod_te-x.x.x-gdch.x.sh.1.sig
    ├── gdch-downloader-prod_te-x.x.x-gdch.x.sh.sig
       └── key.pub
    
  3. Kopieren Sie das Update mit Ihrem USB-Laufwerk in die Air Gap-Umgebung.

    Kopieren Sie sowohl das Downloader-Skript als auch das gdch-Verzeichnis, das Sie in Schritt 1 auf Ihr USB-Laufwerk heruntergeladen haben, auf den Upgrade-Computer in der Air Gap-Umgebung.

  4. Prüfen Sie auf dem Upgrade-Computer den Inhalt und extrahieren Sie die Dateien mit denselben Informationen, die Sie zum Herunterladen des Pakets verwendet haben. Mit dem folgenden Code wird das Paket beispielsweise in das Verzeichnis /root kopiert.

    Entpacken Sie das Paket:

    VERSION=x.x.x-gdch.x
    PRODUCT=prod_te
    DOWNLOADER=gdch-downloader-${PRODUCT}-$VERSION.sh
    openssl dgst -sha256 -verify "key.pub" -signature "${DOWNLOADER}.sig" ${DOWNLOADER} && chmod +x $DOWNLOADER && ./$DOWNLOADER --skip-download
    

    Das Paket wird unter /root/gdch/full-release-x.x.x-gdch.x entpackt.

  5. Prüfen Sie, ob die Version mit der in VERSION festgelegten Version übereinstimmt:

    /root/gdch/full-release-x.x.x-gdch.x/gdcloud version
    

    Beispielausgabe:

    gdcloud version: 1.14.4-gdch.0
    

Authentifizieren

Informationen zum Authentifizieren mit Ihrem konfigurierten Identitätsanbieter und zum Anfordern einer kubeconfig-Datei für Ihre Nutzeridentität und Ihren Cluster finden Sie unter Authentifizieren.

  1. Melden Sie sich an und generieren Sie die kubeconfig-Dateien.

  2. Legen Sie die kubeconfig-Dateien als Umgebungsvariablen fest:

      export KUBECONFIG=ROOT_ADMIN_KUBECONFIG
      export MANAGEMENT_KUBECONFIG=MANAGEMENT_API_KUBECONFIG
    
  3. Fordern Sie die folgenden Rollen an:

    • Upgrade Appliance Admin:

      kubectl --kubeconfig=$KUBECONFIG create clusterrolebinding upgrade-admin-te-initial-user --clusterrole=upgrade-admin-te --user=keycloak-oidc-initial-user@example.com
      kubectl --kubeconfig=$MANAGEMENT_KUBECONFIG create clusterrolebinding upgrade-admin-te-initial-user --clusterrole=upgrade-admin-te --user=keycloak-oidc-initial-user@example.com
      
    • System Artifact Management Admin:

       kubectl --kubeconfig=$KUBECONFIG create rolebinding system-artifact-management-admin-initial-user --role=system-artifact-management-admin --user=keycloak-oidc-initial-user@example.com -n gpc-system
       kubectl --kubeconfig=$MANAGEMENT_KUBECONFIG create rolebinding system-artifact-management-admin-initial-user --role=system-artifact-management-admin --user=keycloak-oidc-initial-user@example.com -n gpc-system
      
    • System Artifact Management Secrets Admin:

       kubectl --kubeconfig=$KUBECONFIG create rolebinding system-artifact-management-secrets-admin-initial-user --role=system-artifact-management-secrets-admin --user=keycloak-oidc-initial-user@example.com -n anthos-creds
      
    • DNS Suffix Viewer:

       kubectl --kubeconfig=$MANAGEMENT_KUBECONFIG create rolebinding dnssuffix-viewer-initial-user --role=dnssuffix-viewer --user=keycloak-oidc-initial-user@example.com -n gpc-system
      
    • System Artifact Registry Monitor:

       kubectl --kubeconfig=$KUBECONFIG create clusterrolebinding sar-monitor-initial-user --clusterrole=sar-monitor --user=keycloak-oidc-initial-user@example.com
       kubectl --kubeconfig=$MANAGEMENT_KUBECONFIG create clusterrolebinding sar-monitor-initial-user --clusterrole=sar-monitor --user=keycloak-oidc-initial-user@example.com
      
    • Upgrade Debugger:

      kubectl --kubeconfig=$KUBECONFIG create clusterrolebinding upgrade-debugger-initial-user --clusterrole=upgrade-debugger --user=keycloak-oidc-initial-user@example.com
      
    • System Artifact Registry Debugger:

      kubectl --kubeconfig=$KUBECONFIG create clusterrolebinding sar-debugger-initial-user --clusterrole=sar-debugger --user=keycloak-oidc-initial-user@example.com
      
  4. Docker konfigurieren:

    gdcloud auth configure-docker --config-cert=true
    

Upgrade starten

Führen Sie die folgenden Schritte aus, um das Appliance-Upgrade zu starten:

gdcloud appliance upgrade 

Weitere Informationen finden Sie unter gdcloud appliance upgrade.

Mit dem Befehl werden die folgenden Schritte ausgeführt:

  1. Führt die Preflight-Prüfungen auf dem Upgrade-Computer aus.
  2. Führt die Preflight-Prüfungen für OTS-Speicher aus.
  3. Überträgt die Artefakte per Push in die Artifact Registry.
  4. Aktualisiert die Appliance-Software und -Firmware, einschließlich:
    1. GDC-Root-Administratorcluster.
    2. GDC-Dienste.
    3. Die Betriebssysteme der physischen und virtuellen Knoten.
    4. Der Switch.
    5. Speicher

Der Befehl führt die Updates sequenziell aus und wartet, bis jeder Schritt abgeschlossen ist. Wenn die Schritte abgeschlossen sind und das Upgrade erfolgreich war, wird eine Meldung ähnlich der folgenden angezeigt:

The GDC appliance upgrade completed successfully