Anmelden

Auf dieser Seite wird beschrieben, wie Sie in Google Distributed Cloud (GDC) Air-Gapped auf Ihre Arbeitslasten und Ressourcen zugreifen und diese verwalten. Darin wird beschrieben, wie Sie sich authentifizieren, kubeconfig-Dateien für zonale und globale Ressourcen generieren und Sitzungsaktivität verwalten. Wenn Sie diese Prozesse verstehen, können Sie einen sicheren und zuverlässigen Zugriff auf Ihre Projekte und Arbeitslasten gewährleisten.

Diese Seite richtet sich an Nutzer in der Gruppe „Plattformadministrator“ (z. B. IT-Administratoren) oder in der Gruppe „Anwendungsbediener“ (z. B. Anwendungsentwickler), die GDC-Ressourcen verwenden möchten. Weitere Informationen finden Sie unter Zielgruppen für die GDC-Dokumentation für Air-Gap-Umgebungen.

Sie können über die GDC Console, die gdcloud CLI oder die kubectl CLI auf Arbeitslasten zugreifen.

Konto für den Zugriff authentifizieren

So melden Sie sich in der GDC-Konsole oder in einem Cluster an:

Console

Öffnen Sie die folgende URL in einem neuen Browsertab, um auf die Benutzeroberfläche von Distributed Cloud zuzugreifen:

https://GDC_URL

Ersetzen Sie GDC_URL durch den Domainnamen, den Sie für den Zugriff auf Distributed Cloud verwenden und den der Infrastrukturoperator (IO) bereitstellt. Wenn Sie eine URL zum ersten Mal öffnen, werden Sie von Distributed Cloud zur Anmeldeseite Ihres Identitätsanbieters weitergeleitet, wenn der Infrastructure Operator (IO) die Seite konfiguriert hat.

Das folgende Bild zeigt beispielsweise die Anmeldung in der Console-UI für eine Organisation namens org-1:

Console-UI mit dem Begrüßungsbildschirm für das Projekt „org-1“

Befehlszeile

Wenn Sie sich in der gdcloud CLI anmelden, verwenden Sie den Befehl gdcloud auth login, um ein Konto in der gdcloud CLI zu authentifizieren. Die gcloud CLI verwendet dieses Hauptkonto zur Authentifizierung und Autorisierung, um Google Cloud -Ressourcen und -Dienste zu verwalten.

Bevor Sie sich anmelden, müssen Sie Folgendes tun:

  • Laden Sie die Binärdatei für die gdcloud CLI herunter und installieren Sie sie auf Ihrem System. Weitere Informationen finden Sie unter gcloud CLI herunterladen.
  • Richten Sie die Standardkonfiguration der gcloud CLI ein und initialisieren Sie sie. Achten Sie darauf, die richtige Organisations-URL festzulegen, die zum Abrufen des Anmeldekonfigurationsendpunkts verwendet wird. Weitere Informationen finden Sie unter gcloud CLI installieren.
  • Installieren Sie das Authentifizierungs-Plug-in gdcloud-k8s-auth-plugin. Weitere Informationen finden Sie unter Authentifizierung der gcloud CLI.

Führen Sie die folgenden Schritte aus, um sich bei einem Management API-Server oder Kubernetes-Cluster anzumelden:

  • Management API-Server:
  1. Exportieren Sie den Pfad, in dem Sie die kubeconfig-Datei des Management API-Servers speichern möchten:

    export KUBECONFIG=MANAGEMENT_API_SERVER
    

    Ersetzen Sie MANAGEMENT_API_SERVER durch den Pfad zum Verzeichnis, in dem die kubeconfig-Datei gespeichert werden soll.

  2. Authentifizieren Sie Ihre gcloud CLI-Instanz, um sich anzumelden. Es gibt zwei Möglichkeiten zur Authentifizierung:

    • Standardanmeldung im Browser:Verwenden Sie diesen Authentifizierungsablauf, wenn Sie sich über einen Browser anmelden.

      gdcloud auth login
      
    • Anmeldung auf einem sekundären Gerät:Verwenden Sie diesen Authentifizierungsvorgang, wenn auf Ihrem primären Gerät kein Browser verfügbar ist. Bei diesem Ablauf wird die Anmeldung auf dem Hauptgerät ohne Browserzugriff gestartet und auf dem Zweitgerät mit Browserzugriff fortgesetzt.

      So starten Sie die Anmeldung auf Ihrem Hauptgerät ohne Browser:

      gdcloud auth login --no-browser
      

      Die Umgebungsvariable KUBECONFIG wird mit den kubeconfig-Dateien für alle API-Server und Cluster in der Organisation aktualisiert. Wenn die Variable KUBECONFIG nicht festgelegt ist, verwendet die kubectl-Befehlszeile die Standard-kubeconfig-Datei, die in $HOME/.kube/config gespeichert ist.

      Wenn Sie die Bearbeitung der kubeconfig-Dateien überspringen möchten, fügen Sie Ihrem Befehl das Flag --skip-kubeconfig-update hinzu. Beispiel:

      gdcloud auth login --no-browser --skip-kubeconfig-update
      

      Kopieren Sie die Ausgabe des gcloud CLI-Befehls und führen Sie sie auf einem Computer mit Browserzugriff aus.

  3. Folgen Sie der Anleitung auf der Webseite, um die Anmeldung abzuschließen.

    Nach erfolgreichem Abschluss der Anmeldung wird im Browser die Meldung Authentifizierung erfolgreich. Bitte schließen Sie dieses Fenster.

  4. Folgen Sie der Anleitung auf dem Terminal. Nach erfolgreicher Anmeldung wird im Terminal die Meldung You are now logged in (Sie sind jetzt angemeldet) angezeigt.

  • Kubernetes-Cluster:
  1. Authentifizieren Sie Ihre gcloud CLI-Instanz, um sich anzumelden. Es gibt zwei Möglichkeiten zur Authentifizierung:

    • Standardanmeldung im Browser:Verwenden Sie diesen Authentifizierungsablauf, wenn Sie sich über einen Browser anmelden.

      gdcloud auth login
      
    • Anmeldung auf einem sekundären Gerät:Verwenden Sie diesen Authentifizierungsvorgang, wenn auf Ihrem primären Gerät kein Browser verfügbar ist. Bei diesem Ablauf wird die Anmeldung auf dem Hauptgerät ohne Browserzugriff gestartet und auf dem Zweitgerät mit Browserzugriff fortgesetzt.

      1. So starten Sie die Anmeldung auf Ihrem Hauptgerät ohne Browser:

        gdcloud auth login --no-browser
        

        Der Befehl auf dem primären Gerät gibt einen weiteren gdcloud-Befehl aus, den Sie in Schritt c auf dem sekundären Gerät ausführen müssen.

      2. Wiederholen Sie Schritt 1, um das Zertifikat auf dem sekundären Gerät herunterzuladen.

      3. Schließen Sie die Anmeldung auf dem sekundären Gerät ab, indem Sie den Befehl eingeben, der in Schritt a auf dem primären Gerät angezeigt wird.

    Dadurch wird ein Browser geöffnet, in dem Sie sich beim konfigurierten Identitätsanbieter (Identity Provider, IdP) anmelden können. Geben Sie den Nutzer und das Passwort an, die Sie bei der ersten Einrichtung der gcloud CLI festgelegt haben, um sich anzumelden.

  2. Exportieren Sie die kubeconfig-Datei Ihrer Nutzeridentität als Variable:

    export KUBECONFIG=/tmp/admin-kubeconfig-with-user-identity.yaml
    
  3. Generieren Sie eine kubeconfig-Datei mit Ihrer Nutzeridentität:

    gdcloud clusters get-credentials CLUSTER_NAME --zone ZONE
    

    Ersetzen Sie ZONE durch den Namen der Zone.

    Eine kubeconfig-Datei wird mit Ihrer Nutzeridentität generiert. Die folgende YAML-Datei zeigt ein Beispiel:

    apiVersion: v1
    clusters:
    - cluster:
      certificate-authority-data: <REDACTED>
      server: https://10.200.0.32:443
    name: cluster-name
    contexts:
    - context:
      cluster: cluster-name
      user: cluster-name-anthos-default-user
    name: cluster-name-cluster-name-anthos-default-user
    current-context: cluster-name-cluster-name-anthos-default-user
    kind: Config
    preferences: {}
    users:
    - name: cluster-name-anthos-default-user
    user:
      exec:
        apiVersion: client.authentication.k8s.io/v1
        args:
        - --audience=root-admin
        command: gdcloud-k8s-auth-plugin
        env: null
        installHint: Run 'gdcloud components install gdcloud-k8s-auth-plugin' to use plugin
        interactiveMode: Never
        provideClusterInfo: false
    
  4. So prüfen Sie, ob Sie auf den Cluster zugreifen können: Melden Sie sich mit der generierten kubeconfig-Datei mit einer Nutzeridentität an:

    kubectl --kubeconfig /tmp/admin-kubeconfig-with-user-identity.yaml version
    

Abmelden

So melden Sie sich von der GDC Console ab:

Console

Klicken Sie in der Menüleiste auf  Abmelden.

Befehlszeile

Von der CLI abmelden:

gdcloud auth revoke

kubeconfig-Datei manuell generieren

Wenn Sie Ressourcen mit der kubectl CLI verwalten, indem Sie KRM-APIs direkt aufrufen, müssen Sie die kubeconfig-Datei für den Cluster oder API-Server generieren, auf dem Ihre Ressource gehostet wird. Das hängt vom Ressourcentyp ab, den Sie verwalten.

Sie müssen auch die Konfiguration Ihres GDC-Universums kennen, um die Zonen zu bestimmen, in denen Sie Ihre zonalen Ressourcen bereitstellen möchten, oder den globalen API-Server für globale Ressourcen. Weitere Informationen finden Sie unter Globale und zonale API-Server.

Stellen Sie fest, ob die Ressource, die Sie bearbeiten, eine globale oder zonale Ressource ist. Wenn Sie sich nicht sicher sind, finden Sie in der Dokumentation der jeweiligen Ressource weitere Informationen.

Führen Sie die entsprechende Einrichtung basierend auf Ihrem Ressourcentyp durch.

Zonale Management API-Serverressourcen

Führen Sie die folgenden Schritte aus, um die kubeconfig-Datei für den zonalen Management API-Server zu generieren:

  1. So rufen Sie alle verfügbaren Zonen auf:

    gdcloud zones list
    

    Notieren Sie sich den Namen der Zone, in der Ihre benutzerdefinierte Ressource gehostet wird.

  2. Legen Sie die Umgebungsvariable ZONE auf die Zone fest, in der sich Ihre zonalen Ressourcen befinden:

    export ZONE="ZONE"
    

    Ersetzen Sie ZONE durch den Namen der Zone.

  3. Legen Sie die Umgebungsvariable MANAGEMENT_API_SERVER fest:

    export MANAGEMENT_API_SERVER="ORG_NAME-admin"
    

    Ersetzen Sie ORG_NAME durch den Namen Ihrer Organisation, z. B. org-1.

  4. Generieren Sie die kubeconfig-Datei des Management API-Servers für die Zielzone und prüfen Sie die Anmeldedaten:

    export KUBECONFIG=${HOME}/${MANAGEMENT_API_SERVER:?}-kubeconfig.yaml
    rm ${KUBECONFIG:?}
    gdcloud clusters get-credentials ${MANAGEMENT_API_SERVER:?} --zone ${ZONE:?}
    [[ $(kubectl config current-context) == *${MANAGEMENT_API_SERVER:?}* ]] && echo "Success. Your kubeconfig is at $KUBECONFIG" || echo "Failure"
    

    Mit dem Befehl rm ${KUBECONFIG:?} wird die vorhandene kubeconfig-Datei im Home-Verzeichnis entfernt. Wenn Sie eine neue kubeconfig-Datei generieren, wird die vorhandene Datei überschrieben. Wenn Sie die vorhandene Datei nicht überschreiben oder entfernen möchten, sichern Sie sie an einem anderen sicheren Ort.

Zonale Kubernetes-Clusterressourcen

Führen Sie die folgenden Schritte aus, um die kubeconfig-Datei für den zonenbasierten Kubernetes-Cluster zu generieren:

  1. So rufen Sie alle verfügbaren Zonen auf:

    gdcloud zones list
    

    Notieren Sie sich den Namen der Zone, in der Ihre benutzerdefinierte Ressource gehostet wird.

  2. Legen Sie die Umgebungsvariable ZONE auf die Zone fest, in der sich Ihr Kubernetes-Cluster befindet:

    export ZONE="ZONE"
    

    Ersetzen Sie ZONE durch den Namen der Zone.

  3. Legen Sie die Umgebungsvariable KUBERNETES_CLUSTER fest:

    export KUBERNETES_CLUSTER="KUBERNETES_CLUSTER_NAME"
    

    Ersetzen Sie KUBERNETES_CLUSTER_NAME durch den Namen Ihres Kubernetes-Clusters.

  4. Generieren Sie die kubeconfig-Datei des Kubernetes-Clusters für die Zielzonenvariable und validieren Sie die Anmeldedaten:

    export KUBECONFIG=${HOME}/${KUBERNETES_CLUSTER:?}-kubeconfig.yaml
    rm ${KUBECONFIG:?}
    gdcloud clusters get-credentials ${KUBERNETES_CLUSTER:?} --zone ${ZONE:?}
    [[ $(kubectl config current-context) == *${KUBERNETES_CLUSTER:?}* ]] && echo "Success. Your kubeconfig is at $KUBECONFIG" || echo "Failure"
    

    Mit dem Befehl rm ${KUBECONFIG:?} wird die vorhandene kubeconfig-Datei im Home-Verzeichnis entfernt. Wenn Sie eine neue kubeconfig-Datei generieren, wird die vorhandene Datei überschrieben. Wenn Sie die vorhandene Datei nicht überschreiben oder entfernen möchten, sichern Sie sie an einem anderen sicheren Ort.

Globale API-Serverressourcen

Führen Sie die folgenden Schritte aus, um die kubeconfig-Datei für den globalen API-Server zu generieren:

  1. Legen Sie die Umgebungsvariable GLOBAL_API_SERVER fest:

    export GLOBAL_API_SERVER="global-api"
    
  2. Generieren Sie die globale kubeconfig-Datei für den API-Server und validieren Sie die Anmeldedaten:

    export KUBECONFIG=${HOME}/${GLOBAL_API_SERVER:?}-kubeconfig.yaml
    rm ${KUBECONFIG:?}
    gdcloud clusters get-credentials ${GLOBAL_API_SERVER:?}
    [[ $(kubectl config current-context) == *${GLOBAL_API_SERVER:?}* ]] && echo "Success. Your kubeconfig is at $KUBECONFIG" || echo "Failure"
    

    Mit dem Befehl rm ${KUBECONFIG:?} wird die vorhandene kubeconfig-Datei im Home-Verzeichnis entfernt. Wenn Sie eine neue kubeconfig-Datei generieren, wird die vorhandene Datei überschrieben. Wenn Sie die vorhandene Datei nicht überschreiben oder entfernen möchten, sichern Sie sie an einem anderen sicheren Ort.

Abmeldung bei Inaktivität

Nach 15 Minuten oder mehr Inaktivität in einer Sitzung werden Sie von der GDC-Konsole und der gdcloud-CLI abgemeldet. Bei Distributed Cloud gilt eine Sitzung als inaktiv, wenn während einer offenen Sitzung keine aktiven Aktionen von Ihnen erfolgen, z. B. keine Maus- oder Tastaturbewegungen. Eine aktive Sitzung kann bis zu zwölf Stunden dauern, wenn Nutzeraktivitäten gemessen werden.

Console

Bei Inaktivität während einer Sitzung werden Sie aus der GDC-Konsole abgemeldet. Zwei Minuten, bevor Sie in der GDC-Konsole aufgrund von Inaktivität abgemeldet werden, wird ein Dialogfeld angezeigt, in dem Sie vor der Abmeldung gewarnt werden:

Die Console-Benutzeroberfläche zeigt ein Dialogfeld mit einem Timer von 99 Sekunden an, bevor der Nutzer aufgrund von Inaktivität abgemeldet wird.

Nachdem Sie aufgrund von Inaktivität abgemeldet wurden, wird der folgende Bildschirm angezeigt:

Console-Benutzeroberfläche mit Anmeldebildschirm und Banner mit Text zur Abmeldung: „Sie wurden vom System abgemeldet, weil Ihre Sitzung zu lange inaktiv war. Melden Sie sich noch einmal an oder wenden Sie sich an Ihren Administrator, um Hilfe zu erhalten.

Wenn Sie sich wieder in der GDC-Konsole anmelden möchten, wählen Sie Ihren Identitätsanbieter aus und geben Sie Ihre Anmeldedaten ein. Wenn Sie einen Dienst wie das Monitoring-Dashboard verwenden und Sie aufgrund von Inaktivität aus der GDC-Konsole abgemeldet werden, melden Sie sich wieder an, um Zugriff zu erhalten.

gdcloud

Bei Inaktivität während der Sitzung werden Sie von der gcloud CLI abgemeldet. Nachdem Sie sich mit der gcloud CLI abgemeldet haben und versuchen, einen Befehl auszuführen, erhalten Sie einen Autorisierungsfehler:

Error: error when creating kube client: unable to create k8sclient: Unauthorized

Wenn Sie sich wieder in GDC anmelden möchten, folgen Sie der CLI-Anleitung unter Anmelden.

Wenn Sie sich über einen Management API-Server wieder in GDC anmelden, wird Ihre kubeconfig-Datei automatisch aktualisiert. Wenn Sie nicht möchten, dass Ihre kubeconfig-Datei aktualisiert wird, verwenden Sie das Flag --skip-kubeconfig-update im Befehl gdcloud auth login.

kubectl

Die gdcloud CLI lässt Ihre kubeconfig-Dateien nach Inaktivität der Sitzung ablaufen. Wenn Sie versuchen, nach einer Inaktivitätsphase einen kubectl-Befehl auszuführen, erhalten Sie einen Autorisierungsfehler:

error: You must be logged in to the server (Unauthorized)

Wenn Sie sich wieder anmelden und Ihre kubeconfig-Datei verwenden möchten, folgen Sie der Anleitung unter Anmelden. Bei jedem Sitzungs-Timeout müssen Sie Ihre kubeconfig-Dateien neu generieren.

Anmelde- und neue Nutzeraktivitäten im Blick behalten

Aktivitäten wie die Anmeldung werden als Audit-Logs exportiert. Weitere Informationen zum Ansehen von Audit-Logs finden Sie unter Audit-Logs.