Für Anthos-Cluster on Bare Metal gelten folgende Installationsanforderungen:
- Voraussetzungen für die Workstation, auf der das
bmctl
-Tool ausgeführt wird. - Voraussetzungen für die Knotenmaschinen, die Teil der Bereitstellung von Anthos-Cluster on Bare Metal sind.
- Voraussetzungen Load-Balancer-Rechner.
- Voraussetzungen für das Google Cloud-Projekt.
- Voraussetzungen für Ihre Dienstkonten
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
- Melden Sie sich mit dem
gcloud auth application-default
-Log-in als Nutzer bei gcloud an: - Dienstkontoadministrator
- Zentraler Dienstkontoadministrator
- Projekt-IAM-Administrator
- Compute-Betrachter
- Service Usage-Administrator
- Rufen Sie Ihre Google Cloud-Projekt-ID ab, um sie bei der Clustererstellung zu verwenden:
gcloud auth application-default login
export GOOGLE_APPLICATION_CREDENTIALS=JSON_KEY_FILE
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 haben mindestens 128 GiB kostenlose Speicherkapazität und die zugrunde liegenden Partitionen für die Verzeichnisse haben folgende Kapazität:
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.