In diesem Dokument wird gezeigt, wie Sie eine Administrator-Workstation für Anthos-Cluster auf VMware (GKE On-Prem) erstellen, die Sie zum Erstellen von Clustern verwenden können.
Für die Schritte in diesem Dokument wird das gkeadm
-Befehlszeilentool verwendet, das für 64-Bit-Linux, Windows 10, Windows Server 2019 und macOS 10.15 oder höher verfügbar ist.
Diese Anleitung ist vollständig. Eine kürzere Einführung zum Erstellen einer Administrator-Workstation finden Sie unter Administrator-Workstation erstellen (Kurzanleitung).
Hinweise
Sie müssen Ihre vCenter-Serveradresse kennen.
Sie müssen den Pfad Ihres CA-Zertifikats kennen.
Installieren Sie die Google Cloud CLI.
Erstellen Sie ein oder mehrere Google Cloud-Projekte, wie unter Mehrere Google Cloud-Projekte verwenden beschrieben.
Dienstkonten planen
Wenn Sie gkeadm
zum Erstellen einer Administrator-Workstation verwenden, können Sie gkeadm
erlauben, die meisten Ihrer Dienstkonten und Schlüssel für Sie zu erstellen. In diesem Fall weist gkeadm
den Dienstkonten auch die entsprechenden Rollen der Identitäts- und Zugriffsverwaltung zu.
Alternativ können Sie Ihre Dienstkonten und Schlüssel manuell erstellen. In diesem Fall müssen Sie Ihren Dienstkonten manuell IAM-Rollen zuweisen.
Das manuelle Erstellen von Dienstkonten bietet mehr Flexibilität, als wenn gkeadm
dies für Sie tut:
Automatisch erstellte Dienstkonten haben dasselbe übergeordnete Google Cloud-Projekt wie Ihr Dienstkonto für den Komponentenzugriff. Wenn Sie ein Dienstkonto manuell erstellen, können Sie das übergeordnete Google Cloud-Projekt auswählen.
Automatisch erstellte Dienstkonten erhalten alle IAM-Rollen für das übergeordnete Google Cloud-Projekt Ihres Komponentenzugriffs-Dienstkontos. Das ist in Ordnung, wenn das das einzige Google Cloud-Projekt ist, das mit Ihren Clustern verknüpft ist. Wenn Sie Ihre Cluster jedoch mit mehreren Google Cloud-Projekten verknüpfen möchten, müssen Sie einem Dienstkonto in einem Google Cloud-Projekt Ihrer Wahl die erforderliche Flexibilität gewähren.
Wenn Sie eigene Dienstkonten erstellen möchten, folgen Sie der Anleitung unter Dienstkonten und Schlüssel.
Unabhängig davon, ob gkeadm
Dienstkonten automatisch für Sie erstellt, müssen Sie ein Dienstkonto manuell erstellen: Ihr Dienstkonto für den Komponentenzugriff. Eine Anleitung zum Erstellen Ihres Dienstkontos für den Komponentenzugriff und zum Zuweisen der entsprechenden IAM-Rollen finden Sie unter Dienstkonto für den Komponentenzugriff.
Vorlagen für Konfigurationsdateien erstellen
Laden Sie gkeadm
in Ihr aktuelles Verzeichnis herunter.
Generieren Sie Vorlagen:
./gkeadm create config
Mit dem vorherigen Befehl wurden diese Dateien in Ihrem aktuellen Verzeichnis erstellt:
credential.yaml
admin-ws-config.yaml
credential.yaml
ausfüllen
Geben Sie in credential.yaml
Ihren vCenter-Nutzernamen und das Passwort ein. Beispiel:
kind: CredentialFile items: - name: vCenter username: "my-account-name" password: "AadmpqGPqq!a"
admin-ws-config.yaml
ausfüllen
Mehrere Felder in admin-ws-config.yaml
sind bereits mit Standardwerten oder generierten Werten ausgefüllt. Sie können die ausgefüllten Werte beibehalten oder nach Bedarf Änderungen vornehmen.
Felder, die Sie ausfüllen müssen
Füllen Sie die folgenden Pflichtfelder aus. Weitere Informationen zum Ausfüllen der Felder finden Sie unter Konfigurationsdatei für die Administrator-Workstation.
gcp: componentAccessServiceAccountKeyPath: "Fill in" vCenter: credentials: address: "Fill in" datacenter: "Fill in" datastore: "Fill in" cluster: "Fill in" network: "Fill in" resourcePool: "Fill in" caCertPath: "Fill in"
Wenn sich Ihre Administrator-Workstation hinter einem Proxyserver befindet, füllen Sie das Feld proxyURL
aus:
adminWorkstation: proxyURL: "Fill in"
Wenn Sie möchten, dass Ihre Administrator-Workstation ihre IP-Adresse von einem DHCP-Server abruft, setzen Sie ipAllocationMode
auf "dhcp"
und entfernen den Abschnitt hostconfig
:
adminWorkstation: network: ipAllocationMode: "dhcp"
Wenn Sie eine statische IP-Adresse für Ihre Administrator-Workstation angeben möchten, legen Sie ipAllocationMode
auf "static"
fest und füllen den Abschnitt hostconfig
aus. :
adminWorkstation: network: ipAllocationMode: "static" hostconfig: ip: "Fill in" gateway: "Fill in" netmask: "Fill in" dns: - "Fill in"
Anmelden
Das Google-Konto, das als SDK-Attribut account
festgelegt ist, wird als SDK-Konto bezeichnet. Das Befehlszeilentool gkeadm
verwendet Ihr SDK-Konto, um die OVA der Administrator-Workstation herunterzuladen und Dienste in Ihrem Google Cloud-Projekt zu aktivieren.
Wenn Sie festlegen, dass gkeadm
automatisch Dienstkonten für Sie erstellt, verwendet gkeadm
Ihr SDK-Konto auch, um Dienstkonten und Schlüssel zu erstellen sowie Dienstkonten Rollen zuzuweisen.
Legen Sie deshalb das account
-Attribut des SDK fest, bevor Sie gkeadm
ausführen, um eine Administrator-Workstation zu erstellen.
Melde dich mit einem beliebigen Google-Konto an. Dadurch wird das SDK-Attribut account
festgelegt:
gcloud auth login
Prüfen Sie, ob das SDK-Attribut account
korrekt festgelegt ist:
gcloud config list
Die Ausgabe enthält die Werte des SDK-Attributs account
.
Beispiel:
[core] account = my-name@google.com disable_usage_reporting = False Your active configuration is: [default]
Ihrem SDK-Konto Rollen zuweisen
Ihr SDK-Konto muss im übergeordneten Google Cloud-Projekt Ihres Komponentenzugriffsdienstkonto die folgende IAM-Rolle haben.
Dadurch kann gkeadm
Dienste im Google Cloud-Projekt aktivieren.
serviceUsage.serviceUsageAdmin
Wenn gkeadm
automatisch Dienstkonten für Sie erstellen soll, muss Ihr SDK-Konto auch die folgenden Rollen für das übergeordnete Projekt Ihres Dienstkontos für den Komponentenzugriff haben. Dadurch kann gkeadm
Dienstkonten und Schlüssel erstellen.
resourcemanager.projectIamAdmin
iam.serviceAccountCreator
iam.serviceAccountKeyAdmin
Wenn Sie einem Google Cloud-Projekt Rollen zuweisen möchten, benötigen Sie bestimmte Berechtigungen dafür. Weitere Informationen finden Sie unter Zugriff auf Ressourcen erteilen, ändern und entziehen.
Wenn Sie die erforderlichen Berechtigungen haben, können Sie die Rollen selbst zuweisen. Andernfalls muss eine andere Person in Ihrer Organisation die Rollen für Sie zuweisen.
So weisen Sie dem SDK-Konto die erforderliche Rolle zu:
Linux und macOS
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="user:ACCOUNT" \ --role="roles/serviceusage.serviceUsageAdmin"
Windows
gcloud projects add-iam-policy-binding PROJECT_ID ^ --member="user:ACCOUNT" ^ --role="roles/serviceusage.serviceUsageAdmin"
Ersetzen Sie Folgendes:
PROJECT_ID
: die ID des übergeordneten Google Cloud-Projekts Ihres Komponentenzugriffs-DienstkontosACCOUNT
ist das SDK-Konto.
So weisen Sie zusätzliche Rollen zu, wenn gkeadm
automatisch Dienstkonten erstellen soll.
Linux und macOS
gcloud projects add-iam-policy-binding PROJECT_ID \ --member="user:ACCOUNT" \ --role="roles/resourcemanager.projectIamAdmin" gcloud projects add-iam-policy-binding PROJECT_ID \ --member="user:ACCOUNT" \ --role="roles/iam.serviceAccountCreator" gcloud projects add-iam-policy-binding PROJECT_ID \ --member="user:ACCOUNT" \ --role="roles/iam.serviceAccountKeyAdmin"
Windows
gcloud projects add-iam-policy-binding PROJECT_ID ^ --member="user:ACCOUNT" ^ --role="roles/resourcemanager.projectIamAdmin" gcloud projects add-iam-policy-binding PROJECT_ID ^ --member="user:ACCOUNT" ^ --role="roles/iam.serviceAccountCreator" gcloud projects add-iam-policy-binding PROJECT_ID ^ --member="user:ACCOUNT" ^ --role="roles/iam.serviceAccountKeyAdmin"
Ersetzen Sie Folgendes:
PROJECT_ID
ist die ID des übergeordneten Projekts des Dienstkontos für den Komponentenzugriff.ACCOUNT
ist das SDK-Konto.
Administrator-Workstation erstellen
Geben Sie diesen Befehl ein, um Ihre Administrator-Workstation zu erstellen. Wenn gkeadm
Dienstkonten für Sie erstellen soll, fügen Sie das Flag --auto-create-service-accounts
ein. Wenn Sie Ihre eigenen Dienstkonten manuell erstellen möchten, lassen Sie das Flag weg.
./gkeadm create admin-workstation [--auto-create-service-accounts]
Die Ausgabe enthält detaillierte Informationen zur Erstellung Ihrer Administrator-Workstation:
... Getting ... service account... ... ******************************************************************** Admin workstation is ready to use. Admin workstation information saved to /usr/local/google/home/me/my-admin-workstation This file is required for future upgrades SSH into the admin workstation with the following command: ssh -i /usr/local/google/home/me/.ssh/gke-admin-workstation ubuntu@172.16.5.1 ********************************************************************
SSH-Verbindung zu Ihrer Administrator-Workstation abrufen
Gegen Ende der vorherigen Ausgabe finden Sie einen Befehl, mit dem Sie eine SSH-Verbindung zu Ihrer Administrator-Workstation herstellen können. Geben Sie diesen Befehl jetzt ein. Beispiel:
ssh -i /usr/local/google/home/me/.ssh/gke-admin-workstation ubuntu@172.16.5.1
Rufen Sie eine Liste der Dateien auf Ihrer Administrator-Workstation auf:
ls -1
In der Ausgabe sehen Sie zwei Clusterkonfigurationsdateien, Ihre CA-Zertifikatsdatei und die JSON-Schlüsseldatei für das Dienstkonto für den Komponentenzugriff. Wenn gkeadm
Dienstkonten für Sie erstellt hat, können Sie auch die JSON-Schlüsseldateien für diese Dienstkonten sehen. Beispiel:
admin-cluster.yaml user-cluster.yaml vcenter-ca-cert.pem component-access-key.json
Prüfen Sie, ob gkeadm
das Dienstkonto für den Komponentenzugriff auf Ihrer Administrator-Workstation aktiviert hat:
gcloud config get-value account
JSON-Schlüsseldatei auf Ihre Administrator-Workstation kopieren
Bevor Sie einen Cluster erstellen, müssen sich die JSON-Schlüsseldateien für Ihre Dienstkonten auf Ihrer Administrator-Workstation im Basisverzeichnis befinden.
Der Schlüssel für Ihr Dienstkonto für den Komponentenzugriff befindet sich bereits auf Ihrer Administrator-Workstation.
Wenn Sie beim Ausführen von gkeadm create admin-workstation
das Flag --auto-create-service-accounts
angegeben haben, befinden sich die Schlüssel der folgenden Dienstkonten bereits auf Ihrer Administrator-Workstation im Basisverzeichnis. Andernfalls müssen Sie die Schlüssel manuell in das Basisverzeichnis Ihrer Administrator-Workstation kopieren:
- Connect-Register-Dienstkonto
- Logging-Monitoring-Dienstkonto
Wenn Sie eines der folgenden Dienstkonten erstellt haben, müssen Sie die Schlüssel für diese Dienstkonten manuell in das Basisverzeichnis Ihrer Administrator-Workstation kopieren:
- Dienstkonto zur Nutzungsmessung
- Audit-Logging-Dienstkonto
- Dienstkonto für Binärautorisierungen