Teams für Ihre Flotte einrichten

Diese Seite richtet sich an Plattformadministratoren, die die Nutzung der Flotte für ein Team einrichten und verwalten möchten. Funktionen zur Flottenteamverwaltung sind nur für Nutzer verfügbar, die GKE Enterprise aktiviert haben.

Auf dieser Seite wird davon ausgegangen, dass Sie unsere Übersicht zur Flottenteamverwaltung bereits gelesen haben.

Teameinrichtung – Übersicht

Sie können Teams mit der Google Cloud CLI, der Google Cloud Console oder Terraform einrichten.

So richten Sie ein Team ein:

  1. Wählen Sie die Flotte aus, für die Sie den Teamzugriff einrichten möchten, oder erstellen Sie eine. Prüfen Sie, ob Sie die erforderlichen Berechtigungen und APIs haben, um die Einrichtung abzuschließen.
  2. (Optional, aber empfohlen) Richten Sie die Zugriffssteuerung für Google Groups in Ihren Flottenclustern ein.
  3. Entscheiden, welche Nutzer das Team bilden. Ein Team kann Google Groups-Gruppen (empfohlen) und/oder einzelne Konten umfassen.
  4. Wählen Sie die gewünschte Zugriffsebene für die Flotte und die Teamressourcen für jedes Teammitglied aus.
  5. Erstellen Sie einen Teambereich für das Team.
  6. Fügen Sie dem Teambereich einen oder mehrere (oder alle) Flottenmitgliedscluster hinzu.
  7. Definieren Sie Namespaces auf Flottenebene und verknüpfen Sie sie mit dem Teambereich.
  8. (Optional) Verwenden Sie Config Sync, um Kubernetes-Ressourcen mit Teambereichen und Namespaces zu synchronisieren.

Das Team kann dann Anmeldedaten für den Zugriff auf seine Cluster über das Connect Gateway abrufen.

Google Cloud CLI einrichten

Auch wenn Sie Teambereiche mit der Google Cloud Console erstellen, müssen Sie möglicherweise die gcloud CLI einrichten, um beim Einrichten der Flotte einige Voraussetzungen zu erfüllen, z. B. das Aktivieren der erforderlichen APIs.

  1. Prüfen Sie, ob Sie die neueste Version des Google Cloud CLI haben, einschließlich der Alphakomponente des Google Cloud CLI. Sie benötigen mindestens Version 419.0.0, um Befehle zur Flottenteamverwaltung verwenden zu können.

  2. Führen Sie den folgenden Befehl aus, um sich in Google Cloud anzumelden:

    gcloud auth login
    
  3. Initialisieren Sie entweder die gcloud CLI zur Verwendung mit dem Hostprojekt der ausgewählten Flotte oder führen Sie den folgenden Befehl aus, um das Flotten-Hostprojekt als Standard festzulegen:

    gcloud config set project PROJECT_ID
    

    Sie können das Flag --project mit einem der folgenden Befehle verwenden, um bei Bedarf ein anderes Flotten-Hostprojekt anzugeben.

Flotte einrichten

Wählen Sie die Flotte aus, in der Sie ein neues Team einrichten möchten, oder erstellen Sie sie. Richtlinien und Beispiele zum Strukturieren Ihrer Flotten finden Sie unter Flotten-Beispiele und in den anderen Leitfäden unter Flotte planen.

Wenn Sie eine neue benannte Flotte in einem Projekt erstellen möchten, das noch keine hat, führen Sie den folgenden Befehl aus. Sie müssen zuerst die Google Cloud CLI einrichten):

  gcloud container fleet create \
    --display-name=NAME \
    --project=FLEET_HOST_PROJECT_ID

Wenn Sie keinen display-name angeben, wird die neue Flotte mit einem standardmäßigen Anzeigenamen erstellt, der auf dem Namen des Flotten-Hostprojekts basiert.

Erforderliche IAM-Rollen

Wenn im Flotten-Hostprojekt keine roles/owner vorhanden sind, benötigen Sie roles/gkehub.admin, um Teambereiche und Namespaces zu erstellen und zu konfigurieren. Ein Projektinhaber kann diese Rolle mit dem folgenden Befehl zuweisen:

gcloud projects add-iam-policy-binding PROJECT_ID \
    --member user:USER_EMAIL_ADDRESS \
    --role='roles/gkehub.admin'

APIs aktivieren

Achten Sie darauf, dass in Ihrem Flotten-Hostprojekt alle erforderlichen APIs aktiviert sind, einschließlich der GKE Enterprise API:

gcloud services enable --project=PROJECT_ID \
   gkehub.googleapis.com \
   container.googleapis.com \
   connectgateway.googleapis.com \
   cloudresourcemanager.googleapis.com \
   iam.googleapis.com \
   anthos.googleapis.com

Wenn Sie die GKE Enterprise API nach der Konfiguration der Flottenteamverwaltung deaktivieren, funktionieren einige Aspekte des Features weiterhin. Sie können jedoch keine Teambereiche oder Flotten-Namespaces aktualisieren oder erstellen.

Cluster für die Zugriffssteuerung mit Google Groups konfigurieren

Sie können den Zugriff eines Teams mithilfe von RBAC konfigurieren, um Flottenmitgliedscluster von Nutzer zu Nutzer ohne zusätzliche Clusterkonfiguration zu konfigurieren. Wir empfehlen jedoch, Teammitgliedern Zugriff auf Cluster basierend auf ihrer Mitgliedschaft in einer Google-Teamgruppe zu gewähren. Bei einer Autorisierung, die auf der Gruppenmitgliedschaft basiert, müssen Sie nicht für jedes Konto eine separate Autorisierung einrichten. Richtlinien lassen sich so einfacher verwalten und prüfen. Außerdem ist es nicht mehr erforderlich, einzelne Nutzer manuell zu Clustern hinzuzufügen oder daraus zu entfernen, wenn diese dem Team beitreten oder es verlassen möchten. Verwenden Sie die folgenden Anleitungen, um sicherzustellen, dass die Cluster, die Sie Teambereichen zuweisen möchten, Google Groups mit dem Connect-Gateway für die Zugriffssteuerung verwenden können:

Neues Team zusammenstellen

In der folgenden Anleitung erfahren Sie, wie Sie einen neuen Teambereich für ein Team erstellen.

Teamzugriffsberechtigungen auswählen

Entscheiden oder ermitteln Sie zuerst, welche Nutzer zu Ihrem Team gehören. Ein wichtiger Teil der Teameinrichtung besteht darin, diesen Teammitgliedern Zugriff auf die Flotte zu gewähren, einschließlich der Möglichkeit, Cluster in der Google Cloud Console aufzurufen und Logs in ihrem Teambereich anzusehen. Abhängig von der Rolle des Teammitglieds können Sie auch die Möglichkeit delegieren, Namespaces innerhalb seines Teambereichs an dieses Mitglied zu erstellen (verfügbar in gkehub.ScopeAdmin oder gkehub.ScopeEditor) oder ihm die Aktualisierung von RBAC-Rollenbindungen gestatten (ausschließlich gkehub.ScopeAdmin). Zur Vereinfachung dieser Einrichtung bietet die Flottenteamverwaltung drei benutzerdefinierte Berechtigungsidentitäten zur Auswahl. Diese enthalten einen vollständigen Satz von IAM- und Kubernetes-RBAC-Berechtigungen, die ein Administrator, Bearbeiter oder Betrachter von Teambereichen benötigt, wenn er mit deren Bereich arbeitet. Sie können diese Identitäten dann Teammitgliedern zuweisen, wenn Sie Ihr Team einrichten, wie im folgenden Abschnitt beschrieben.

Die folgende Tabelle zeigt, welche Berechtigungen der einzelnen Typen den einzelnen Identitäten gewährt werden:

Beschreibung Typ Identität des Bereichsadministrators Identität des Bereichsbearbeiters Identität des Bereichsbetrachters

Zugriff auf den Teambereich und seine Namespaces.

IAM-Bindung für Teambereich roles/gkehub.ScopeAdmin roles/gkehub.ScopeEditor roles/gkehub.ScopeViewer

Zugriff auf das Flotten-Hostprojekt, einschließlich Messwerten, langwieriger Vorgänge und Connect-Gateway.

IAM-Bindung für das Flotten-Hostprojekt roles/gkehub.ScopeEditorProjectLevel roles/gkehub.ScopeEditorProjectLevel roles/gkehub.ScopeViewerProjectLevel

Zugriff auf den Log-Bucket des Teambereichs.

IAM-Bindung für das Flotten-Hostprojekt (mit der Bedingung, dass die Ressource, auf die zugegriffen wird, der Bucket-Name ist). roles/logging.viewAccessor roles/logging.viewAccessor roles/logging.viewAccessor

Zugriff auf Kubernetes-Ressourcen in den Clustern des Bereichs.

RBAC-Bindung für den Bereich, der auf die Namespaces des Teambereichs angewendet wird. Kubernetes-Standardrolle: Administrator Kubernetes-Standardrolle: Bearbeiten Kubernetes-Standardrolle: Ansicht

Wie im vorherigen Abschnitt erwähnt, empfehlen wir, dass Sie Teammitgliedern basierend auf der Google Groups-Mitgliedschaft Zugriff auf ihre Ressourcen gewähren. Über die Teamverwaltung können Sie jedoch auch einzelnen Nutzern Zugriff gewähren.

Wenn diese Identitäten nicht vollständig Ihren Anforderungen entsprechen, können Sie IAM-Rollen (mit gcloud container fleet scopes add-iam-policy-binding) und RBAC-Rollen (mit gcloud container fleet scopes rbacrolebindings create) auch einzeln binden. Weitere Befehle, mit denen Sie diese Bindungen verwalten können, finden Sie in der Referenzdokumentation zur Google Cloud CLI.

Teambereich einrichten

gcloud

Teambereich erstellen

Führen Sie den folgenden Befehl aus, um einen neuen Teambereich in einer Flotte zu erstellen. Dabei ist SCOPE_NAME der eindeutige Name, den Sie für den neuen Bereich ausgewählt haben:

gcloud container fleet scopes create SCOPE_NAME

Cluster zu einem Teambereich hinzufügen

Nur vorhandene Flottenmitglieder können zu Teambereichen hinzugefügt werden. In dieser Anleitung wird davon ausgegangen, dass der Cluster, den Sie dem Bereich hinzufügen möchten, bereits Mitglied der Flotte ist. Wenn Sie den Cluster zu Ihrer Flotte hinzufügen müssen, folgen Sie der Anleitung für Ihren Clustertyp unter Flotte erstellen, um den Cluster zu registrieren. Stellen Sie sicher, dass der neu registrierte Cluster für die Verwendung von Google Groups für die Zugriffssteuerung konfiguriert ist, wie oben beschrieben.

Ein Cluster eines Flottenmitglieds kann einer beliebigen Anzahl von Teambereichen im Flotten-Hostprojekt hinzugefügt werden.

Führen Sie den folgenden Befehl aus, um einem Teambereich einen Cluster hinzuzufügen:

gcloud container fleet memberships bindings create BINDING_NAME \
  --membership MEMBERSHIP_NAME \
  --scope  SCOPE_NAME \
  --location MEMBERSHIP_LOCATION

Ersetzen Sie Folgendes:

  • BINDING_NAME: Ein Name, der die Beziehung zwischen dem Cluster und dem Teambereich darstellt. Wir empfehlen die Verwendung von MEMBERSHIP_NAME-SCOPE_NAME.
  • MEMBERSHIP_NAME: die eindeutige Kennung des Clusters innerhalb der Flotte (in der Regel der Clustername).
  • (Optional) MEMBERSHIP_LOCATION: der Ort der Mitgliedschaft des Clusters. Wenn Sie diese Angabe weglassen, lautet der Wert global. Dies ist der Standard für Clusterregistrierungen.

Flotten-Namespaces erstellen

Führen Sie den folgenden Befehl aus, um einen Namespace in einem Teambereich zu erstellen:

gcloud container fleet scopes namespaces create NAMESPACE_NAME --scope=SCOPE_NAME

Ersetzen Sie Folgendes:

  • NAMESPACE_NAME: Der eindeutige Name, den Sie für den Namespace innerhalb der Flotte ausgewählt haben. Achten Sie darauf, dass NAMESPACE_NAME nicht mit den Einschränkungen für Namen von Flotten-Namespaces in Konflikt steht.
  • SCOPE_NAME: Der Teambereich, in dem Sie den Namespace verwenden möchten.

Mit diesem Befehl wird in jedem Cluster im Teambereich ein Kubernetes-Namespace namens NAMESPACE_NAME erstellt. Teammitglieder können NAMESPACE_NAME wie jeden anderen Kubernetes-Namespace verwenden, nachdem Sie ihnen Zugriff auf ihren Bereich gewährt haben. Wenn Sie bereits einen Kubernetes-Namespace namens NAMESPACE_NAME im Teambereich haben, wird er als Teil des neuen Flotten-Namespace betrachtet. Dies wird manchmal als Onboarding des Namespace bezeichnet.

Teammitgliedern Zugriff auf den Teambereich gewähren

Prüfen Sie als Nächstes, ob die entsprechenden Google Groups-Gruppen die entsprechenden IAM- und RBAC-Berechtigungen haben, die für die Arbeit mit dem neuen Bereich konfiguriert sind:

gcloud alpha container fleet scopes add-app-operator-binding SCOPE_ID
        --role=ROLE --group=TEAM_EMAIL --project PROJECT_ID
  • Dabei ist PROJECT_ID die ID des Flotten-Hostprojekts.
  • TEAM_EMAIL ist die E-Mail-Adresse der Google-Gruppe eines Teams.
  • SCOPE_ID ist die ID des erstellten Bereichs.
  • ROLE ist die Berechtigungsidentität, die die Gruppe im Teambereich hat. Die Werte für diesen Parameter können admin (Bereichsadministrator), edit (Bereichsbearbeiter) oder view (Bereichsbetrachter) sein.

Wenn Sie einem einzelnen Nutzer Zugriff auf den Bereich gewähren möchten, führen Sie stattdessen den folgenden Befehl aus, wobei USER_EMAIL die Google-ID-E-Mail-Adresse des Nutzers ist:

gcloud alpha container fleet scopes add-app-operator-binding SCOPE_ID
        --role=ROLE --user=USER_EMAIL --project PROJECT_ID

Console

Teambereich erstellen

  1. Nachdem Sie Ihr Flotten-Hostprojekt ausgewählt haben, rufen Sie in der Google Cloud Console den Abschnitt Teams auf.

    Zu Teams

  2. Klicken Sie oben auf der Seite auf Teambereich erstellen.

  3. Geben Sie auf der Seite Teamgrundlagen für Name einen eindeutigen Namen für den Teambereich ein. Sie können diesen Namen nicht mehr ändern, nachdem der Teambereich erstellt wurde.

  4. Klicken Sie auf Teammitglied hinzufügen, um dem Bereich Teammitglieder hinzuzufügen.

    • Wählen Sie unter Typ die Option Nutzer aus, um ein einzelnes Teammitglied hinzuzufügen, oder Gruppe, um eine Google-Gruppe hinzuzufügen (empfohlen).
    • Geben Sie bei Nutzer oder Gruppe die E-Mail-Adresse des Teammitglieds oder der Gruppe ein.
    • Für Rolle wählen Sie Bereichsadministrator, Bereichsbearbeiter oder Bereichsbetrachter aus, die mehrere IAM- und RBAC-Bindungen für den Bereich und die Flotte konfigurieren, wie unter Teamzugriffsberechtigungen auswählen beschrieben.
  5. Klicken Sie auf Teambereich erstellen, um den Teambereich zu erstellen, ohne in dieser Phase Cluster und Namespaces hinzuzufügen. Ist dies nicht der Fall, fahren Sie mit dem folgenden Abschnitt fort, um dem Bereich Cluster hinzuzufügen.

Cluster dem Teambereich hinzufügen

Zum Verknüpfen eines Clusters mit einem Teambereich muss der Cluster ein vorhandenes Flottenmitglied sein. Wenn Sie den Cluster zu Ihrer Flotte hinzufügen müssen, folgen Sie der Anleitung für Ihren Clustertyp unter Flotte erstellen, um den Cluster zu registrieren. Stellen Sie sicher, dass der neu registrierte Cluster für die Verwendung von Google Groups für die Zugriffssteuerung konfiguriert ist, wie oben beschrieben.

Ein Cluster eines Flottenmitglieds kann einer beliebigen Anzahl von Teambereichen in seinem Flotten-Hostprojekt hinzugefügt werden, sodass verschiedene Teams Arbeitslasten im selben Cluster ausführen können.

  1. Klicken Sie auf der Seite Teamgrundlagen auf Weiter, nachdem Sie Ihrem Bereich Teammitglieder hinzugefügt haben.
  2. Auf der Seite Cluster können Sie die Flottencluster auswählen, die mit diesem Teambereich verknüpft werden sollen. Wählen Sie im Drop-down-Menü Cluster die Cluster aus, die Sie hinzufügen möchten, und klicken Sie auf OK.

Flotten-Namespaces erstellen

Teammitglieder können Flotten-Namespaces wie jeden anderen Kubernetes-Namespace verwenden. Wenn Sie einen Flotten-Namespace erstellen, wird in allen Clustern im Teambereich ein entsprechender Kubernetes-Namespace erstellt, sofern noch nicht vorhanden.

  1. Klicken Sie auf der Seite Cluster auf Weiter, nachdem Sie Ihrem Teambereich Cluster hinzugefügt haben.
  2. Klicken Sie auf der Seite Namespaces auf Namespace hinzufügen.
    • Geben Sie unter Name einen eindeutigen Namen für den Namespace in der Flotte ein oder den Namen eines vorhandenen Namespace, wenn Sie diesen Namespace einrichten möchten. Achten Sie darauf, dass der Name nicht mit den Einschränkungen für die Benennung von Flotten-Namespaces in Konflikt steht.
  3. Wiederholen Sie den vorherigen Schritt, um dem Bereich weitere Flotten-Namespaces hinzuzufügen.
  4. Klicken Sie zum Erstellen des Teambereichs auf Teambereich erstellen. Nachdem der Teambereich erstellt wurde, können Sie den Teambereich bei Bedarf aufrufen und bearbeiten. Klicken Sie dazu im Abschnitt Teams auf seinen Namen.

Terraform

In diesem Abschnitt erfahren Sie, wie Sie mit Terraform ein neues Team einrichten. Weitere Informationen und Beispiele finden Sie in der Referenzdokumentation zu den folgenden Ressourcen:

Teambereich erstellen

Zum Erstellen eines Teambereichs können Sie den folgenden Block in Ihrer Terraform-Konfiguration verwenden.

  resource "google_gke_hub_scope" "TF_SCOPE_RESOURCE_NAME" {
    scope_id = "SCOPE_NAME"
  }

Ersetzen Sie Folgendes:

  • TF_SCOPE_RESOURCE_NAME: Der Name, den Sie auswählen, um die von diesem Block erstellte Terraform-Ressource google_gke_hub_scope klar zu identifizieren.
  • SCOPE_NAME: Ein Eindeutiger Name für den Teambereich.

Cluster zum Bereich hinzufügen

Nur vorhandene Flottenmitglieder können zu Teambereichen hinzugefügt werden. Wenn Sie den Cluster zu Ihrer Flotte hinzufügen müssen, folgen Sie der Anleitung für Ihren Clustertyp unter Flotte erstellen, um den Cluster zu registrieren. Stellen Sie sicher, dass der neu registrierte Cluster für die Verwendung von Google Groups für die Zugriffssteuerung konfiguriert ist, wie oben beschrieben.

Verwenden Sie den folgenden Block in Ihrer Konfiguration, um einem Teambereich einen Cluster hinzuzufügen:

  resource "google_gke_hub_membership_binding" "TF_MEMBERSHIP_BINDING_RESOURCE_NAME" {
    membership_binding_id = "BINDING_NAME"
    scope = SCOPE_NAME
    membership_id = MEMBERSHIP_NAME
    location = "MEMBERSHIP_LOCATION"
  }

Ersetzen Sie Folgendes:

  • TF_MEMBERSHIP_BINDING_RESOURCE_NAME: Ein Name zur Identifizierung der von diesem Block erstellten Ressource google_gke_hub_membership_binding.
  • BINDING_NAME: Ein Name, der die Beziehung zwischen dem Cluster und dem Bereich darstellt. Wir empfehlen die Verwendung von MEMBERSHIP_NAME-SCOPE_NAME.
  • SCOPE_NAME: Der Name des Teambereichs.
  • MEMBERSHIP_NAME: die eindeutige Kennung des Clusters innerhalb der Flotte (in der Regel der Clustername).
  • MEMBERSHIP_LOCATION: Der Standort der Mitgliedschaft des Clusters.

Flotten-Namespaces erstellen

Teammitglieder können Flotten-Namespaces wie jeden anderen Kubernetes-Namespace verwenden. Sie können einen neuen Namespace erstellen oder einen vorhandenen einrichten. Wenn Sie einen Flotten-Namespace erstellen, wird in allen Clustern im Teambereich ein entsprechender Kubernetes-Namespace erstellt, sofern noch nicht vorhanden.

Verwenden Sie den folgenden Block in Ihrer Konfiguration, um einen Flotten-Namespace zu erstellen:

  resource "google_gke_hub_namespace" "TF_NAMESPACE_RESOURCE_NAME" {
    scope_namespace_id = "NAMESPACE_NAME"
    scope_id = SCOPE_NAME
    scope = SCOPE_NAME
  }

Ersetzen Sie Folgendes:

  • TF_NAMESPACE_RESOURCE_NAME: Ein Name zur Identifizierung der von diesem Block erstellten Ressource google_gke_hub_namespace.
  • NAMESPACE_NAME: Ein eindeutiger Name, den Sie für den Flotten-Namespace ausgewählt haben. Achten Sie darauf, dass dieser Name nicht mit den Einschränkungen für die Benennung von Flotten-Namespaces in Konflikt steht.
  • SCOPE_NAME: Der Name des Teambereichs, in dem der Flotten-Namespace erstellt wird.

Zugriff auf Bereich gewähren

Wie im vorherigen Abschnitt beschrieben, können Teammitgliedern mithilfe von Berechtigungsidentitäten, die sowohl IAM- als auch RBAC-Berechtigungen enthalten, Zugriff auf ihren Bereich gewährt werden. Mit der folgenden Konfiguration können Sie einem einzelnen Nutzer beispielsweise Zugriff auf einen Teambereich gewähren:

  module "TF_SCOPE_RESOURCE_NAME_USER_EMAIL" {
    source           = "terraform-google-modules/kubernetes-engine/google//modules/fleet-app-operator-binding"

    scope_id = "SCOPE_NAME"
    user = "USER_EMAIL"
    role = "ROLE"
  }

Ersetzen Sie Folgendes:

  • TF_SCOPE_RESOURCE_NAME: der Name des Bereichs.
  • BINDING_NAME: Ein Name, der diese Bindung darstellt.
  • SCOPE_NAME: Der Name des Teambereichs.
  • USER_EMAIL: Die E-Mail-Adresse des Nutzers.
  • ROLE: die Identität, die Sie dem Nutzer zuweisen möchten, entweder ADMIN, EDIT oder VIEW.

Um einer Google-Gruppe Zugriff auf einen Teambereich zu gewähren, verwenden Sie group anstelle von user in der vorherigen Konfiguration und die E-Mail-Adresse der Google-Gruppe des Teams.

Auf Flotten-Namespaces zugreifen

Sobald die Einrichtung abgeschlossen ist, können Teammitglieder auf die Namespaces in ihrem Bereich zugreifen, indem sie die relevanten Clusteranmeldedaten abrufen. Führen Sie den folgenden Befehl aus, um Anmeldedaten für einen Flottenmitgliedscluster mit dem Connect Gateway abzurufen, wobei MEMBERSHIP_NAME der Name der Flottenmitgliedschaft für den Cluster ist:

   gcloud container fleet memberships get-credentials  MEMBERSHIP_NAME

Weitere Informationen finden Sie unter Connect-Gateway verwenden.

Teambereiche verwalten

Verwenden Sie die folgenden Befehle, um Teambereiche zu verwalten.

gcloud

Teambereiche auflisten

Führen Sie den folgenden Befehl aus, um alle Bereiche in einer Flotte aufzulisten:

gcloud container fleet scopes list

Um alle mit einem Cluster verknüpften Bereiche aufzulisten, führen Sie folgenden Befehl aus:

gcloud container fleet memberships bindings list --membership MEMBERSHIP_NAME

Cluster aus Teambereichen entfernen

Führen Sie folgenden Befehl aus, um einen Cluster aus einem Bereich zu entfernen:

gcloud container fleet memberships bindings delete BINDING_NAME --membership MEMBERSHIP_NAME

Teambereich löschen

Führen Sie den folgenden Befehl aus, um einen Bereich aus Ihrer Flotte zu löschen:

gcloud container fleet scopes delete SCOPE_NAME

Console

Teambereiche auflisten

Rufen Sie in der Google Cloud Console den Abschnitt Teams auf, um sich alle Bereiche in einer Flotte anzeigen zu lassen, wobei Ihr Flotten-Hostprojekt ausgewählt ist.

Zu Teams

Auf der Seite Teams sehen Sie eine Liste aller Teambereiche, die für Ihre Flotte erstellt wurden, sowie eine Zusammenfassung der Ressourcennutzung für jeden Bereich, einschließlich der Anzahl der Fehler und der Containerneustarts.

Details zum Teambereich ansehen

Für jeden Teambereich können Sie die mit diesem Bereich verknüpften Labels, die in diesem Bereich enthaltenen Teammitglieder und die mit dem Bereich verknüpften Logs aufrufen.

  1. Klicken Sie auf der Seite Teams auf den Teambereich, dessen Details Sie sich ansehen möchten.
  2. Auf dem Tab Team sehen Sie gegebenenfalls die Bereichslabels und die Teammitglieder, die zum Bereich gehören.
  3. Klicken Sie auf den Tab Logs, um Logs des Flottenbereichs aufzurufen.

Cluster in einem Teambereich hinzufügen oder löschen

So fügen Sie Cluster in einem vorhandenen Teambereich hinzu oder löschen sie:

  1. Rufen Sie in der Google Cloud Console die Seite Teams auf:

    Zu Teams

  2. Wählen Sie den Teambereich aus, in dem Sie Cluster hinzufügen oder löschen möchten. Auf dem Tab Cluster wird eine Liste der Cluster angezeigt, die derzeit an den Bereich gebunden sind.

So fügen Sie einem Teambereich Cluster hinzu:

  1. Klicken Sie oben auf der Seite auf Cluster hinzufügen.
  2. Wählen Sie im Drop-down-Menü Cluster die Cluster aus, die Sie dem Bereich hinzufügen möchten, und klicken Sie auf OK.
  3. Klicken Sie auf Teambereich aktualisieren.

So löschen Sie Cluster aus einem Teambereich:

  1. Wählen Sie den Tab Cluster aus. Dieser zeigt eine Liste der Cluster an, die derzeit an den Bereich gebunden sind.
  2. Klicken Sie auf das Papierkorbsymbol neben dem Cluster, den Sie löschen möchten, und dann auf Entfernen, um den Löschvorgang zu bestätigen.

Bereich löschen

  1. Rufen Sie in der Google Cloud Console die Seite Teams auf:

    Zu Teams

  2. Wählen Sie den Teambereich aus, den Sie löschen möchten.

  3. Klicken Sie oben auf der Seite auf Löschen, um den Bereich zu löschen.

  4. Bestätigen Sie den Löschvorgang, indem Sie den Namen des Bereichs eingeben, und klicken Sie noch einmal auf Löschen.

Flotten-Namespaces verwalten

gcloud

Verwenden Sie die folgenden Befehle, um Namespaces in Teambereichen zu verwalten.

Flotten-Namespaces auflisten

Führen Sie den folgenden Befehl aus, um alle mit fleet scopes namespaces create in einem Bereich erstellten Namespaces aufzulisten:

gcloud container fleet scopes namespaces list --scope=SCOPE_NAME

Flotten-Namespace löschen

Führen Sie den folgenden Befehl aus, um einen Flotten-Namespace zu löschen:

gcloud container fleet scopes namespaces delete NAMESPACE_NAME --scope=SCOPE_NAME

Beachten Sie, dass, was beim Löschen eines Flotten-Namespace geschieht, davon abhängt, wie Sie den Namespace hinzugefügt haben:

  • Wenn Sie einen neuen Flotten-Namespace erstellt haben:Dieser Befehl löscht den Flotten-Namespace. Außerdem werden alle Kubernetes-Namespaces gelöscht, die beim Erstellen des Flotten-Namespace erstellt wurden, zusammen mit ihren Arbeitslasten.
  • Wenn Sie einen vorhandenen Kubernetes-Namespace eingerichtet haben:Dieser Befehl löscht den Flotten-Namespace. Der ursprüngliche Namespace, den Sie eingerichtet haben, wird nicht gelöscht.

Console

So verwalten Sie Flotten-Namespaces in Ihrem Teambereich:

  1. Rufen Sie in der Google Cloud Console die Seite Teams auf:

    Zu Teams

  2. Wählen Sie den Teambereich aus, dessen Flotten-Namespaces Sie verwalten möchten.

Flotten-Namespaces auflisten

Wählen Sie in Ihrem Teambereich den Tab Namespaces aus, der eine Liste der in diesem Bereich erstellten Namespaces anzeigt.

Namespace-Details ansehen

Für jeden Flotten-Namespace können Sie die mit diesem Namespace verknüpften Labels sowie Arbeitslasten und Logs anzeigen, die nach Namespace gefiltert sind.

  1. Wählen Sie den Tab Namespaces aus, der eine Liste der Flotten-Namespaces anzeigt, die im Teambereich erstellt wurden.
  2. Klicken Sie auf den Flotten-Namespace, dessen Details Sie aufrufen möchten.
  3. Auf dem Tab Details sehen Sie den Flotten-Namespace und die Bereichslabels.
    • Klicken Sie auf Arbeitslasten ansehen, um Arbeitslasten für diesen Namespace aufzurufen.
    • Auf der Seite Arbeitslasten sehen Sie die Arbeitslasten, die bereits nach dem Namespace und den Clustern gefiltert wurden, die mit dem Teambereich für diesen Namespace verknüpft sind.
  4. Auf dem Tab Logs können Sie Logs des Flottenbereichs nach Namespace aufrufen.

Flotten-Namespaces einem Teambereich hinzufügen

  1. Klicken Sie oben auf der Seite auf Namespaces hinzufügen, um einen neuen Flotten-Namespace hinzuzufügen.
  2. Geben Sie den Namen des neuen Flotten-Namespace ein und achten Sie darauf, dass der Name nicht mit den Benennungseinschränkungen für Flotten-Namespaces in Konflikt steht. Klicken Sie zum Hinzufügen weiterer Namespaces auf Namespace hinzufügen.
  3. Klicken Sie auf Teambereich aktualisieren.

Flotten-Namespace löschen

  1. Wählen Sie den Tab Namespaces aus, der eine Liste der Flotten-Namespaces anzeigt, die im Teambereich erstellt wurden.
  2. Klicken Sie neben dem Namespace, den Sie löschen möchten, auf das Papierkorbsymbol.
  3. Bestätigen Sie den Löschvorgang, indem Sie den Namen Ihres Namespace eingeben, und klicken Sie noch einmal auf Löschen.

Was dabei geschieht, hängt davon ab, wie Sie den Namespace hinzugefügt haben:

  • Wenn Sie einen neuen Flotten-Namespace erstellt haben, wird der Flotten-Namespace gelöscht. Alle Kubernetes-Namespaces, die durch das Erstellen des Fleet-Namespace erstellt wurden, werden zusammen mit ihren Arbeitslasten ebenfalls gelöscht.
  • Wenn Sie einen vorhandenen Kubernetes-Namespace eingerichtet haben:Der Flotten-Namespace wird gelöscht. Der ursprüngliche Namespace, den Sie eingebunden haben, wird jedoch nicht gelöscht.

Flotten-Namespace-Namen aktualisieren

Sie können einen Flotten-Namespace nicht mehr bearbeiten, nachdem er erstellt wurde. Wenn Sie einen Flotten-Namespace-Namen aktualisieren müssen, löschen Sie den Namespace und erstellen Sie einen neuen im Teambereich.

Teamzugriff verwalten

gcloud

Teammitglieder auflisten

Verwenden Sie den folgenden Befehl, um alle Teammitglieder, denen mit dem Befehl add-app-operator-binding Zugriff auf den Teambereich gewährt wurde, zusammen mit ihren Berechtigungsidentitäten aufzulisten:

gcloud alpha container hub scopes list-app-operator-bindings SCOPE_NAME

Ersetzen Sie Folgendes:

  • SCOPE_NAME: Die eindeutige Kennung des Teambereichs.

Teammitglieder entfernen

Verwenden Sie den folgenden Befehl, um den Zugriff auf den Bereich eines Teammitglieds zu entfernen (erteilt mit add-app-operator-binding):

gcloud alpha container hub scopes remove-app-operator-binding SCOPE_NAME \
   --group=TEAM_EMAIL

oder

gcloud alpha container hub scopes remove-app-operator-binding SCOPE_NAME \
   --user=USER_EMAIL

Ersetzen Sie Folgendes:

  • SCOPE_NAME: Die eindeutige Kennung des Teambereichs.
  • TEAM_EMAIL oder USER_EMAIL: die E-Mail-Adresse der Gruppe oder des Nutzers, den Sie aus dem Team entfernen möchten.

Wenn dem Teammitglied der Zugriff mit dem Befehl rbacrolebindings create gewährt wurde, verwenden Sie stattdessen den Befehl rbacrolebindings delete, um das Teammitglied zu entfernen.

Zugriff für Teambereich aktualisieren

Wenn Sie den Zugriff auf den Teambereich aktualisieren möchten, z. B. um Teammitgliedern eine andere Rolle zuzuweisen oder die E-Mail-Adresse einer Gruppe zu aktualisieren, entfernen Sie das Teammitglied wie im vorherigen Abschnitt beschrieben aus dem Bereich und gewähren Sie ihm dann wieder Zugriff mit den neuen Details.

Wenn dem Teammitglied Zugriff mit dem Befehl rbacrolebindings create gewährt wurde, können Sie stattdessen den Befehl rbacrolebindings update verwenden, um den Zugriff des Mitglieds zu aktualisieren.

Console

Teammitglieder hinzuzufügen oder zu entfernen

So verwalten Sie Teammitglieder in einem Teambereich:

  1. Rufen Sie in der Google Cloud Console die Seite Teams auf:

    Zu Teams

  2. Wählen Sie den Teambereich aus, dessen Mitglieder Sie verwalten möchten.

So fügen Sie dem Bereich neue Teammitglieder hinzu:

  1. Klicken Sie oben auf der Seite auf Teammitglieder hinzufügen. Folgen Sie der Anleitung im Abschnitt Teambereich erstellen.
  2. Klicken Sie auf Teambereich aktualisieren.

So entfernen Sie Teammitglieder aus dem Bereich:

  1. Klicken Sie auf dem Tab Team auf das Papierkorbsymbol neben dem Teammitglied, das Sie aus dem Teambereich entfernen möchten.
  2. Klicken Sie zur Bestätigung noch einmal auf Löschen.

Sie können die Details eines Teammitglieds nicht in der Google Cloud Console bearbeiten. Wenn Sie den Zugriff auf den Bereich in der Google Cloud Console aktualisieren möchten, um beispielsweise Teammitgliedern eine andere Rolle zuzuweisen oder die E-Mail-Adresse einer Gruppe zu aktualisieren, entfernen Sie das Teammitglied aus dem Bereich und fügen Sie es mit den neuen Details noch einmal hinzu.

Einschränkungen für die Benennung von Flotten-Namespaces

Die folgenden Namen sind reserviert und dürfen beim Erstellen eines Flotten-Namespace in einem Teambereich nicht verwendet werden:

  • default
  • kube-system
  • gke-connect
  • kube-node-lease
  • kube-public
  • istio-system
  • gatekeeper-system
  • asm-system
  • config-management-system

Labels verwalten

Zum Identifizieren und Verwalten Ihrer Bereiche können Sie mit der Google Cloud CLI Labels für Ihre Flotten-Namespaces und Teambereiche erstellen und verwalten.

Einem Teambereich hinzugefügte Labels werden von allen Flotten-Namespaces im Bereich übernommen. Das bedeutet, dass sie allen Kubernetes-Namespaces in den Clustern des Bereichs zugeordnet sind. Labels, die direkt einem Flotten-Namespace hinzugefügt werden, werden nur an die entsprechenden Kubernetes-Namespaces angehängt. Wenn ein Teambereichslabel und ein Flotten-Namespace-Label denselben Schlüssel haben, hat das Label des Teambereichs Vorrang.

Sie können mehrere Schlüssel/Wert-Paare gleichzeitig bearbeiten, indem Sie eine durch Kommas getrennte Liste von Schlüssel/Wert-Paaren hinzufügen.

Flotten-Namespace-Labels verwalten

Flotten-Namespace mit Labels erstellen

Führen Sie den folgenden Befehl aus, um einen Flotten-Namespace mit Labels zu erstellen:

gcloud container fleet scopes namespaces create NAMESPACE_NAME \
    --scope SCOPE_NAME \
    --namespace-labels KEY=VALUE

Ersetzen Sie Folgendes:

  • NAMESPACE_NAME: Der eindeutige Name, den Sie für den Namespace innerhalb der Flotte ausgewählt haben.
  • SCOPE_NAME: Der Teambereich, in dem Sie den Namespace verwenden möchten.
  • KEY: Der Schlüssel für das Schlüssel/Wert-Paar des Labels.
  • VALUE: Der Wert für das Schlüssel/Wert-Paar des Labels.

Labels zu vorhandenen Flotten-Namespaces hinzufügen oder aktualisieren

Führen Sie den folgenden Befehl aus, um Labels einem vorhandenen Namespace hinzuzufügen oder zu aktualisieren:

gcloud container fleet scopes namespaces update NAMESPACE_NAME \
    --scope SCOPE_NAME \
    --update-namespace-labels KEY=VALUE

Flotten-Namespace-Labels löschen

Führen Sie den folgenden Befehl aus, um ein bestimmtes Flotten-Namespace-Label zu löschen:

gcloud container fleet scopes namespaces update NAMESPACE_NAME \
    --scope SCOPE_NAME \
    --remove-namespace-labels KEY

Ersetzen Sie KEY durch eine durch Kommas getrennte Liste der Schlüssel für die Labels, die Sie entfernen möchten.

Führen Sie den folgenden Befehl aus, um alle Flotten-Namespace-Labels zu löschen:

gcloud container fleet scopes namespaces update NAMESPACE_NAME \
    --scope SCOPE_NAME \
    --clear-namespace-labels

Labels für Teambereiche verwalten

Teambereich mit Labels erstellen

Führen Sie den folgenden Befehl aus, um einen Bereich mit einem Label zu erstellen:

gcloud container fleet scopes create SCOPE_NAME \
    --namespace-labels KEY=VALUE

Ersetzen Sie Folgendes:

  • SCOPE_NAME: Der eindeutige Name, den Sie für den neuen Teambereich ausgewählt haben.
  • KEY: Der Schlüssel für das Schlüssel/Wert-Paar des Labels.
  • VALUE: Der Wert für das Schlüssel/Wert-Paar des Labels.

Labels für vorhandene Teambereiche hinzufügen oder aktualisieren

Führen Sie den folgenden Befehl aus, um Labels für einen vorhandenen Bereich hinzuzufügen oder zu aktualisieren:

gcloud container fleet scopes update SCOPE_NAME \
    --update-namespace-labels KEY=VALUE

Labels für Teambereiche löschen

Führen Sie den folgenden Befehl aus, um bestimmte Labels zu löschen:

gcloud container fleet scopes update SCOPE_NAME \
     --remove-namespace-labels KEY

Ersetzen Sie KEY durch eine durch Kommas getrennte Liste der Schlüssel für die Labels, die Sie entfernen möchten.

Um alle Labels zu löschen, führen Sie folgenden Befehl aus:

gcloud container fleet scopes update SCOPE_NAME \
    --clear-namespace-labels

Fehlerbehebung

Wenn Sie Ressourcen für die Flottenteamverwaltung nicht aktualisieren oder erstellen können, achten Sie darauf, dass die GKE Enterprise API aktiviert ist. Wenn Sie die GKE Enterprise API in Ihrem Flotten-Hostprojekt nach der Konfiguration der Flottenteamverwaltung deaktivieren, geschieht Folgendes:

  • Alle von Ihnen erstellten Teambereiche und Flotten-Namespaces funktionieren weiterhin wie erwartet, können jedoch nicht aktualisiert werden.
  • Vorhandene Teambereiche und Flotten-Namespaces können gelöscht werden.
  • Es können keine neuen Teambereiche und Flotten-Namespaces erstellt werden.

Nächste Schritte