GKE on AWS-Architektur

GKE on AWS ist ein verwalteter Dienst, mit dem Sie Kubernetes-Cluster in Ihrem AWS-Konto bereitstellen, betreiben und skalieren können.

Architektur von GKE on AWS, die den Google Cloud-Dienst und Cluster mit einer Steuerungsebene und Knotenpools zeigt

Ressourcenverwaltung

GKE on AWS verwendet AWS APIs, um die für Ihren Cluster erforderlichen Ressourcen bereitzustellen, einschließlich virtueller Maschinen, verwalteter Laufwerke, Autoscaling-Gruppe, Sicherheitsgruppen und Load-Balancer.

Sie können Cluster mit der Google Cloud CLI oder der GKE Multi-Cloud API erstellen, beschreiben und löschen.

Bei AWS authentifizieren

Beim Einrichten von GKE on AWS erstellen Sie in Ihrem AWS-Konto eine AWS-IAM-Rolle mit den erforderlichen Berechtigungen. Sie erstellen auch ein Dienstkonto in Ihrem Google Cloud Google Cloud-Projekt, um eine Vertrauensstellung für die AWS-IAM-Identitätsföderation herzustellen.

Weitere Informationen dazu finden Sie in der Authentifizierungsübersicht.

Ressourcen in Google Cloud

GKE on AWS verwendet ein Google Cloud-Projekt zum Speichern von Clusterkonfigurationsinformationen in Google Cloud.

Flotten und Connect

GKE on AWS registriert jeden Cluster bei der Erstellung in einer Flotte. Connect ermöglicht den Zugriff auf Features zur Cluster- und Arbeitslastverwaltung von Google Cloud. Der Name der Fleet-Mitgliedschaft eines Clusters entspricht dem Clusternamen.

Sie können Features wie Config Management und Anthos Service Mesh in Ihrer Flotte aktivieren.

Clusterarchitektur

GKE on AWS stellt Cluster mit privaten Subnetzen in Ihrer AWS Virtual Private Cloud bereit. Jedes Cluster besteht aus den folgenden Komponenten:

  • Steuerungsebene: Die Kubernetes-Steuerungsebene verwendet eine Hochverfügbarkeitsarchitektur mit drei Replikaten. Auf jedem Replikat werden alle Kubernetes-Komponenten ausgeführt, einschließlich kube-apiserver, kube-controller-manager, kube-scheduler und etcd. Jede Instanz etcd speichert Daten in einem EBS-Volume und verwendet eine Netzwerkschnittstelle, um mit anderen etcd-Instanzen zu kommunizieren. Ein Standard-Load-Balancer wird verwendet, um den Traffic auf den Kubernetes API-Endpunkt kube-apiserver zu verteilen.

  • Knotenpools: Ein Knotenpool ist eine Gruppe von Kubernetes-Worker-Knoten mit derselben Konfiguration, einschließlich Instanztyp, Laufwerkskonfiguration und Instanzprofil. Alle Knoten in einem Knotenpool werden im selben Subnetz ausgeführt. Für Hochverfügbarkeit können Sie mehrere Knotenpools in verschiedenen Subnetzen in derselben AWS-Region bereitstellen.

Das folgende Diagramm zeigt ein Beispiel für eine VPC, einen Knotenpool und eine Struktur der Steuerungsebene, einschließlich NAT-Gateway (Network Address Translation) und Load-Balancer. Erstellen Sie diese Infrastruktur mit den Anleitungen AWS-VPC erstellen und Kurzanleitung.

Grafik: Beispiel-VPC

Nächste Schritte