Gerät aktualisieren und patchen

Auf dieser Seite wird beschrieben, wie Sie Ihr Air-Gap-Gerät für Google Distributed Cloud (GDC) aktualisieren und patchen.

Vorbereitung auf das Upgrade

Prüfen Sie vor dem Upgrade, ob Sie die in diesem Abschnitt aufgeführten Anforderungen erfüllen.

Hinweise

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

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

  1. Laden Sie die gdcloud-CLI-Tools herunter.
  2. Installieren Sie die gdcloud-Befehlszeilentools.
  3. Aktualisieren Sie die gdcloud-Befehlszeilentools nach Bedarf.
  4. Prüfen Sie, ob der docker-credential-gdcloud vorhanden ist.

Artefakte auf den Upgrade-Computer übertragen

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

So übertragen Sie die Artefakte auf den Laptop, den Sie für das Update und die Patch-Upgrades verwenden:

  1. Paket basierend auf der ausgewählten Patchversion herunterladen:

    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 Updatepaket 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 in Schritt 1 auf Ihren USB-Stick heruntergeladene Verzeichnis gdch auf den Computer für das Upgrade 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.

    Packen Sie das Paket aus:

    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 im Pfad /root/gdch/full-release-x.x.x-gdch.x entpackt.

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

    /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 des Appliance-Administrators:

      kubectl --kubeconfig=$KUBECONFIG create clusterrolebinding upgrade-admin-te-initial-user --role=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
      
    • Administrator für die Verwaltung von Systemartefakten:

       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
      
    • Administrator für Secrets für die Verwaltung von Systemartefakten:

       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
      
    • Debugger aktualisieren:

      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. Konfigurieren Sie Docker:

    gdcloud auth configure-docker
    

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.

Der Befehl führt die folgenden Schritte aus:

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

Der Befehl führt die Updates sequenziell aus und wartet, bis jeder Schritt abgeschlossen ist. Nachdem Sie die Schritte ausgeführt haben und das Upgrade erfolgreich war, wird eine Meldung wie die folgende angezeigt:

The GDC appliance upgrade completed successfully