Voraussetzungen für die Installation: Übersicht

Für Anthos-Cluster on Bare Metal gelten folgende Installationsanforderungen:

Wenn Sie den Workstation-Rechner als Clusterknoten-Rechner verwenden, muss er die Voraussetzungen für beide Rechner erfüllen.

Hinweis

Während der Installation müssen Sie die folgenden Anmeldedaten angeben:

  • Die privaten SSH-Schlüssel für den Zugriff auf Clusterknoten-Rechner.
  • Wenn Sie root nicht verwenden: den Anmeldename des Clusterknoten-Rechners.
  • Die Google Cloud-Dienstkontoschlüssel. Weitere Informationen finden Sie unter Dienstkontoschlüssel erstellen und verwalten.

Prüfen Sie, ob Sie alle erforderlichen Anmeldedaten haben, bevor Sie Anthos-Cluster on Bare Metal installieren.

Bei gcloud anmelden

  1. Melden Sie sich mit dem gcloud auth application-default-Log-in als Nutzer bei gcloud an:
  2. gcloud auth application-default login
    
    Sie benötigen die Rolle „Projektinhaber/-bearbeiter“, um die Funktionen zur automatischen API-Aktivierung und zur Erstellung von Dienstkonten zu verwenden (siehe unten). Sie können dem Nutzer auch die folgenden IAM-Rollen hinzufügen:
    • Dienstkontoadministrator
    • Zentraler Dienstkontoadministrator
    • Projekt-IAM-Administrator
    • Compute-Betrachter
    • Service Usage-Administrator
    Wenn Sie bereits ein Dienstkonto mit diesen Rollen haben, führen Sie Folgendes aus:
    export GOOGLE_APPLICATION_CREDENTIALS=JSON_KEY_FILE
    
    JSON_KEY_FILE gibt den Pfad zur JSON-Schlüsseldatei Ihres Dienstkontos an.
  3. Rufen Sie Ihre Google Cloud-Projekt-ID ab, um sie bei der Clustererstellung zu verwenden:
  4. export CLOUD_PROJECT_ID=$(gcloud config get-value project)
    

Voraussetzungen für die Workstation

Die bmctl-Workstation muss folgende Voraussetzungen erfüllen:

  • Das Betriebssystem entspricht der unterstützten Linux-Distribution, die auf den Rechnern des Clusterknotens ausgeführt wird.
  • Docker-Version 19.03 oder höher muss installiert sein.
  • Nutzer ohne Root-Berechtigung müssen Mitglied der Gruppe docker sein. Eine entsprechende Anleitung finden Sie unter Docker als Nutzer ohne Root-Berechtigung verwalten.
  • gcloud muss installiert sein.
  • Es muss mehr als 50 GB freier Speicherplatz verfügbar sein.
  • Es muss eine Ebene-3-Verbindung zu allen Clusterknoten-Rechnern existieren.
  • Der Zugriff auf alle Clusterknoten-Rechner muss per SSH über private Schlüssel mit passwortloser Root-Zugriff möglich sein. Der Zugriff kann direkt oder über sudo erfolgen.
  • Zugriff auf die VIP der Steuerungsebene.

Voraussetzungen für Knotenrechner

Für Knotenrechner gelten folgende Voraussetzungen:

  • Das Betriebssystem ist eine der unterstützten Linux-Distributionen.
  • Die Linux-Kernel-Version ist 4.17.0 oder höher. Ubuntu 18.04 und 18.04.1 werden unter der Linux Kernel-Version 4.15 ausgeführt und sind daher nicht kompatibel.
  • Die Mindestanforderungen an die Hardware werden erfüllen
  • Internetzugriff.
  • Ebene-3-Verbindung zu allen anderen Knotenmaschinen
  • Zugriff auf die VIP der Steuerungsebene.
  • Korrekt konfigurierte DNS-Nameserver.
  • Keine doppelten Hostnamen.
  • Einer der folgenden NTP-Dienste muss aktiviert sein und funktionieren:
    • chrony
    • ntp
    • ntpdate
    • systemd-timesyncd
  • Ein funktionsfähiger Paketmanager: apt, dnf usw.
  • Unter Ubuntu müssen Sie Uncomplicated Firewall (UFW) deaktivieren. Führen Sie systemctl stop ufw aus, um UFW zu deaktivieren.
  • Unter Ubuntu und ab Anthos-Cluster auf Bare-Metal 1.8.2 müssen Sie AppArmor nicht deaktivieren. Wenn Sie Cluster mit früheren Releases von Anthos-Cluster auf Bare-Metal bereitstellen, deaktivieren Sie AppArmor mit dem folgenden Befehl: systemctl stop apparmor
  • Wenn Sie Docker als Containerlaufzeit auswählen, können Sie die Docker-Version 19.03 oder höher verwenden. Wenn Docker nicht auf Ihren Knotenrechnern installiert ist oder eine ältere Version installiert ist, installiert Anthos on Bare beim Erstellen von Clustern Metal-Dockers 19.03.13 oder höher.
  • Wenn Sie die Standard-Containerlaufzeit containerd verwenden, benötigen Sie Docker nicht und die Installation von Docker kann Probleme verursachen. Weitere Informationen finden Sie unter bekannten Problemen.

  • Die Voraussetzungen für den Speicherplatz hängen von der Version des bereitgestellten Clusters ab:

    Cluster der Version 1.10.1 und früher

    Wenn Sie Anthos-Cluster auf Bare-Metal Version 1.10.1 oder früher installieren, achten Sie darauf, dass die Dateisysteme, die für die folgenden Verzeichnisse verwendet werden, die erforderliche Kapazität haben und die folgenden Anforderungen erfüllen:

    • Die Verzeichnisse haben mindestens 128 GiB kostenlose Speicherkapazität und die zugrunde liegenden Partitionen für die Verzeichnisse haben folgende Kapazität:
      • /: 20 GiB (21.474.836.480 Byte)
      • /var/lib/docker oder /var/lib/containerd, je nach Containerlaufzeit: 30 GiB (32.212.254.720 Byte)
      • /var/lib/kubelet: 10 GiB (10.737.418.240 Byte)
      • /mnt/anthos-system: 25 GiB (26.843.545.600 Byte)
      • /var/lib/etcd: 20 GiB (21.474.836.480 Byte nur für Knoten der Steuerungsebene)
    • Der gesamte Speicherplatz hat eine Auslastung von weniger als 90 %.

    Cluster der Version 1.10.2 und höher

    Ab Version 1.10.2 prüft die Clustererstellung nur auf den erforderlichen freien Speicherplatz für die Anthos-Cluster auf Bare-Metal-Systemkomponenten. Mit dieser Änderung haben Sie mehr Kontrolle über den Speicherplatz, den Sie Anwendungsarbeitslasten zuweisen. Wenn Sie Anthos-Cluster auf Bare-Metal Version 1.10.2 oder früher installieren, achten Sie darauf, dass die Dateisysteme, die für die folgenden Verzeichnisse verwendet werden, die erforderliche Kapazität haben und die folgenden Anforderungen erfüllen:

    • /: 17 GiB (18.253.611.008 Byte).
    • /var/lib/docker oder /var/lib/containerd, je nach Containerlaufzeit:
      • 30 GiB (32.212.254.720 Byte) für Knoten der Steuerungsebene.
      • 10 GiB (10.485.760 Byte) für Worker-Knoten.
    • /var/lib/kubelet: 500 MiB (524.288.000 Byte).
    • /var/lib/etcd: 20 GiB (21.474.836.480 Byte nur für Knoten der Steuerungsebene).

    Unabhängig von der Clusterversion können sich die vorherigen Verzeichnislisten in denselben oder in unterschiedlichen Partitionen befinden. Wenn sie sich in derselben zugrunde liegenden Partition befinden, entspricht der Speicherplatzbedarf der Summe des Speicherplatzes, der für jedes einzelne Verzeichnis in dieser Partition erforderlich ist. Bei allen Releaseversionen erstellt der Cluster die Verzeichnisse, sofern erforderlich.

  • Die Verzeichnisse /var/lib/etcd und /etc/kubernetes sind entweder nicht vorhanden oder leer.

Zusätzlich zu den Voraussetzungen für die Installation und Ausführung von Anthos-Clustern auf Bare Metal müssen Kunden die relevanten Standards ihrer Branche oder ihres Geschäftssegments erfüllen, z. B. die PCI-DSS-Anforderungen für Unternehmen, die Kreditkarten verarbeiten, oder SISGs (Security Technical Implementation Guides) für Unternehmen in der Verteidigungsindustrie.

Voraussetzungen für Load-Balancer-Rechner

Wenn Ihre Bereitstellung über keinen speziellen Load-Balancer-Knotenpool verfügt, können Sie Worker-Knoten oder Steuerungsebenenknoten erstellen, um einen Load-Balancer-Knotenpool zu erstellen. Für diesen Fall gelten zusätzliche Voraussetzungen:

  • Maschinen befinden sich im selben Ebene-2-Subnetz.
  • Alle VIPs befinden sich im Subnetz des Load-Balancer-Knotens und können vom Gateway des Subnetzes aus verbunden werden.
  • Das Gateway des Load-Balancer-Subnetzes sollte nicht relevante ARPs erfassen, um Pakete an den Master-Load-Balancer weiterzuleiten.

Voraussetzungen für Google Cloud-Projekte

Bevor Sie Anthos-Cluster on Bare Metal installieren, aktivieren Sie folgende Dienste für Ihr zugehöriges GCP-Projekt:

  • anthos.googleapis.com
  • anthosaudit.googleapis.com
  • anthosgke.googleapis.com
  • cloudresourcemanager.googleapis.com
  • container.googleapis.com
  • gkeconnect.googleapis.com
  • gkehub.googleapis.com
  • iam.googleapis.com
  • logging.googleapis.com
  • monitoring.googleapis.com
  • opsconfigmonitoring.googleapis.com
  • serviceusage.googleapis.com
  • stackdriver.googleapis.com

Sie können diese Dienste auch mit dem bmctl-Tool aktivieren.

Voraussetzungen für Dienstkonten

In Produktionsumgebungen sollten Sie separate Dienstkonten für unterschiedliche Zwecke erstellen. Anthos-Cluster auf Bare Metal-Konten erfordern je nach Zweck die folgenden Arten von Google Cloud-Dienstkonten:

  • Für den Zugriff auf Container Registry (gcr.io) ist keine spezielle Rolle erforderlich.
  • Zum Registrieren eines Clusters in einer Flotte weisen Sie dem Dienstkonto in Ihrem Google Cloud-Projekt die IAM-Rolle roles/gkehub.admin zu.
  • Zum Herstellen einer Verbindung zu Flotten weisen Sie dem Dienstkonto in Ihrem Google Cloud-Projekt die IAM-Rolle roles/gkehub.connect zu.
  • Weisen Sie dem Dienstkonto in Ihrem Google Cloud-Projekt folgende IAM-Rollen zu, um Logs und Messwerte an die Operations-Suite von Google Cloud zu senden:

    • roles/logging.logWriter
    • roles/monitoring.metricWriter
    • roles/stackdriver.resourceMetadata.writer
    • roles/monitoring.dashboardEditor
    • roles/opsconfigmonitoring.resourceMetadata.writer

Sie können diese Dienstkonten auch mit dem bmctl-Tool erstellen.