Plattformadministratoren müssen im Rahmen ihrer Arbeit häufig dafür sorgen, dass Anwendungs- und Dienstteams die Infrastrukturressourcen zur Verfügung stehen, die sie zum Ausführen ihrer Arbeitslasten benötigen. Je nach Organisation müssen Teams möglicherweise bestimmte Cluster verwenden oder Arbeitslasten in jedem Cluster einer Flotte ausführen. Dabei muss für jedes Team eine geeignete Zugriffssteuerung eingerichtet werden. Mit den Funktionen zur Flottenteamverwaltung können Administratoren solche Infrastrukturressourcen für Teams einfacher bereitstellen und verwalten. Dabei fungiert jedes Team als separater „Mandant“ in Ihrer Flotte. Teams können ihre Arbeitslasten ausführen und verwalten sowie Logs, Ressourcennutzung, Fehlerraten und andere Messwerte auf ihre eigenen Cluster und Namespaces bezogen aufrufen.
Diese Seite richtet sich an Plattformadministratoren und Mitglieder von Anwendungsteams, die mehr über die Funktionen zur Verwaltung von Flottenteams erfahren möchten. Funktionen zur Flottenteamverwaltung sind nur für Nutzer verfügbar, die die gesamte GKE Enterprise-Plattform aktiviert haben.
Flottenteamverwaltung – Übersicht
Die Flottenteamverwaltung basiert auf zwei wichtigen Konzepten, die Administratoren eine Abstraktion auf Teamebene bieten, die sie bei der Verwaltung von Flotten verwenden können:
- Mit Teambereichen können Sie Teilmengen von Flottenressourcen auf Teambasis definieren, wobei jeder Bereich einem oder mehreren Clustern der Flottenmitglieder zugeordnet ist. Teambereiche können Cluster in Google Cloud oder außerhalb Google Cloudumfassen. Alle Cluster müssen jedoch derselben Flotte angehören. Ein Cluster kann mit mehreren Teambereichen verknüpft werden, sodass verschiedene Teams Arbeitslasten im selben Cluster ausführen können.
- Mit Flotten-Namespaces können Sie festlegen, wer Zugriff auf bestimmte Namespaces innerhalb Ihrer Flotte hat. Standardmäßig werden alle Namespaces mit demselben Namen, die in Clustern in der Flotte definiert sind, so behandelt, als wären sie derselbe Namespace. Die Verwaltung durch ein Flottenteam bietet jedoch eine Möglichkeit, Namespaces genauer zu steuern. Sie können Flotten-Namespaces innerhalb bestimmter Teambereiche erstellen und Teammitgliedern dann nur Zugriff auf Cluster innerhalb ihres Teambereichs gewähren. Flotten-Namespaces können wie jeder andere Kubernetes-Namespace in den Mitgliedsclustern im Teambereich verwendet werden. Plattformadministratoren können Flotten-Namespaces selbst erstellen oder mit zusätzlichen Berechtigungen die Erstellung von Namespaces an Teamadministratoren delegieren.
Beispiel für die Teamverwaltung
Angenommen, Sie sind Plattformadministrator für das Unternehmen Cymbal Group und richten Ressourcen für zwei Teams in einer einzigen Flotte ein.
- Das Backend-Team besteht aus einer Google-Gruppe,
backend-team@cymbalgroup.com
. Sie legen fest, dass dieses Team Arbeitslasten mit dem Namespacebackend
auf Cluster 1 und Cluster 2 ausführen kann. Sie erstellen einen Teambereich mit den beiden Clustern und definieren darin einenbackend
-Flotten-Namespace. - Das Frontend-Team besteht aus zwei Google-Gruppen,
frontend-admin@cymbalgroup.com
undfrontend-dev@cymbalgroup.com
. Sie legen fest, dass das Frontend-Team Arbeitslasten in Cluster 2 und Cluster 3 mit den Namespacesfrontend-foo
undfrontend-bar
ausführen kann. Erstellen Sie wieder einen Teambereich mit den beiden Clustern und definieren Sie darin zwei Flotten-Namespaces.
Wie Sie im Diagramm sehen, können beide Teams nach der Einrichtung der Teams Cluster 2 verwenden, wobei jedes Team seine eigenen Namespaces verwendet. Außerdem kann das Backend-Team seinen Namespace auf Cluster 1 und das Frontend-Team seine Namespaces auf Cluster 3 verwenden. Beide Teams können ihre Arbeitslasten auf den Clustern ausführen und ihre eigenen Ressourcen ansehen, ohne das andere Team berücksichtigen zu müssen.
In jedem der Fälle geben Sie an, dass die Teamleiter (einzelner Nutzer Dana im Fall des Backend-Teams, frontend-admin
Gruppenmitglieder im Fall des Frontend-Teams) admin
-Zugriff auf den Teambereich haben, d. h., sie können Rollen und Rollenbindungen im Bereich erstellen, während die verbleibenden Teammitglieder editor
-Zugriff haben.
Sie könnten zwar alle diese Konfiguration manuell mit kubectl
oder anderen Tools einrichten, aber mit den Funktionen zur Teamverwaltung lässt sich die Onboarding des Teams einfacher gestalten. Außerdem können Administratoren und Teammitglieder zusätzliche Funktionen auf Basis der Teambereiche verwenden, z. B. auf Teambereichen basierenden Messwerte.
In der Praxis würden Sie wahrscheinlich auch separate Flotten für Ihre Produktions-, Entwicklungs- und Testumgebungen haben. Sie würden in jeder dieser Flotten Teambereiche für die Frontend- und Backend-Teams erstellen und den Teams eigene Produktions-, Entwicklungs- und Testcluster zur Verfügung stellen. Weitere Informationen finden Sie in unseren Best Practices und Beispielen für den Flotten.
Für Teams aktivierte Funktionen
Nachdem Teambereiche eingerichtet wurden, können Anwendungsoperatoren und Administratoren teambezogene Informationen wie Ressourcennutzung, Logs, Fehler nach Namespace und andere Messwerte aus ihrem gesamten Bereich ansehen, damit sie leichter beurteilen können, wie sie ihre Gesamt-Ressourcen nutzen, für Fehlerbehebung und mehr. Weitere Informationen finden Sie unter Teamübersicht verwenden. Teambereiche können auch für Sequenzierung von Roll-outs von upgrades verwendet werden.
Auf Teambereiche zugreifen
Wir empfehlen Teammitgliedern, mit kubectl
über die speziellen Cluster-Anmeldedaten für das Connect-Gateway auf ihre Cluster auf Teamebene zuzugreifen. Das Connect-Gateway ist ein einheitlicher, sicherer Dienst, mit dem sich Nutzer mit ihren Google-IDs in jedem Cluster der Flotte anmelden können. Dabei kann auch Google Groups für die Autorisierung verwendet werden. Obwohl dies für die Authentifizierung bei GKE-Clustern in Google Cloudnicht unbedingt erforderlich ist, bietet die Verwendung der Gateway-Anmeldedaten eine einfache, konsistente Möglichkeit, sich bei Flottenmitgliedsclustern so und auch projektübergreifend zu authentifizieren. Die Verwaltung von Flottenteams unterstützt derzeit keine Identitätsanbieter von Drittanbietern.
Vorhandene Ressourcen
Mit der Flottenteamverwaltung können Sie auch vorhandene Namespaces und Cluster, die von den Teams Ihrer Organisation verwendet werden, einbinden. So können Administratoren und Teams teambasierte Funktionen mit vorhandenen Arbeitslasten nutzen. Wenn Sie einen Flotten-Namespace erstellen und in einem der Cluster, die mit dem Teambereich verknüpft sind, bereits ein Kubernetes-Namespace mit diesem Namen vorhanden ist, wird dieser Namespace als Instanz des Flotten-Namespaces und somit als Teil des Teambereichs betrachtet.
Nächste Schritte
- Wenn Sie Plattformadministrator sind, folgen Sie der Anleitung unter Teams einrichten, um Teambereiche und Namespaces einzurichten, zu konfigurieren und zu verwalten.
- Weitere Informationen finden Sie unter Teamübersicht verwenden (nur eingeschränkte Vorabversion).