Was verwendet Connect?

Thema zuletzt geändert am: 18. Juni 2024

Wenn Sie Ihre Kubernetes-Cluster mit Google Cloud über Connect registrieren, wird eine langlebige, authentifizierte und verschlüsselte Verbindung zwischen Ihren Clustern und der Google Cloud-Kontrollebene hergestellt. Über die Verbindung werden Informationen zu Clustern in derGoogle Cloud -Konsole angezeigt. Außerdem können Sie mithilfe von GKE Enterprise-Komponenten und ‑Funktionen wie der Konfigurationsverwaltung Konfigurationen und Ressourcen für Cluster verwalten und bereitstellen.

In diesem Thema wird die Art der Verbindung zwischen Google Cloud und Connect beschrieben. Außerdem finden Sie hier Details zu den Google Cloud-Controllern, die über Connect auf Ihren Clustern ausgeführt werden.

Informationen zur Verbindung zwischen Google Cloud und Connect

Wie im Thema Sicherheitsfunktionen beschrieben, sendet nur die Google Cloud -Steuerungsebene Anfragen über die Verbindung zu jedem verbundenen Cluster (z. B. zum API-Server eines Clusters). Der Cluster wiederum sendet Antworten an die Steuerungsebene zurück. (Clusterdienste und -ressourcen können keine Anfragen an die Steuerungsebene über Connect initiieren.) Über die Verbindung können autorisierte Nutzer und die Google-Automatisierung die Cluster erreichen und sich authentifizieren.

So kann beispielsweise die Google Cloud Console über Connect Informationen zu Arbeitslasten und Diensten abrufen. Außerdem kann Config Management den Connect-Cluster-Agenten installieren oder aktualisieren und den Synchronisierungsstatus beobachten. Mit Connect kann auch der Metering-Agent die Anzahl der vCPUs in einem verbundenen Cluster beobachten.

Connect bietet keine Datenübertragung für Container-Images, Load-Balancing, Datenbankverbindungen, Logging oder Monitoring. Dafür müssen Sie Verbindungen für Personen parallel herstellen.

Google Cloud Console-Nutzerzugriff auf Cluster über Connect

Nachdem sich Nutzer in Ihrer Organisation über die Google Cloud -Konsole in einem Cluster anmelden, haben sie bestimmte Clusterberechtigungen, die von der ihnen zugewiesenen rollenbasierten Zugriffssteuerung (Role-Based Access Control, RBAC) abhängen. Der Cluster (nicht Connect) erzwingt die Berechtigungen. Mit Standard-Kubernetes-Logs können Sie die Aktionen beobachten, die jeder Nutzer bei der Verwaltung eines Clusters ausgeführt hat.

In der folgenden Tabelle sehen Sie, in welchen Bereichen der Google Cloud Console Nutzer über Connect mit Clustern interagieren können.

BereichGoogle Cloud Console Optionen für Nutzer
Kubernetes Engine Bei der Flotte registrierte Cluster und Arbeitslasten verwalten, GKE Enterprise-Komponenten verwalten
Knative Serving Dienste und Anwendungen erstellen, bereitstellen und verwalten.
Marketplace Drittanbieteranwendungen bereitstellen und verwalten.

Google Cloud-Controllerzugriff auf Cluster über Connect

Google Cloud-Controller greifen über den Connect Agent auf einen Cluster von der Google Cloud -Steuerungsebene aus zu. Diese Controller bieten Verwaltung und Automatisierung für die Funktionen, die Sie in Ihren Clustern aktivieren. Config Management hat beispielsweise einenGoogle Cloud-Controller, mit dem sich der Lebenszyklus von In-Cluster-Agenten steuern lässt. Außerdem bietet er eine Benutzeroberfläche, über die sich der Status von Config Management in mehreren Clustern konfigurieren und abrufen lässt.

Verschiedene Controller greifen auf Cluster mit unterschiedlichen Identitäten zu. Sie können die Aktivitäten jedes Controllers in Kubernetes-Audit-Logs prüfen.

In der folgenden Tabelle wird zusammengefasst, wie Google Cloud-Controller über Connect funktionieren. Die Tabelle enthält wichtige Details zu Controllern: die erforderlichen Berechtigungen, ihre IDs in Kubernetes-Audit-Logs und ob sie deaktiviert werden können.

Wenn Sie eine Komponente in diesem Kontext deaktivieren, wird sie vollständig deaktiviert, ohne einzelne Teile der Komponente in Clustern verwenden zu können.

Komponentenname Kann deaktiviert werden? Clusterrolle / RBAC-Berechtigungen Beschreibung ID in Cluster-Audit-Logs
Feature-Autorisierer Nein (standardmäßig aktiviert) cluster-admin

Mit der Feature-Autorisierer-Funktion wird RBAC für flottenfähige Komponenten oder Funktionen hinzugefügt, die auf Kubernetes-Clustern ausgeführt werden. So wird sichergestellt, dass jede Komponente die spezifischen Berechtigungen hat, die zum Ausführen ihrer Funktionen erforderlich sind.

Sie können die Funktion "Autorisieren" nicht deaktivieren, solange im Projekt registrierte Mitgliedschaften vorhanden sind.

Weitere Informationen finden Sie unter Feature-Autorisierung in einer Flotte.

service-project-number@gcp-sa-gkehub.iam.gserviceaccount.com
Config Management Ja (standardmäßig deaktiviert) cluster-admin

Der Config Management-Controller verwaltet seine eigenen In-Cluster-Agents und bietet eine Benutzeroberfläche, die den Status von Config Management für alle Cluster in einer Flotte anzeigt.

Der Controller installiert seine clusterinternen Komponenten und erstellt ein lokales Dienstkonto mit den entsprechenden Berechtigungen, um alle Arten von Kubernetes-Konfigurationen für Nutzer bereitzustellen. Wenn er In-Cluster-Komponenten nicht installiert oder verwaltet, liest der Config Management-Controller Statusinformationen von seinem Cluster-Agent.

service-project-number@gcp-sa-acm.iam.gserviceaccount.com
Nutzungsmessung Nein (standardmäßig aktiviert) Siehe RBAC-Definition

Der Messwert-Controller liest grundlegende Informationen über verbundene Cluster, um Abrechnungsdienste bereitzustellen.

Für diesen Controller sind folgende Berechtigungen erforderlich:

  • Messwert anhand der vCPU-Kapazität des Knotens.
  • Benutzerdefinierte metering.gke.io/usagerecords-Ressource beobachten und löschen.
  • Benutzerdefinierte Ressource anthos.gke.io/entitlements erstellen und aktualisieren.

Sie können die Messung nicht deaktivieren, solange im Projekt registrierte Mitgliedschaften vorhanden sind.

service-project-number@gcp-sa-mcmetering.iam.gserviceaccount.com

RBAC für bestimmte Komponenten, die über Connect ausgeführt werden

Die folgenden API-Definitionen zeigen die Zugriffssteuerungsberechtigungen für verschiedene Komponentenressourcen, die über Connect ausgeführt werden.

RBAC für die Nutzungsmessung über Connect

apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  labels:
    hub.gke.io/owner-feature: metering
    hub.gke.io/project: [PROJECT_ID]
  name: metering
  selfLink: /apis/rbac.authorization.k8s.io/v1/clusterroles/metering
rules:
- apiGroups:
  - ""
  resources:
  - nodes
  verbs:
  - get
  - watch
  - list
- apiGroups:
  - metering.gke.io
  resources:
  - usagerecords
  verbs:
  - get
  - list
  - watch
  - delete
- apiGroups:
  - anthos.gke.io
  resources:
  - entitlements
  verbs:
  - create
  - delete
  - get
  - list
  - update
  - watch
- apiGroups:
  - apiextensions.k8s.io
  resources:
  - customresourcedefinitions
  verbs:
  - create
  - list
  - watch
- apiGroups:
  - apiextensions.k8s.io
  resourceNames:
  - entitlements.anthos.gke.io
  resources:
  - customresourcedefinitions
  verbs:
  - get