Mit Flotten können Sie Unternehmens- und andere flottenfähige Features über mehrere Cluster gleichzeitig verwalten. Auf diese Weise können Sie beispielsweise einen gemeinsamen Satz von Richtlinien anwenden oder ein einzelnes Service Mesh auf Ihrem gesamten Clusterpool erstellen. Auf dieser Seite erhalten Sie einen Überblick darüber, wie Sie Features für Ihren Gerätepool verwalten können. Weitere Informationen zum Konfigurieren und Verwenden einzelner Funktionen finden Sie in der jeweiligen Dokumentation.
Wenn Sie Google Kubernetes Engine aktiviert haben, können Sie Features in der Google Cloud Console verwalten. Alle Nutzer der Flotte können Features über die Befehlszeile verwalten.
Mit einigen Features können Sie eine Standardkonfiguration der Flottenfunktion für Ihre Flottencluster erstellen. Sie können beispielsweise dafür sorgen, dass für jeden Cluster, den Sie in Ihrer Flotte erstellen, Policy Controller installiert und konfiguriert ist.
Weitere Informationen über die Funktionsweise der Funktionsverwaltung auf Flottenebene in Ihren Clustern finden Sie unter dem Abschnitt Funktionsautorisierung.
Funktionen auf Flottenebene
Sie können die folgenden Funktionen auf Flottenebene verwalten:
- Verwaltetes Cloud Service Mesh
- Sicherheitsstatus
- Config Sync
- Policy Controller
- GKE Identity Service
- Multi-Cluster-Ingress
- Multi-Cluster-Dienste (nur GKE-Cluster)
- Kontinuierliche Validierung für die Binärautorisierung
Diese Liste enthält nicht alle Features, die Flotten verwenden oder erfordern. Beispiel: Die Workload Identity der Flotte basiert auf Clustern, die Mitglieder einer Flotte sind, aber keine Konfiguration auf Flottenebene erfordert. Cloud Service Mesh erfordert eine Flottenmitgliedschaft für alle Steuerungsebenen- und Einrichtungsoptionen.
Auf der Seite Deployment Optionen können Sie mehr darüber erfahren, welche Features in welchen Umgebungen verfügbar sind.
Features auf Flottenebene einrichten
In den folgenden Abschnitten wird beschrieben, wie Sie Features auf Flottenebene aktivieren und konfigurieren können.
Wenn Sie ein Feature auf Flottenebene verwenden möchten, aktivieren Sie das Feature in den meisten Fällen für Ihre Flotte und aktivieren Sie es für Ihre Flottenmitglieder. Einige Konfigurationen (oder andere zusätzliche Konfigurationen) sind im Allgemeinen erforderlich, um das Feature tatsächlich mit Ihren Clustern und Arbeitslasten zu verwenden.
Sie können für einige Funktionen auch Standard-Clusterkonfigurationen für Flotten erstellen, d. h. dass sämtliche neuen Cluster, die Sie in Ihrer Flotte erstellen, mit Ihren angegebenen Einstellungen für jenes Feature vorkonfiguriert werden.
Features mit Standardeinstellungen auf Flottenebene aktivieren
Sie können für einige Funktionen Standardeinstellungen auf Flottenebene für Ihre GKE-Cluster erstellen. Nachdem Sie diese Einstellungen erstellt haben, werden alle GKE-Cluster die Sie während der Clustererstellung registrieren automatisch mit den Konfigurationen auf Flottenebene konfiguriert. Wenn Sie beispielsweise Standardeinstellungen für Policy Controller einrichten, hat jeder neue Cluster, den Sie in Ihrer Flotte erstellen, die von Ihnen angegebene Version von Policy Controller installiert und zwar mit der von Ihnen angegebenen Richtlinie-Bundles und anderen Einstellungen. Standardeinstellungen für Flotten werden nicht automatisch auf vorhandene Flottenmitglieder-Cluster angewendet. Sie können jedoch vorhandene Cluster mit Ihren Standardeinstellungen synchronisieren, indem Sie die Google Cloud Console nutzen.
Im Allgemeinen gehen Sie so vor, um Features mit Standardeinstellungen auf Flottenebene zu aktivieren:
Console
Rufen Sie in Ihrem Flotten-Hostprojekt die Seite Feature Manager auf:
Die Features, die die Konfiguration von Standardeinstellungen auf Flottenebene mit der Google Cloud Console unterstützen, sind unter Feature-Verwaltung auf Flottenebene aufgeführt.
Klicken Sie für das ausgewählte Feature auf Konfigurieren und folgen Sie der Anleitung, um Standardeinstellungen für das Feature zu aktivieren und zu konfigurieren.
Optional: Wählen Sie vorhandene Cluster in Ihrer Flotte aus und synchronisieren Sie sie mit den neuen Einstellungen.
gcloud
- Erstellen Sie eine YAML-Datei, in der Sie die ausgewählten Standardeinstellungen für die Flotte für das Feature angeben.
Führen Sie den Befehl
enablefür das Feature aus und übergeben Sie die Konfigurationsdatei. Jedes Feature auf Flottenebene hat einen eigenenenable-Befehl. Wenn Sie beispielsweise Cloud Service Mesh für Ihre Flotte mit der inmesh.yamlangegebenen Standardkonfiguration aktivieren möchten, führen Sie den folgenden Befehl in Ihrem Flotten-Hostprojekt aus:gcloud container fleet mesh enable --fleet-default-member-config mesh.yaml
Alternativ können Sie für einige Features Standardeinstellungen für die Flotte mit Parametern für den Befehl fleet create oder fleet update angeben. Weitere Informationen finden Sie in der Anleitung für das ausgewählte Feature.
Terraform
Definieren Sie eine google_gke_hub_feature-Ressource mit einem fleet_default_member_config-Block, der die ausgewählten Standardeinstellungen für die Flotte angibt. Weitere Informationen und unterstützte Flottenfeatures finden Sie in der Terraform-Dokumentation.
Nicht alle Features unterstützen die Standardkonfiguration für Flotten mit allen diesen Optionen. Eine detaillierte Anleitung zum Einrichten von Standardeinstellungen für Flotten für jedes unterstützte Feature finden Sie in der folgenden Dokumentation:
- Cloud Service Mesh
- Config Sync
- Policy Controller
- Sicherheitsstatus
- GKE Identity Service (nur Befehlszeile)
- Kontinuierliche Validierung für die Binärautorisierung (Vorschau, nur Befehlszeile)
Flottenfeatures für einzelne Cluster aktivieren und konfigurieren
Alternativ zur Standardkonfiguration für Flotten können Sie Flottenfeatures separat für einzelne Cluster konfigurieren. Dies ist möglicherweise eine gute Option, wenn:
- Sie einen vorhandenen Cluster für die Verwendung eines Features konfigurieren möchten.
- Sie Dienste verwenden möchten, bei denen die Standardkonfiguration für Flotten nicht verfügbar ist oder nicht mit dem ausgewählten Tool verfügbar ist.
Features aktivieren
Dieser Schritt ist nicht für alle Features erforderlich. Weitere Informationen finden Sie in der Anleitung für das ausgewählte Feature.
Console
Sie können Features auf der Seite Feature Manager in der Google Cloud Console aktivieren.
So aktivieren Sie ein Feature für Ihre Flotte:
Rufen Sie in Ihrem Flotten-Hostprojekt die Seite Feature Manager auf:
Features, die auf dieser Seite aktiviert, aber nicht konfiguriert werden können, sind unter Andere auf Unternehmen ausgelegte Funktionen verwalten aufgeführt.
Klicken Sie im Bereich für das Feature, das Sie aktivieren möchten, auf AKTIVIEREN.
Klicken Sie im angezeigten Detailbereich auf den Button Aktivieren....
gcloud
Jedes Feature auf Flottenebene hat einen eigenen enable-Befehl. Beispiel:
Um den GKE Identity Service für Ihre Flotte zu aktivieren, führen Sie den folgenden Befehl in der Flotten-Hostprojekt aus:
gcloud container fleet identity-service enable
Eine vollständige Liste der Befehle finden Sie in der Referenzdokumentation zum Google Cloud SDK (und den entsprechenden Beta- und Alpha-Versionen). Weitere Einzelheiten finden Sie in den Dokumentationen der einzelnen Funktionen.
Informationen dazu, wie Sie prüfen können, ob eine Funktion bereits aktiviert wurde, und wie Sie andere Funktionsstatus ansehen, finden Sie unter Funktionsstatus für Flotten aufrufen.
Einzelne Cluster konfigurieren
Die Konfigurationsschritte, die Sie als Nächstes ausführen, hängen vom Feature ab. Weitere Informationen finden Sie in den folgenden Anleitungen:
- Cloud Service Mesh
- Sicherheitsstatus:
- Config Sync
- Policy Controller
- GKE Identity Service
- Multi-Cluster-Ingress
Status der Flottenfunktion anzeigen
Am einfachsten rufen Sie den Status der Flottenfunktion über das Feature Manager Dashboard in der Google Cloud Console auf.
Für unterstützte Features wird auf dieser Seite angezeigt, wie viele Ihrer Flottencluster den folgenden Status haben:
- Dieses Feature ist aktiviert
- Dieses Feature wurde erfolgreich aktiviert
- Haben eine Warnung für diese Funktion
- Haben einen Fehler für diese Funktion
Sie können auch sehen, ob Standardeinstellungen für die Flotte für das Feature konfiguriert wurden und wie viele Flottenmitglieder-Cluster diese Einstellungen haben. Bei aktivierten Features können Sie auf eine Detailseite klicken, auf der die Cluster aufgeführt sind, die das Feature verwenden. Wenn konfiguriert, können Sie Cluster auswählen und mit den Standardeinstellungen für die Flotte synchronisieren.
Bei Features, die nicht über diese Seite konfiguriert werden können (die unter Andere für Unternehmen geeignete Funktionen verwalten aufgeführt sind) können Sie sehen, ob das Feature für Ihren Gerätepool aktiviert wurde. Außerdem sehen Sie einen Detailbereich, der zeigt, auf wie vielen Clustern das Feature installiert ist und andere relevante Informationen.
Status der Funktion mit gcloud aufrufen
gcloud
Führen Sie den folgenden Befehl aus, um alle aktivierten Features aufzulisten:
gcloud container fleet features list
Feature auf Flottenebene deaktivieren
So deaktivieren Sie ein Feature auf Flottenebene in Ihrem Flotten-Hostprojekt:
Console
Nur die Flottenfeatures, die unter Andere auf Unternehmen ausgelegte Funktionen verwalten aufgeführt sind, können über die Google Cloud Console deaktiviert werden.
Rufen Sie in Ihrem Flotten-Hostprojekt die Seite Feature Manager auf:
Klicken Sie im Bereich für das Feature, das Sie deaktivieren möchten, auf Details.
Klicken Sie im angezeigten Detailbereich auf den Button Deaktivieren....
gcloud
Jedes Feature auf Flottenebene hat einen eigenen disable-Befehl. Führen Sie beispielsweise den folgenden Befehl in Ihrem Flotten-Host-Projekt aus, um Cloud Service Mesh für Ihre Flotte zu deaktivieren:
gcloud container fleet mesh disable
Eine vollständige Liste der Befehle finden Sie in der Referenzdokumentation zum Google Cloud SDK (und den entsprechenden Beta- und Alpha-Versionen). Weitere Einzelheiten finden Sie in den Dokumentationen der einzelnen Funktionen.
Das erwartete Verhalten nach dem Deaktivieren eines Features für Ihre Flotte finden Sie in der entsprechenden Feature-Dokumentation. In vielen Fällen ist die relevante Konfiguration auf Ihrem Cluster noch vorhanden, aber Sie können die Funktion nicht mehr zentral über Flottenbefehle oder die Google Cloud Console verwalten.
Autorisierung von Features
Um Features auf Flottenebene zu verwalten, müssen sie über die rollenbasierte Zugriffssteuerung autorisiert werden, um ihre Funktionen in Clustern auszuführen. Google Cloud verwendet einen Dienst namens Feature-Autorisierer, der automatisch die Berechtigungen für flottenaktivierte Funktionen festlegt und aktualisiert. So müssen Sie die Berechtigungen für die Funktionen nicht für jeden Cluster manuell festlegen, insbesondere wenn Google Aktualisierungen der Funktionen veröffentlicht.
Wenn Sie einen Cluster registrieren,
enthält das auf den Cluster angewendete Manifest eine
ClusterRoleBinding
mit der dem Feature-Autorisierer eine cluster-admin Rolle im Cluster zugewiesen wird,
und die Rolle ist mit einem Dienstkonto namens
service-project-number@gcp-sa-gkehub.iam.gserviceaccount.com verbunden.
Wenn Sie ein Feature mit flottenfähiger Funktion in Ihrem Projekt deaktivieren, löscht die Autorisierer die entsprechenden ClusterRole und ClusterRoleBinding für das Feature, wodurch die Funktion für den Cluster nicht mehr funktioniert.
Feature-Autorisierer in Audit-Logs anzeigen
So rufen Sie die Funktion "Autorisierter Nutzer" in den Audit-Logs von GKE auf:
Öffnen Sie den Log-Explorer in der Google Cloud Console.
Führen Sie die folgende erweiterte Abfrage aus:
resource.type="k8s_cluster" resource.labels.cluster_name="CLUSTER_NAME" resource.labels.location="CLUSTER_LOCATION" protoPayload.authenticationInfo.principalEmail="system:serviceaccount:gke-connect:connect-agent-sa" protoPayload.authenticationInfo.authoritySelector="service-PROJECT_NUMBER@gcp-sa-gkehub.iam.gserviceaccount.com"
Ersetzen Sie Folgendes:
CLUSTER_NAME: Der Name des Clusters, für den Sie die Logs aufrufen möchten.CLUSTER_LOCATION: Der Google Cloud Standort, an dem der Cluster erstellt wurde.PROJECT_NUMBER: die Google Cloud Projektnummer für das Projekt, zu dem der Cluster gehört.
Ermitteln Sie für Nicht-GKE-Cluster, wo die Kubernetes-Audit-Logs gespeichert sind, und führen Sie eine ähnliche Abfrage aus.