Sie betrachten die Dokumentation für eine frühere Version von GKE On-Prem. Sehen Sie sich die aktuelle Dokumentation an.

Installation vorbereiten

Auf dieser Seite werden einige Schritte beschrieben, die Sie ausführen sollten, bevor Sie GKE On-Prem in Ihrer Umgebung installieren.

Hinweise

Sehen Sie sich die folgenden Themen an:

Beschränkungen

Einschränkung Beschreibung
Höchst- und Mindestwerte für Cluster und Knoten

Siehe Kontingente und Einschränkungen. Die Leistung Ihrer Umgebung kann sich auf diese Einschränkungen auswirken.

Eindeutigkeit für Nutzerclusternamen

Alle im selben Google Cloud-Projekt registrierten Nutzercluster müssen eindeutige Namen haben.

Kann nicht in mehr als einem vCenter und/oder vSphere-Rechenzentrum bereitgestellt werden

Derzeit können Sie einen Administratorcluster und eine Reihe von verknüpften Nutzerclustern nur in einem einzelnen vCenter und/oder vSphere Rechenzentrum bereitstellen. Sie können dieselben Administrator- und Nutzercluster nicht in mehr als einem vCenter und/oder einem vSphere-Rechenzentrum bereitstellen.

Clusterkonfigurationen können nach der Erstellung nicht deklarativ geändert werden Sie können zusätzliche Cluster erstellen und können die Größe vorhandener Cluster ändern. Sie können einen vorhandenen Cluster jedoch nicht über seine Konfigurationsdatei ändern.

Google Cloud-Projekt erstellen

Erstellen Sie ein Google Cloud-Projekt, falls Sie noch keines haben. Sie benötigen ein Projekt, um GKE On-Prem auszuführen.

Die erforderlichen Befehlszeilentools installieren

  • Installieren Sie das Cloud SDK, das die gcloud-Befefehlszeile für Google Cloud enthält.

  • Installieren Sie govc, die CLI für VMware vSphere.

  • Installieren Sie Terraform 0.11, das die terraform-CLI enthält. Folgen Sie der Installationsanleitung von Terraform, um die Installation zu prüfen und die Variable PATH einzurichten.

Das Cloud SDK so konfigurieren, dass es den Proxy bzw. die Firewall von Ihrem Laptop/Computer aus verwendet

Wenn Sie einen Proxy verwenden, um eine Verbindung zum Internet über Ihren Laptop oder Ihre Workstation herzustellen, müssen Sie möglicherweise das Cloud SDK für den Proxy konfigurieren, damit Sie die Befehle gcloud und gsutil ausführen können. Eine Anleitung finden Sie unter Cloud SDK für die Verwendung hinter einem Proxy bzw. einer Firewall konfigurieren.

gcloud für den Zugriff auf Google Cloud autorisieren

Melden Sie sich nach der Installation des Cloud SDK mit Ihren Anmeldedaten bei Google Cloud an:

gcloud auth login

Standard-Google-Cloud-Projekt festlegen

Wenn Sie ein Google Cloud-Standardprojekt festlegen, werden alle Cloud SDK-Befehle für das Projekt ausgeführt, sodass Sie Ihr Projekt nicht für jeden Befehl angeben müssen: Führen Sie den folgenden Befehl aus, um ein Standardprojekt festzulegen:

gcloud config set project [PROJECT_ID]

Ersetzen Sie [PROJECT_ID] durch Ihre Projekt-ID. Sie können Ihre Projekt-ID in der Cloud Console oder durch Ausführen von gcloud config get-value project ermitteln.

Google Cloud-Dienstkonten erstellen

Bevor Sie GKE On-Prem zum ersten Mal installieren, verwenden Sie gcloud, um vier Google Cloud Dienstkonten zu erstellen. GKE On-Prem verwendet diese Dienstkonten, um Aufgaben in Ihrem Auftrag auszuführen. In den folgenden Abschnitten wird der Zweck jedes Kontos beschrieben.

Zugriffsdienstkonto

Sie verwenden dieses Dienstkonto, um die Binärdateien von GKE On-Prem aus Cloud Storage herunterzuladen. Es ist das einzige Dienstkonto, das Google auf die weiße Liste setzt.

Führen Sie den folgenden Befehl aus, um access-service-account zu erstellen:

gcloud iam service-accounts create access-service-account

Dienstkonto registrieren

Connect verwendet dieses Dienstkonto, um Ihre GKE On-Prem-Cluster bei der Google Cloud Console zu registrieren.

Führen Sie den folgenden Befehl aus, um register-service-account zu erstellen:

gcloud iam service-accounts create register-service-account

Dienstkonto verbinden

Connect verwendet dieses Dienstkonto, um eine Verbindung zwischen GKE On-Prem-Clustern und Google Cloud aufrechtzuerhalten.

Führen Sie den folgenden Befehl aus, um connect-service-account zu erstellen:

gcloud iam service-accounts create connect-service-account

Das Dienstkonto der Operations Suite von Google Cloud

Mit diesem Dienstkonto kann GKE On-Prem Logging- und Monitoringdaten in die Operations Suite von Google Cloud schreiben:

Führen Sie den folgenden Befehl aus, um stackdriver-service-account zu erstellen:

gcloud iam service-accounts create stackdriver-service-account

Projekt und Konten auf die weiße Liste setzen

Nach dem Erwerb von Anthos hat Google folgende Elemente auf die weiße Liste gesetzt, um Ihnen Zugriff auf GKE On Prem und Connect zu gewähren:

  • Ihr Google Cloud-Projekt
  • Ihr Google-Konto und einzelne Google-Konten von Teammitgliedern.
  • Ihr Zugriffsdienstkonto

Wenn Sie ein anderes Projekt oder Dienstkonto verwenden oder zusätzliche Nutzer aktivieren möchten, hilft Ihnen der Google Cloud-Support oder Ihr Technical Account Manager weiter. Öffnen Sie eine Supportanfrage über die Cloud Console oder das Google Cloud-Supportcenter.

Erforderliche APIs im Projekt aktivieren

Sie müssen in Ihrem Google Cloud-Projekt die folgenden APIs aktivieren:

  • cloudresourcemanager.googleapis.com
  • container.googleapis.com
  • gkeconnect.googleapis.com
  • gkehub.googleapis.com
  • serviceusage.googleapis.com
  • stackdriver.googleapis.com
  • monitoring.googleapis.com
  • logging.googleapis.com

Aktivieren Sie diese APIs mit folgendem Befehl:

gcloud services enable \
cloudresourcemanager.googleapis.com \
container.googleapis.com \
gkeconnect.googleapis.com \
gkehub.googleapis.com \
serviceusage.googleapis.com \
stackdriver.googleapis.com \
monitoring.googleapis.com \
logging.googleapis.com

Cloud Identity and Access Management-Rollen Ihren Dienstkonten zuweisen

Cloud IAM gewährt Konten Berechtigungen zum Aufrufen von Google Cloud APIs. Weisen Sie diesen Dienstkonten dedizierte Cloud IAM-Rollen für die Berechtigungsisolation zu.

E-Mail-Adressen der Dienstkonten auflisten

Geben Sie zuerst die Dienstkonten in Ihrem Google Cloud-Projekt an:

gcloud iam service-accounts list

Für ein Google Cloud-Projekt namens my-gcp-project sieht die Ausgabe dieses Befehls so aus:

gcloud iam service-accounts list
NAME                                    EMAIL
                                        access-service-account@my-gcp-project.iam.gserviceaccount.com
                                        register-service-account@my-gcp-project.iam.gserviceaccount.com
                                        connect-service-account@my-gcp-project.iam.gserviceaccount.com
                                        stackdriver-service-account@my-gcp-project.iam.gserviceaccount.com

Notieren Sie sich die E-Mail-Adressen der einzelnen Konten. Geben Sie für jeden der folgenden Abschnitte das E-Mail-Konto des entsprechenden Kontos an.

Dienstkonto registrieren

Weisen Sie Ihrem Registrierungsdienstkonto die Rollen gkehub.admin und serviceuseage.serviceUsageViewer zu:

gcloud projects add-iam-policy-binding [PROJECT_ID] \
--member "serviceAccount:[REGISTER_SERVICE_ACCOUNT_EMAIL]" \
--role "roles/gkehub.admin"
gcloud projects add-iam-policy-binding [PROJECT_ID] \
--member "serviceAccount:[REGISTER_SERVICE_ACCOUNT_EMAIL]" \
--role "roles/serviceusage.serviceUsageViewer"

Dienstkonto verbinden

Weisen Sie Ihrem Verbindungsdienstkonto die Rolle gkehub.connect zu:

gcloud projects add-iam-policy-binding [PROJECT_ID] \
--member "serviceAccount:[CONNECT_SERVICE_ACCOUNT_EMAIL]" \
--role "roles/gkehub.connect"

Dienstkonto der Google Cloud Operations Suite

Weisen Sie dem Dienstkonto der Operations Suite von Google Cloud die Rollen stackdriver.resourceMetadata.writer, logging.logWriter und monitoring.metricWriter zu:

gcloud projects add-iam-policy-binding [PROJECT_ID] \
--member "serviceAccount:[STACKDRIVER_SERVICE_ACCOUNT_EMAIL]" \
--role "roles/stackdriver.resourceMetadata.writer"
gcloud projects add-iam-policy-binding [PROJECT_ID] \
--member "serviceAccount:[STACKDRIVER_SERVICE_ACCOUNT_EMAIL]" \
--role "roles/logging.logWriter"
gcloud projects add-iam-policy-binding [PROJECT_ID] \
--member "serviceAccount:[STACKDRIVER_SERVICE_ACCOUNT_EMAIL]" \
--role "roles/monitoring.metricWriter"

Stackdriver-Arbeitsbereich erstellen

Stackdriver Logging und Stackdriver Monitoring sind für GKE On-Prem standardmäßig aktiviert. Damit Stackdriver Monitoring ordnungsgemäß funktioniert, müssen Sie einen Stackdriver-Arbeitsbereich erstellen.

Informationen zum Erstellen eines Stackdriver-Arbeitsbereichs finden Sie in der Stackdriver Monitoring-Dokumentation unter Arbeitsbereich schnell abrufen.

Adressen auf die weiße Liste für Ihren Proxy setzen

Wenn Ihre Organisation für den Internetzugriff einen HTTP-Proxy benötigt, müssen Sie die folgenden Adressen für Ihren Proxy auf die weiße Liste setzen.

In den folgenden Abschnitten werden die Adressen ausführlich erläutert.

Google-Adressen

GKE On-Prem verwendet mehrere Google APIs zum Erstellen und Verwalten von Clustern. Setzen Sie die folgenden Google-Adressen im Proxy auf die weiße Liste:

Adresse Zweck
accounts.google.com Ermöglicht den Zugriff auf Google-Konten für den Zugriff auf Ihr Google Cloud-Projekt.
cloudresourcemanager.googleapis.com Erstellt, liest und aktualisiert Metadaten für Google Cloud-Ressourcencontainer.
console.cloud.google.com Ermöglicht den Zugriff auf die Google Cloud Console.
container.googleapis.com Ermöglicht den Zugriff auf die Google Kubernetes Engine API.
gcr.io Ermöglicht den Zugriff auf Container Registry-Repositories, einschließlich des GKE On-Prem-Repositorys.
gkeconnect.googleapis.com Ermöglicht den Zugriff auf Connect, um eine langlebige, verschlüsselte Verbindung mit Google Cloud herzustellen.
gkehub.googleapis.com Ermöglicht den Zugriff auf die Google Cloud Console für die Clusterregistrierung bei Ihrem Google Cloud-Projekt.
logging.googleapis.com Ermöglicht den Zugriff auf die Cloud Logging API für Logging-Features von Clustermesswerten.
monitoring.googleapis.com Ermöglicht den Zugriff auf die Cloud Monitoring API für Cluster-Monitoring-Features.
oauth2.googleapis.com Ermöglicht den Zugriff auf die OAuth2 API von Google für die Authentifizierung.
serviceusage.googleapis.com
storage.googleapis.com Ermöglicht den Zugriff auf Cloud Storage-Buckets.
googleapis.com Gewährt Zugriff auf produktspezifische Google Cloud-Endpunkte.

HashiCorp-Adressen

Sie verwenden die HashiCorp Terraform-Version 0.11, um in vSphere eine Administrator-Workstation-VM zu erstellen. Wenn Sie Terraform in einer Umgebung mit einem Proxy oder einer Firewall ausführen möchten, müssen Sie die folgenden HashiCorp-Adressen auf die weiße Liste setzen:

Adresse Zweck
checkpoint-api.hashicorp.com Ermöglicht den Zugriff auf die Versions- und Benachrichtigungsinformationen von HashiCorp für verschiedene Open-Source- und proprietäre Produkte.
releases.hashicorp.com Ermöglicht den Zugriff auf die Binärdateien von HashiCorp.

VM-Server, Load-Balancer und andere Adressen

Achten Sie auch darauf, die folgenden Adressen für Ihren Proxy auf die weiße Liste zu setzen. Diese Adressen können variieren:

Adresse Zweck
IP-Adresse des vCenter-Servers Ermöglicht den Internetzugriff für vCenter Server.
Alle IP-Adressen aller ESXi-Hosts Ermöglichen Internet-Traffic für Ihre ESXi-Hosts, auf denen GKE On-Prem-Cluster ausgeführt werden.
Andere IP-Adressen, die Sie auf Ihrem Load-Balancer konfigurieren möchten. Ermöglichen Internet-Traffic für andere IP-Adressen, z. B. Clients und Arbeitslasten.

Pod- und Dienstbereiche festlegen

Für den Administratorcluster und für jeden Nutzercluster, den Sie erstellen möchten, müssen Sie zwei verschiedene CIDR-IPv4-Blöcke reservieren: einen für Pod-IPs und einen für Dienst-IPs.

Die Größen dieser Bereiche hängen davon ab, wie viele Pods und Dienste Sie erstellen möchten. Wenn Sie beispielsweise weniger als 256 Dienste in einem Cluster erstellen möchten, können Sie einen /24-Dienstbereich wie 10.96.233.0/24 einrichten. Wenn Sie weniger als 4.096 Pods in Ihrem Cluster erstellen möchten, können Sie einen /20-Pod-Bereich einrichten, z. B. 172.16.0.0/20.

Für einen bestimmten Cluster dürfen sich die Bereiche "Dienst" und "Pod" nicht überschneiden. Außerdem dürfen sich die Dienst- und Pod-Bereiche nicht mit IP-Adressen überschneiden, die für Knoten in einem Cluster verwendet werden.

Load-Balancer vorbereiten

GKE On-Prem-Cluster können mit einem der beiden Load-Balancing-Modi "Integriert" und "Manuell" ausgeführt werden. Mit dem integrierten Modus werden GKE On-Prem-Cluster mit dem F5 BIG-IP-Load-Balancer ausgeführt. Im manuellen Modus konfigurieren Sie manuell ein anderes Load-Balancing-Modul.

F5 BIG-IP-Partitionen vorbereiten

Wenn Sie den integrierten Modus verwenden, müssen Sie eine F5 BIG-IP-Partition erstellen, um Load-Balancing für jeden GKE On-Prem-Cluster zu übernehmen, den Sie erstellen möchten.

Zuerst müssen Sie mindestens zwei Partitionen erstellen: eine für den Administrator-Cluster und eine für einen Nutzercluster. Sie müssen eine Partition erstellen, bevor Sie den entsprechenden Cluster erstellen.

Verwenden Sie Ihre Clusterpartitionen nicht für andere Zwecke. Jeder Cluster muss eine Partition haben, die ausschließlich für diesen Cluster verwendet wird.

Weitere Informationen zum Erstellen von Partitionen finden Sie in der Dokumentation zu F5 BIG-IP unter Verwaltungspartition erstellen.

Manuellen Load-Balancing-Modus nutzen

Der manuelle Load-Balancing-Modus erfordert mehr Konfiguration als der integrierte Modus. Weitere Informationen finden Sie unter Manuelles Load-Balancing aktivieren.