GKE On-Prem ist eine Hybrid-Cloud-Software, die Google Kubernetes Engine (GKE) in lokale Rechenzentren verfügbar macht. Mit GKE On-Prem können Sie Kubernetes-Cluster in Ihrer lokalen Umgebung erstellen, verwalten und aktualisieren und diese Cluster mit der Google Cloud Console verbinden.
In diesem Thema erhalten Sie einen technischen Überblick über GKE On-Prem. Informieren Sie sich anschließend über die Systemanforderungen.
Informationen zu Kubernetes
GKE On-Prem und GKE basieren auf Kubernetes, einer erweiterbaren Open-Source-Plattform zum Verwalten von Containeranwendungen. Kubernetes orchestriert Cluster, bei denen es sich um Knoten handelt (die auch als "Maschinen" bezeichnet werden), die Containeranwendungen ausführen.
GKE On-Prem beziehen
GKE On-Prem ist eine Kernkomponente von Anthos. Wenn Sie GKE On-Prem verwenden möchten, müssen Sie sich zuerst an das Vertriebsteam von Google wenden und ein Anthos-Abo erwerben.
Vorbereitungen für GKE On-Prem
Die Installation von GKE On-Prem erfordert einige obligatorische Aufgaben zur Einrichtung. In den folgenden Abschnitten werden diese Aufgaben beschrieben.
VMware vSphere-Virtualisierungsumgebung
Sie installieren GKE On-Prem auf einem VMware vSphere 6.5-Cluster, der in Ihrer lokalen Umgebung ausgeführt wird. vSphere ist die Servervirtualisierungssoftware von VMware.
Sie erwerben auch VMware vCenter und VMware ESXi. ESXi ist ein Hypervisor vom Typ 1, den Sie auf einer Reihe von physischen Hosts/Servern in Ihrem Rechenzentrum installieren. vCenter ist die webbasierte Benutzeroberfläche von vSphere zum Verwalten von Diensten für Rechenzentren. Sie bietet eine zentrale Ansicht aller ESXi-Hosts.
Insbesondere benötigen Sie die folgenden lizenzierten VMware-Produkte:
- VMware ESXI 6.5 mit einer Enterprise Plus-Lizenzversion, installiert auf einer Reihe von Hosts in Ihrem Rechenzentrum
- VMware vCenter 6.5 mit einer Standard-Lizenzversion, installiert auf einem Host in Ihrem Rechenzentrum
Weitere Informationen finden Sie in den folgenden VM-Ressourcen:
Load-Balancing
Beim Load-Balancing der Ebene 4 können Sie zwischen zwei Load-Balancing-Modi wählen: integriert oder manuell. Der integrierte Modus unterstützt F5 BIG-IP (den integrierten Load-Balancer von GKE On-Prem). Im manuellen Modus können Sie einen beliebigen Load-Balancer auswählen. GKE On-Prem bietet derzeit dokumentierte Anleitungen für die folgenden Load-Balancer:
Sie konfigurieren einen Load-Balancer in Ihrem Rechenzentrum, bevor Sie GKE On-Prem installieren. Bei der Installation wählen Sie aus, ob der integrierte (F5 BIG-IP) oder der manuelle Load-Balancing-Modus (ein Load-Balancer Ihrer Wahl) aktiviert werden soll. Beim manuellen Load-Balancing-Modus müssen Sie Ihren Knoten statische IP-Adressen zuweisen. DHCP-Server (Dynamic Host Configuration Protocol) können beim manuellen Load-Balancing-Modus nicht verwendet werden.
- Load-Balancer einrichten
- Anforderungen an den Load-Balancer
- Manuelles Load-Balancing aktivieren
- F5-Anforderungen
Authentifizierung
Wenn Sie Clients haben, die sich bei Ihren Clustern authentifizieren und auf Ihre Containerarbeitslasten zugreifen müssen, können Sie OpenID Connect (OIDC) mit einem Anbieter Ihrer Wahl oder mit Active Directory Federated Services (ADFS) verwenden.
Google Cloud-Projekt vorbereiten
Die Vorbereitung Ihres Google Cloud-Projekts umfasst Folgendes:
- Erstellen eines Google Cloud-Projekts und Aktivieren der erforderlichen APIs
- Binden von IAM-Rollen (Identity and Access Management) an die Dienstkonten
- Herunterladen der erforderlichen Befehlszeilentools, einschließlich HashiCorp Terraform, Version 11
Weitere Informationen finden Sie unter den folgenden Themen:
Administrator-Workstation erstellen
Das Erstellen der Administrator-Workstation umfasst Folgendes:
- Herunterladen der OVA-Datei für die Administrator-Workstation, die eine GKE On-Prem-Bundle-Datei enthält
- Kopieren einer Terraform-Konfigurationsdatei (TF) und einer Terraform-Variablendatei (DFVARS) und Ändern der Dateien, sodass Ihre vCenter- und vSphere-Konfiguration widergespiegelt wird
- Verwenden von Terraform zum Erstellen einer virtuellen Administrator-Workstation (VM) in vSphere
Weitere Informationen finden Sie unter den folgenden Themen:
So läuft die Installation von GKE On-Prem ab
Im Folgenden finden Sie eine allgemeine Zusammenfassung der Schritte, die während einer Installation ausgeführt werden: (siehe auch Übersicht über die Installation)
- Sie stellen eine SSH-Verbindung zu Ihrer Administrator-Workstation her.
- Sie führen
gkectl create-config
aus, um eine GKE On-Prem-Konfigurationsdatei zu generieren. Die Konfigurationsdatei deklariert eine Spezifikation für die Installation von GKE On-Prem. Sie ändern die Konfigurationsdatei mit Werten, die Ihren Anforderungen und Ihrer Umgebung entsprechen, beispielsweise den Spezifikationen Ihres Clusters, der OIDC-Authentifizierung, dem Load-Balancing, Stackdriver Logging und dem Google Cloud-Projekt, mit dem Sie sich registrieren möchten.
Sie führen
gkectl check-config
aus, um zu validieren, ob die geänderte Konfigurationsdatei für eine Installation verwendet werden kann.Sie führen
gkectl prepare
aus, um das Betriebssystem-Image von GKE On-Prem nach vSphere zu verschieben und als Vorlage für VMs zu markieren. Wenn Sie eine private Docker-Registry konfigurieren, werden mit diesem Befehl auch Container-Images von GKE On-Prem in die Registry verschoben.Sie führen
gkectl create cluster --config
mit der Konfigurationsdatei aus, um die GKE On-Prem-Cluster in Ihrem Rechenzentrum zu erstellen.
Am Ende einer erfolgreichen Installation sollte in vSphere Folgendes vorhanden sein:
- Eine Administrator-Workstation
- Ein Administratorcluster
- Ein Nutzercluster
Architektur
In GKE On-Prem gibt es einen Administratorcluster und standardmäßig drei Nutzercluster. Es gibt auch zwei Add-on-VMs und eine Administrator-Workstation-VM. Alle diese VMs werden in einem einzigen vSphere-Cluster ausgeführt.
Administrator-Workstation
Die Administrator-Workstation ist die VM in vSphere, von der aus Clusteradministratoren GKE On-Prem installieren und damit interagieren. Es ist die erste VM, die Sie erstellen, bevor Sie weitere Elemente erstellen.
Als Clusteradministrator verwenden Sie Terraform, um die Administrator-Workstation in vSphere zu erstellen. Die Administrator-Workstation umfasst Folgendes:
- Eine vollständige Bundle-Datei
- CLI-Tools für die Interaktion mit GKE On-Prem, vSphere und Google Cloud
Zum Erstellen der Administrator-Workstation laden Sie drei Dateien herunter:
- Die Open Virtual Appliance (OVA)-Datei der Administrator-Workstation. Dies ist ein versioniertes VM-Image der Administrator-Workstation. Sie importieren diese Datei in vSphere und markieren sie als VM-Vorlage. Anschließend verwendet Terraform die Vorlage, um die Administrator-Workstation in Ihrem vSphere-Cluster bereitzustellen.
- Terraform-Konfigurationsdatei (TF). Anhand dieser Anweisungen erstellt Terraform die Administrator-Workstation in Ihrem Cluster. Sie kopieren diese Datei auf Ihre lokale Workstation oder Ihren Laptop.
- Terraform-Konfigurationsvariablen-Datei (TFVARS). Sie füllen die Variablen in dieser Datei mit Werten aus Ihrer Umgebung. Die TF-Konfigurationsdatei verweist auf die Variablen der DFVARS-Datei. Sie kopieren diese Datei auf Ihre lokale Workstation oder Ihren Laptop.
Administratorcluster
Der Administratorcluster ist die Basisebene von GKE On-Prem. Sie führt die folgenden GKE On-Prem-Komponenten aus:
- Administratorsteuerungsebene: Die Administratorsteuerungsebene verarbeitet alle
gkectl
- und Kubernetes API-Aufrufe an und von GKE On-Prem. Die Administratorsteuerungsebene führt einige Aufrufe an und von vCenter-APIs aus. - Nutzersteuerungsebenen: Die Steuerungsebene eines Nutzerclusters. Leitet API-Anfragen an die Knoten des Clusters weiter. Jeder Cluster hat eine eigene Steuerungsebene, die im Administratorcluster ausgeführt wird. Nutzersteuerungsebenen führen auch einige Aufrufe an und von vCenter-APIs aus.
- Add-on-VMs: VMs, auf denen die Add-ons des Administratorclusters ausgeführt werden, beispielsweise Grafana, Prometheus, Istio-Komponenten und Stackdriver.
Nutzersteuerungsebenen werden vom Administratorcluster verwaltet. Sie werden auf Knoten in Administratorclustern ausgeführt, nicht in den Nutzerclustern selbst. Zur Verwaltung von Nutzersteuerungsebenen müssen Administratorcluster folgende Aufgaben erledigen:
- Verwalten der Maschinen, auf denen die Nutzercluster-Steuerungsebenen ausgeführt werden
- Erstellen, Aktualisieren und Löschen der Komponenten der Steuerungsebene
- Verfügbarmachen des Kubernetes API-Servers für den Nutzercluster
- Verwalten von Clusterzertifikaten
Nutzercluster
Nutzercluster: Hier können Sie Ihre Containerarbeitslasten und Dienste bereitstellen und ausführen.
Add-on-VMs
GKE On-Prem erstellt zwei VMs, um die Add-ons des Administratorclusters auszuführen, beispielsweise Grafana, Prometheus, Istio-Komponenten und Stackdriver.
Informationen zum Bundle
Das GKE On-Prem-Bundle ist ein TGZ-Archiv mit Versionsverwaltung, das alle Komponenten enthält, die zum Erstellen und Aktualisieren von GKE On-Prem-Clustern erforderlich sind.
Es gibt zwei Arten von Bundles:
Vollständiges Bundle
Das vollständige Bundle gke-onprem-vsphere-[VERSION]-full.tgz
ist in der Administrator-Workstation enthalten. Sie finden es unter /var/lib/gke/bundles
. Das vollständige Bundle wird für die erstmalige Installation von GKE On-Prem verwendet.
Dies ist eine große Datei, die Folgendes enthält:
- TAR-Datei mit Container-Images aller Clusterkomponenten
- YAML-Dateien dieser Clusterkomponenten.
- Knoten-Image von GKE On-Prem
Upgrade-Bundle
Das Upgrade-Bundle gke-onprem-vsphere-[VERSION].tgz
wird für das Upgrade von Clustern bereitgestellt.
Jedes Mal, wenn Sie ein Upgrade Ihrer Cluster ausführen, laden Sie das Bundle der jeweiligen Version unter Downloads herunter. Das Upgrade-Bundle enthält nur YAML-Konfigurationsdateien, mit denen die Clusterkomponenten aktualisiert werden.
Befehlszeilentools
Beim Installieren von GKE On-Prem laden Sie die folgenden Befehlszeilentools auf Ihre lokale Workstation oder Ihren lokalen Laptop herunter:
govc
terraform
gkectl
kubectl
(im Google Cloud CLI enthalten)gcloud
(in der gcloud CLI enthalten)
govc
govc
ist die Befehlszeilenschnittstelle zu vSphere. Sie verwenden govc
, wenn Sie die Administrator-Workstation erstellen, und Sie können damit Ihren vSphere-Cluster verwalten.
terraform
terraform
ist die Befehlszeilenschnittstelle zu HashiCorp Terraform. Mit terraform
erstellen und aktualisieren Sie die Administrator-Workstation.
gkectl
gkectl
ist die Befehlszeile von GKE On-Prem. Weitere Informationen finden Sie im Leitfaden.
Sie verwenden gkectl
für viele Aufgaben der Clusterverwaltung. Hierzu zählen Folgende:
- Cluster erstellen und verwalten
- Probleme diagnostizieren und beheben
- Clusterlogs erfassen und exportieren
kubectl
kubectl
ist die Befehlszeilenschnittstelle zu Kubernetes. Sie verwenden kubectl
zur Interaktion mit Kubernetes und Kubernetes-Clustern sowie für Aufgaben wie:
- In Clustern ausgeführte Containerarbeitslasten bereitstellen, verwalten und löschen
- Kubernetes-Ressourcen verwalten, bearbeiten und löschen
gcloud
Das Google Cloud CLI ist die Befehlszeilenschnittstelle zu Google Cloud. Sie verwenden die gcloud CLI für verschiedene Zwecke. Hierzu zählen:
- Authentifizierung gegenüber Ihrem Google Cloud-Projekt durchführen
- Dienstkonten und zugehörige private Schlüssel erstellen
- IAM-Rollen (Identity and Access Management) an Konten binden
Cluster bei der Google Cloud Console registrieren
Wenn Sie GKE On-Prem-Nutzercluster erstellen, können Sie Connect aktivieren, um sie automatisch bei der Google Cloud Console zu registrieren. Mit Connect können Sie Ihre lokalen Kubernetes-Cluster und Ihre Kubernetes-Cluster in der Cloud über dieselbe Google Cloud-Benutzeroberfläche aufrufen und sich bei ihnen anmelden.
Wenn Sie Connect aktivieren, wird ein Connect-Agent in jedem Nutzercluster erstellt. Der Connect-Agent ist eine Bereitstellung, mit der eine langlebige, verschlüsselte Verbindung zu Google Cloud über den Nutzercluster hergestellt wird, auf dem er ausgeführt wird.
Das Container-Image des Connect-Agents wird aus einem Container Registry-Repository abgerufen, das sich unter gcr.io
befindet.
Wenn Ihr Nutzercluster keine Verbindung zu gcr.io hat oder haben kann, müssen Sie eine private Docker-Registry verwenden, um eine Verbindung zur Google Cloud Console herzustellen.
Versionsverwaltung
Weitere Informationen zur Versionsverwaltung finden Sie unter Versionen.
Fehlerbehebung und Diagnostizieren von Problemen
Informationen zur Fehlerbehebung finden Sie in den folgenden Themen:
- Hilfe zur Fehlerbehebung für bestimmte Themen finden Sie unter Fehlerbehebung.
- Informationen zum Diagnostizieren von Clusterproblemen mit
gkectl
finden Sie unter Clusterprobleme diagnostizieren. - Informationen zum Diagnostizieren von Problemen mit Clusterknoten finden Sie unter Knotenprobleme mit der Debug-Toolbox beheben.
- Hilfe von Google finden Sie unter Support erhalten.
Platzhalterwerte in der GKE On-Prem-Dokumentation
Wenn Sie die Dokumentation zu GKE On-Prem verwenden, können Sie placeholder values in Codeblöcken ändern, wenn Sie darauf klicken. Klicken Sie im folgenden Block auf [YOUR_NAME] und prüfen Sie, ob der Wert bearbeitet werden kann:
Enter your name: [YOUR_NAME]
Dies kann nützlich sein, wenn Sie Platzhalterwerte eingeben möchten, bevor Sie Befehle kopieren und in Ihrer Umgebung ausführen.
Weitere Informationen
Lesen Sie als Nächstes das Thema Systemanforderungen, um zu erfahren, wie Sie Ihre lokale Umgebung vorbereiten.