Vorbereitung der Administratorworkstation

Die Administratorworkstation hostet Befehlszeilentools und Konfigurationsdateien zum Bereitstellen von Clustern während der Installation sowie Befehlszeilentools zum Interagieren mit bereitgestellten Clustern nach der Installation.

Diese Seite richtet sich an Administratoren, Architekten und Betreiber, die den Lebenszyklus der zugrunde liegenden technischen Infrastruktur einrichten, überwachen und verwalten. Weitere Informationen zu gängigen Rollen und Beispielaufgaben, auf die wir in Google Cloud-Inhalten verweisen, finden Sie unter Häufig verwendete GKE Enterprise-Nutzerrollen und -Aufgaben.

Sie laden Tools wie bmctl und die Google Cloud CLI auf die Administrator-Workstation herunter und führen sie aus, um mit Clustern und Google Cloud-Ressourcen zu interagieren. Die Administrator-Workstation hostet Konfigurationsdateien zum Bereitstellen von Clustern während Installation, Upgrade und Updates. Nach der Installation hostet die Administrator-Workstation kubeconfig-Dateien, damit Sie mit kubectl mit bereitgestellten Clustern interagieren können. Außerdem greifen Sie auf der Administrator-Workstation auf Protokolle zu kritischen Clustervorgängen zu. Mit nur einer Administrator-Workstation können viele Cluster erstellt und verwaltet werden.

Achten Sie darauf, dass die Administrator-Workstation die in den folgenden Abschnitten beschriebenen Voraussetzungen erfüllt.

Betriebssystem und Software

Zum Ausführen von bmctl und zum Arbeiten als Knoten der Steuerungsebene muss die Administrator-Workstation dieselben Betriebssystemanforderungen wie Knoten erfüllen. Auf der Administrator-Workstation ist Docker erforderlich, aber nicht zur Verwendung als Containerlaufzeit. Wenn Google Distributed Cloud Cluster erstellt, wird ein Kubernetes in Docker-Cluster (Art) auf der Administrator-Workstation bereitgestellt. Dieser Bootstrap-Cluster hostet die Kubernetes-Controller, die zum Erstellen von Clustern benötigt werden. Sofern Sie nichts anderes angeben, wird der Bootstrap-Cluster entfernt, nachdem die Clustererstellung erfolgreich abgeschlossen wurde. Der Bootstrap-Cluster benötigt Docker, um Container-Images abzurufen.

Die Administrator-Workstation muss die folgenden Anforderungen erfüllen, bevor Sie einen Cluster installieren können:

  • Das Betriebssystem ist eine unterstützte Linux-Distribution.

    Eine Liste der unterstützten Linux-Betriebssysteme und ‑Versionen finden Sie unter Betriebssystem auswählen. Auf dieser Seite finden Sie Links zu Konfigurationsanleitungen für die verschiedenen Betriebssysteme, einschließlich der Docker-Konfiguration.

  • Docker-Version 19.03 oder höher ist installiert. Wenn Ihr System jedoch cgroups v2 verwendet, muss die Docker-Installation auf Ihrer Administrator-Workstation die Version 20.10.0 oder höher haben. Ob Ihr System cgroup v2 verwendet, erkennen Sie am Vorhandensein der Datei /sys/fs/cgroup/cgroup.controllers.

  • Der Nutzer ohne Root-Berechtigung ist Mitglied der Gruppe docker. Eine entsprechende Anleitung finden Sie unter Docker als Nutzer ohne Root-Berechtigung verwalten.

  • Die Google Cloud CLI ist installiert.

    Sie verwenden die Tools kubectl und bmctl, um Cluster zu erstellen und zu verwalten. Zum Installieren dieser Tools benötigen Sie das gcloud-Tool. Die Befehlszeilentools gcloud und kubectl sind Komponenten der gcloud CLI. Eine Anleitung zur Installation, einschließlich einer Anleitung zur Installation von Komponenten, finden Sie unter gcloud CLI installieren.

  • kubectl wurde installiert. Installieren Sie kubectl mit der gcloud CLI mit dem folgenden Befehl:

    gcloud components install kubectl
    
  • bmctl ist für die Version des Clusters installiert, die Sie erstellen oder verwenden.

    Die Installation besteht aus dem Herunterladen des Binär- oder Image-Pakets bmctl mit gcloud. Eine Anleitung finden Sie unter Google Distributed Cloud für Bare-Metal-Downloads.

Anforderungen: Hardwareressourcen

Die Administrator-Workstation benötigt erhebliche Rechenleistung, Arbeitsspeicher und Speicher, um Tools auszuführen und die Ressourcen für die Clustererstellung und -verwaltung zu speichern.

Standardmäßig wird für das Cluster-Upgrade und das Erstellen von Clustern ein Bootstrap-Cluster verwendet. Wenn ein Bootstrap-Cluster verwendet wird, steigt die CPU- und Arbeitsspeichernutzung deutlich an. Wenn Sie die Administrator-Workstation als Knoten der Steuerungsebene verwenden möchten, nutzen Sie mindestens die höhere der empfohlenen CPU- und RAM-Mengen, damit Aktivitäten auf der Administrator-Workstation die Funktionen der Cluster-Steuerungsebene nicht beeinträchtigen.

Je nach Größe der etcd-Datenbank und Anzahl der Steuerungsebenenknoten benötigen Clustersicherungen und ‑wiederherstellungen viel RAM. Die ungefähre Schätzung des für Sicherungen erforderlichen RAM beträgt 3–5 GiB pro Steuerungsebenenknoten. Der Sicherungsvorgang schlägt fehl, wenn nicht genügend Arbeitsspeicher verfügbar ist. Planen Sie die RAM-Anforderungen entsprechend.

In der folgenden Tabelle finden Sie die Mindest- und empfohlenen Hardwareanforderungen für die Administrator-Workstation:

Ressource Minimum Empfohlen
CPUs / vCPUs* 2 Core 4 Core
RAM Ubuntu: 4 GiB

RHEL: 6 GiB

Ubuntu: 8 GiB

RHEL: 12 GiB

Speicherplatz 128 GiB 256 GiB

* Google Distributed Cloud unterstützt nur x86-64-CPUs und vCPUs auf der CPU-Mikroarchitekturebene v3 (x86-64-v3) und höher.

Netzwerkanforderungen

Die Administrator-Workstation benötigt Zugriff auf Google Cloud und alle Clusterknoten.

Zugriff auf Google Cloud

Die Administrator-Workstation greift auf Google Cloud zu, um Tools und Images herunterzuladen und zu installieren, Autorisierungsanfragen zu verarbeiten, Dienstkonten zu erstellen sowie Logging und Monitoring zu verwalten. Sie können keine Cluster ohne Zugriff auf Google Cloud erstellen.

Der Zugriff auf Google Cloud kann direkt oder über einen Proxyserver erfolgen. Informationen zu den verschiedenen Möglichkeiten, eine Verbindung zu Google Cloud herzustellen, finden Sie unter Verbindung zu Google herstellen. Informationen zum Konfigurieren eines Proxyservers finden Sie unter Hinter einem Proxy installieren.

Informationen zu den Folgen einer unterbrochenen Verbindung zu Google Cloud finden Sie unter Auswirkungen einer vorübergehenden Verbindungsunterbrechung zu Google Cloud.

Zugriff auf Knoten

Zum Erstellen und Verwalten von Clustern über Ihre Administrator-Workstation benötigen Sie den folgenden Zugriff auf die Knotenmaschinen:

IP-Weiterleitung

Die IP-Weiterleitung muss auf der Administrator-Workstation aktiviert sein. Ohne IP-Weiterleitung kann der Bootstrap-Cluster nicht erstellt werden, was die Clustererstellung verhindert. Wenn die IP‑Weiterleitung deaktiviert ist, wird beim Versuch, einen Cluster zu erstellen, ein Fehler wie der folgende angezeigt:

Error message: E0202 14:53:25.979322 225917 console.go:110] Error creating cluster: create kind cluster failed: error creating bootstrap cluster: failed to init node with kubeadm: command "docker exec --privileged bmctl-control-plane kubeadm init --skip-phases=preflight --config=/kind/kubeadm.conf --skip-token-print --v=6" failed with error: exit status 1

Sie können die IP‑Weiterleitungseinstellung mit dem folgenden Befehl prüfen:

cat /proc/sys/net/ipv4/ip_forward

Der Wert 1 gibt an, dass die IP‑Weiterleitung aktiviert ist. Wenn die IP‑Weiterleitung deaktiviert ist (0), können Sie sie mit dem folgenden Befehl aktivieren:

echo '1' | sudo tee /proc/sys/net/ipv4/ip_forward

root SSH-Zugriff auf Knoten einrichten

Wenn Sie sichere, passwortlose Verbindungen zwischen der Administrator-Workstation und den Clusterknotenmaschinen ermöglichen möchten, erstellen Sie einen SSH-Schlüssel auf Ihrer Administrator-Workstation und geben den öffentlichen Schlüssel für die Clusterknoten frei.

  1. Aktivieren Sie die SSH-Passwortauthentifizierung root auf allen Clusterknoten-Rechner, indem Sie die Kommentarzeichen in der /etc/ssh/sshd_config-Datei entfernen oder die Zeilen PermitRootLogin und PasswordAuthentication hinzufügen und die Werte auf yes setzen.

    # $OpenBSD: sshd_config,v 1.103 2018/04/09 20:41:22 tj Exp $
    
    # This is the sshd server system-wide configuration file.  See
    # sshd_config(5) for more information.
    
    ...
    
    # Authentication:
    
    #LoginGraceTime 2m
    PermitRootLogin yes
    #StrictModes yes
    #MaxAuthTries 6
    #MaxSessions 10
    
    ...
    
    PasswordAuthentication yes
    

    Zuerst muss auf den Remote-Clusterknotenmaschinen die SSH-Passwortauthentifizierung aktiviert sein, damit Schlüssel von der Administrator-Workstation geteilt werden können.

  2. Starten Sie den SSH-Dienst neu, um die Änderungen an der SSH-Konfiguration anzuwenden:

    sudo systemctl restart ssh.service
    
  3. Generieren Sie auf der Administrator-Workstation ein privates/öffentliches Schlüsselpaar. Legen Sie keine Passphrase für die Schlüssel fest. Generieren Sie die Schlüssel mit dem folgenden Befehl:

    ssh-keygen -t rsa
    

    Sie können auch den sudo-Nutzerzugriff auf die Clusterknotenmaschinen verwenden, um SSH einzurichten. Für passwortlose Nutzerverbindungen, die keine Root-Nutzer sind, müssen Sie jedoch die Cluster-Konfigurationsdatei mit dem spec.nodeAccess.loginUser-Feld aktualisieren. Dieses Feld ist standardmäßig auskommentiert. Sie können Ihren Nicht-root-Nutzernamen mit loginUser während der Clustererstellung oder jederzeit danach angeben. Weitere Informationen finden Sie unter loginUser.

  4. Fügen Sie den Rechnern des Clusterknotens den generierten öffentlichen Schlüssel hinzu:

    ssh-copy-id -i PATH_TO_IDENTITY_FILE root@CLUSTER_NODE_IP
    

    Ersetzen Sie dabei Folgendes:

    • PATH_TO_IDENTITY_FILE: Der Pfad zur Datei mit dem öffentlichen SSH-Schlüssel. Standardmäßig lautet der Pfad zur Identitätsdatei, die den öffentlichen Schlüssel enthält, /home/USERNAME/.ssh/id_rsa.pub.
    • CLUSTER_NODE_IP: Die IP-Adresse des Knotenrechners, dem Sie den öffentlichen SSH-Schlüssel hinzufügen.
  5. Deaktivieren Sie die SSH-Passwortauthentifizierung auf den Clusterknoten-Rechnern, indem Sie in der sshd_config-Datei PasswordAuthentication auf no setzen und den SSH-Dienst neu starten.

  6. Verwenden Sie den folgenden Befehl auf der Administrator-Workstation, um zu prüfen, ob die Authentifizierung mit öffentlichem Schlüssel zwischen der Workstation und den Knotenrechnern ausgeführt wird.

    ssh -o IdentitiesOnly=yes -i PATH_TO_IDENTITY_FILE root@CLUSTER_NODE_IP
    

    Wenn SSH ordnungsgemäß konfiguriert ist, können Sie sich von der Administrator-Workstation (als root) aus auf dem Knotenrechner anmelden, ohne ein Passwort eingeben zu müssen.

Nächste Schritte