Auf dieser Seite werden die Felder beschrieben, die in der Konfigurationsdatei des GKE on Bare Metal-Clusters unterstützt werden. Die folgende Tabelle gibt für jedes Feld an, ob das Feld erforderlich ist. Die Tabelle zeigt auch, welche Felder änderbar sind, also welche Felder nach dem Erstellen eines Clusters geändert werden können. Wie in der Tabelle angegeben, können einige änderbare Felder nur während eines Clusterupgrades geändert werden.
Vorlage für Ihre Clusterkonfigurationsdatei erstellen
Mit dem Befehl bmctl create config können Sie eine Clusterkonfigurationsdatei erstellen. Obwohl einige Felder Standardwerte haben und andere wie metadata.name automatisch ausgefüllt werden können, ist diese Konfigurationsdatei im YAML-Format eine Vorlage zur Angabe von Informationen zu Ihrem Cluster.
Verwenden Sie den folgenden Befehl im Ordner /baremetal, um eine neue Clusterkonfigurationsdatei zu erstellen:
bmctl create config -c CLUSTER_NAME
Ersetzen Sie CLUSTER_NAME durch den Namen des Clusters, den Sie erstellen möchten. Weitere Informationen zu bmctl finden Sie unter bmctl-Tool.
Ein Beispiel für die generierte Clusterkonfigurationsdatei finden Sie unter Beispiel für die Clusterkonfigurationsdatei.
Konfigurationsdatei ausfüllen
Geben Sie in Ihrer Konfigurationsdatei Feldwerte ein, wie in der folgenden Feldreferenztabelle beschrieben, bevor Sie den Cluster erstellen oder aktualisieren.
Clusterkonfigurationsfelder
Feldname
Ressourcentyp
Erforderlich/Optional?
Veränderlich?
anthosBareMetalVersion
Erforderlich. String. Die Clusterversion. Dieser Wert wird für die Clustererstellung und Clusterupgrades festgelegt.
Veränderbarkeit: Dieser Wert kann für vorhandene Cluster nicht geändert werden.
Die Version kann nur über den Clusterupgrade-Prozess aktualisiert werden.
Clusterressource
Erforderlich
Veränderlich
authentication
Dieser Abschnitt enthält Einstellungen, die für die Verwendung von OpenID Connect (OIDC) erforderlich sind.
Mit OIDC können Sie Ihren vorhandenen Identitätsanbieter verwenden, um die Nutzer- und Gruppenauthentifizierung in GKE on Bare-Metal-Clustern zu verwalten.
Clusterressource
—
—
authentication.oidc.certificateAuthorityData
Optional. Ein base64-codiertes PEM-codiertes Zertifikat für den OIDC-Anbieter. Codieren Sie das Zertifikat samt Header in base64, um den String zu erstellen. Fügen Sie den resultierenden String in certificateAuthorityData als eine einzelne Zeile ein.
Optional. String. Die ID für die Clientanwendung, die Authentifizierungsanfragen an den OpenID-Anbieter sendet.
Clusterressource
Optional
Nicht veränderbar.
authentication.oidc.clientSecret
Optional. String. Gemeinsames Secret von OIDC-Clientanwendung und OIDC-Anbieter.
Clusterressource
Optional
Nicht veränderbar.
authentication.oidc.deployCloudConsoleProxy
Optional. Boolescher Wert (true|false). Gibt an, ob im Cluster ein Reverse-Proxy bereitgestellt wird, um die Google Cloud Console mit einem lokalen Identitätsanbieter zu verbinden, der nicht öffentlich über das Internet zugänglich ist. Wenn Ihr Identitätsanbieter nicht über das öffentliche Internet erreichbar ist, legen Sie dieses Feld auf true zur Authentifizierung bei der Google Cloud Console fest. Standardmäßig wird dieser Wert auf false festgelegt.
Clusterressource
Optional
Nicht veränderbar.
authentication.oidc.extraParams
Optional. Durch Kommas getrennte Liste. Zusätzliche Schlüssel/Wert-Parameter, die an den OpenID-Anbieter gesendet werden.
Clusterressource
Optional
Nicht veränderbar.
authentication.oidc.groupPrefix
Optional. String. Das Präfix, das Gruppenanforderungen vorangestellt wird, um Konflikte mit vorhandenen Namen zu vermeiden. Ein Beispiel ist oidc:dev für die Gruppe dev und das Präfix oidc:.
Clusterressource
Optional
Nicht veränderbar.
authentication.oidc.group
Optional. String.
Die JWT-Anforderung, mit der der Anbieter Ihre Sicherheitsgruppen zurückgibt.
Clusterressource
Optional
Nicht veränderbar.
authentication.oidc.issuerURL
Optional. URL-String. Die URL, über die Autorisierungsanfragen an Ihren OpenID-Anbieter gesendet werden, z. B. https://example.com/adfs. Der Kubernetes API-Server nutzt diese URL, um öffentliche Schlüssel zum Verifizieren von Tokens zu ermitteln. Die URL muss HTTPS verwenden.
Clusterressource
Optional
Nicht veränderbar.
authentication.oidc.kubectlRedirectURL
Optional. URL-String. Die Weiterleitungs-URL, die kubectl für die Autorisierung verwendet. Wenn Sie OIDC aktivieren, müssen Sie einen kubectlRedirectURL-Wert angeben.
Clusterressource
Optional
Nicht veränderbar.
authentication.oidc.proxy
Optional. URL-String. Proxyserver, über den der Cluster gegebenenfalls die Verbindung mit Ihrem OIDC-Anbieter herstellen kann. Der Wert sollte einen Hostnamen/eine IP-Adresse und optional einen Port, einen Nutzernamen und ein Passwort enthalten. Beispiel: http://user:password@10.10.10.10:8888.
Clusterressource
Optional
Nicht veränderbar.
authentication.oidc.scopes
Optional. Durch Kommas getrennte Liste. Zusätzliche Bereiche, die an den OpenID-Anbieter gesendet werden. Microsoft Azure und Okta benötigen den Bereich offline_access.
Clusterressource
Optional
Nicht veränderbar.
authentication.oidc.usernamePrefix
Optional. String. Das Präfix, das Anforderungen an Nutzernamen vorangestellt wird.
Clusterressource
Optional
Nicht veränderbar.
authentication.oidc.username
Optional. String.
Die JWT-Anforderung, die als Nutzername verwendet wird. Enthält standardmäßig den Wert sub, wenn nichts anderes angegeben ist.
Clusterressource
Optional
Nicht veränderbar.
bypassPreflightCheck
Optional. Boolescher Wert (true|false). Wenn dieser Wert auf true gesetzt ist, werden die internen Preflight-Prüfungen ignoriert, wenn Ressourcen auf vorhandene Cluster angewendet werden. Die Standardeinstellung ist false.
Veränderbarkeit: Dieser Wert kann für vorhandene Cluster mit dem Befehl bmctl update geändert werden.
Clusterressource
Optional
Veränderlich
clusterNetwork
Dieser Abschnitt enthält Netzwerkeinstellungen für den Cluster.
Clusterressource
Erforderlich
Veränderlich
clusterNetwork.advancedNetworking
Boolescher Wert. Setzen Sie dieses Feld auf true, um erweiterte Netzwerkfeatures wie gebündeltes Load-Balancing mit BGP oder das NAT-Gateway für ausgehenden Traffic zu aktivieren. Für beide Funktionen wird Network Gateway for GDC verwendet.
Network Gateway for GDC ist die Schlüsselkomponente zum Aktivieren erweiterter Netzwerkfunktionen in GKE Enterprise und Google Kubernetes Engine (GKE). Einer der Hauptvorteile von Network Gateway for GDC besteht darin, dass Floating-IP-Adressen aus einer Reihe von Adressen dynamisch zugewiesen werden können, die Sie in einer benutzerdefinierten NetworkGatewayGroup-Ressource angeben.
Boolescher Wert. Setzen Sie dieses Feld auf false, um die mit GKE on Bare Metal gebündelten Ingress-Funktionen zu deaktivieren. Die gebündelten Ingress-Funktionen für Ihren Cluster unterstützen nur eingehenden Traffic. Wenn Sie Istio oder Anthos Service Mesh einbinden, um die zusätzlichen Vorteile eines voll funktionsfähigen Service Mesh zu nutzen, empfehlen wir, das gebündelte Ingress zu deaktivieren. Die Standardeinstellung für dieses Feld ist true. Dieses Feld ist in der generierten Clusterkonfigurationsdatei nicht vorhanden. Sie können gebündeltes Ingress nur für Cluster der Version 1.13.0 und höher deaktivieren.
Boolescher Wert. Setzen Sie dieses Feld auf true, um das Cluster-Netzwerkmodell im Flatmodus zu aktivieren. Im flachen Modus hat jeder Pod eine eigene, eindeutige IP-Adresse. Pods können direkt miteinander kommunizieren, ohne dass ein Zwischengateway oder eine Network Address Translation (NAT) erforderlich ist.
flatIPv4 ist standardmäßig false. Sie können den flachen Modus nur während der Clustererstellung aktivieren. Nachdem Sie den flachen Modus für Ihren Cluster aktiviert haben, können Sie ihn nicht mehr deaktivieren.
Clusterressource
Optional
Nicht veränderbar.
clusterNetwork.multipleNetworkInterfaces
Optional. Boolescher Wert. Legen Sie dieses Feld auf true fest, um mehrere Netzwerkschnittstellen für Ihre Pods zu aktivieren.
Erforderlich. Bereich der IPv4-Adressen im CIDR-Blockformat. Pods geben die IP-Bereiche an, aus denen Pod-Netzwerke zugewiesen sind.
Minimaler Pod-CIDR-Bereich:Maskenwert von /18, was einer Größe von 14 Bit (16.384 IP-Adressen) entspricht.
Maximaler Pod-CIDR-Bereich:Maskenwert von /8, der einer Größe von 24 Bit (16.777.216 IP-Adressen) entspricht.
Beispiel:
pods:
cidrBlocks:
- 192.168.0.0/16
Clusterressource
Erforderlich
Nicht veränderbar.
clusterNetwork.sriovOperator
Optional. Boolescher Wert. Legen Sie für dieses Feld true fest, um das SR-IOV-Netzwerk für Ihren Cluster zu aktivieren.
Weitere Informationen zum Konfigurieren und Verwenden von SR-IOV-Netzwerken finden Sie in der Dokumentation SR-IOV-Netzwerk einrichten.
Clusterressource
Optional
Veränderlich
clusterNetwork.services.cidrBlocks
Erforderlich. Bereich der IPv4-Adressen im CIDR-Blockformat. Geben Sie den Bereich der IP-Adressen an, von denen die virtuelle Dienst-IP-Adressen (VIP-Adressen) zugewiesen werden. Die Bereiche dürfen sich nicht mit Subnetzen überschneiden, die von Ihrem Netzwerk erreichbar sind. Weitere Informationen zur Adresszuweisung für privates Internet finden Sie unter RFC 1918.
Ab der GKE on Bare Metal-Version 1.15.0 ist dieses Feld änderbar. Bei Bedarf können Sie die Anzahl der IP-Adressen erhöhen, die Diensten zugewiesen werden, nachdem Sie einen Cluster erstellt haben. Weitere Informationen finden Sie unter Netzwerkreichweite des Dienstes erhöhen.
Sie können nur den Bereich des IPv4-Dienst-CIDR erhöhen. Der Netzwerkbereich kann nicht reduziert werden, was bedeutet, dass die Maske (der Wert nach „/“) nicht erhöht werden kann.
Minimaler Dienst-CIDR-Bereich:Maskenwert von /24, was einer Größe von 8 Bit (256 Adressen) entspricht.
Maximaler Dienst-CIDR-Bereich:Maskenwert von /12, der einer Größe von 20 Bit (1.048.576 IP-Adressen) entspricht.
Beispiel:
services:
cidrBlocks:
- 10.96.0.0/12
Clusterressource
Erforderlich
Veränderlich
clusterOperations
Dieser Abschnitt enthält Informationen zu Cloud Logging und Cloud Monitoring.
Clusterressource
Erforderlich
Veränderlich
clusterOperations.enableApplication
Dieses Feld wird nicht mehr verwendet und hat daher keine Auswirkungen. Logging und Monitoring von Anwendungen sind in der benutzerdefinierten Stackdriver-Ressource aktiviert. Weitere Informationen zum Aktivieren von Anwendungs-Logging und -Monitoring finden Sie unter Anwendungs-Logging und -Monitoring aktivieren.
Clusterressource
Managementfrei
Veränderlich
clusterOperations.disableCloudAuditLogging
Boolescher Wert. Cloud-Audit-Logs sind nützlich, um verdächtige API-Anfragen zu untersuchen und Statistiken zu erfassen. Cloud-Audit-Logs sind standardmäßig aktiviert (disableCloudAuditLogging: false). Legen Sie true fest, um Cloud-Audit-Logs zu deaktivieren.
String. Eine Google Cloud-Region, in der Sie Logging-Logs und Monitoring-Messwerte speichern möchten.
Es empfiehlt sich, eine Region auszuwählen, die sich in der Nähe Ihres lokalen Rechenzentrums befindet. Weitere Informationen finden Sie unter Weltweite Standorte.
Beispiel:
location: us-central1
Clusterressource
Erforderlich
Nicht veränderbar.
clusterOperations.projectID
String. Die Projekt-ID des Google Cloud-Projekts, in dem Sie Logs und Messwerte aufrufen möchten.
Clusterressource
Erforderlich
Nicht veränderbar.
controlPlane
Dieser Abschnitt enthält Informationen zur Steuerungsebene und ihren Komponenten.
Clusterressource
Erforderlich
Veränderlich
controlPlane.nodePoolSpec
In diesem Abschnitt werden die IP-Adressen für den Knotenpool angegeben, der von der Steuerungsebene und deren Komponenten verwendet wird. Die Knotenpoolspezifikation des Steuerebenen (wie die Spezifikation des Load-Balancer-Knotenpools) ist besonders. In dieser Spezifikation werden kritische Clusterressourcen deklariert und gesteuert. Die kanonische Quelle für diese Ressource ist dieser Abschnitt in der Cluster-Konfigurationsdatei. Ändern Sie nicht die Knotenpoolressourcen der obersten Steuerungsebene. Ändern Sie stattdessen die zugehörigen Abschnitte in der Cluster-Konfigurationsdatei.
Clusterressource
Erforderlich
Veränderlich
controlPlane.nodePoolSpec.nodes
Erforderlich. Ein Array von IP-Adressen. In der Regel ist dieses Array entweder eine IP-Adresse für eine einzelne Maschine oder IP-Adressen für drei Maschinen für eine Hochverfügbarkeitsbereitstellung.
Optional. Ganzzahl (nicht negativ). Gibt die maximale Anzahl von Image-Pull-Anfragen an, die der Verarbeitungswarteschlange hinzugefügt werden können, um Spitzen in Anfragen zu verarbeiten. Sobald ein Pull-Vorgang gestartet wird, kann eine neue Anfrage zur Warteschlange hinzugefügt werden. Der Standardwert ist 10. Dieses Feld entspricht der Kubelet-Konfigurationsoption registryBurst (v1beta1).
Der Wert für registryPullQPS hat Vorrang vor dieser Einstellung. Mit den Standardeinstellungen sind beispielsweise Bursts von bis zu 10 gleichzeitigen Abfragen zulässig, sie müssen jedoch mit der Standardrate von fünf Abfragen pro Sekunde verarbeitet werden. Dieses Burst-Verhalten wird nur verwendet, wenn registryPullQPS größer als 0 ist.
Dieses Feld kann immer dann festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden. Die Einstellung bleibt auch nach Clusterupgrades bestehen. Weitere Informationen finden Sie unter Einstellungen für das Abrufen von kubelet-Images konfigurieren.
Optional. Ganzzahl (nicht negativ). Gibt die Verarbeitungsrate für Abfragen von Container Registry-Image-Abrufen in Abfragen pro Sekunde an.
Wenn registryPullQPS auf einen Wert größer als 0 festgelegt ist, wird die Abfragerate auf diese Anzahl von Abfragen pro Sekunde beschränkt. Wenn registryPullQPS auf 0 gesetzt ist, gibt es keine Einschränkung der Abfragerate. Der Standardwert ist 5.
Dieses Feld entspricht der Kubelet-Konfigurationsoption registryPullQPS (v1beta1).
Dieses Feld kann immer dann festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden. Die Einstellung bleibt auch nach Clusterupgrades bestehen. Weitere Informationen finden Sie unter Einstellungen für das Abrufen von kubelet-Images konfigurieren.
Optional. Boolescher Wert (true|false). Dieses Feld gibt an, ob Container Registry-Abrufe parallel oder einzeln verarbeitet werden. Der Standardwert ist true und gibt an, dass Abrufe nacheinander verarbeitet werden. Wenn dieser Wert auf false gesetzt ist, ruft Kubelet die Images parallel ab. Dieses Feld entspricht der Kubelet-Konfigurationsoption serializeImagePulls (v1beta1).
Dieses Feld kann immer dann festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden. Die Einstellung bleibt auch nach Clusterupgrades bestehen. Weitere Informationen finden Sie unter Einstellungen für das Abrufen von kubelet-Images konfigurieren.
Clusterressource
Optional
Veränderlich
gkeConnect
Dieser Abschnitt enthält Informationen zu dem Google Cloud-Projekt, über das Sie den Cluster mit Google Cloud verbinden möchten.
Clusterressource
Erforderlich
Nicht veränderbar.
gkeConnect.projectID
Erforderlich: String. Die ID des Google Cloud-Projekts, das Sie zum Verbinden Ihres Clusters mit Google Cloud verwenden möchten. Dies wird auch als Flotten-Hostprojekt bezeichnet.
Wenn Sie alle Cluster im Projekt in der GKE On-Prem API registrieren möchten, führen Sie die unter Vorbereitung beschriebenen Schritte aus, um die GKE On-Prem API im Projekt zu aktivieren und zu verwenden.
Wenn Sie den Cluster nicht in der GKE On-Prem API registrieren möchten, fügen Sie diesen Abschnitt ein und legen Sie gkeOnPremAPI.enabled auf false fest.
Wenn Sie keine Cluster im Projekt registrieren möchten, deaktivieren Sie gkeonprem.googleapis.com (den Dienstnamen für die GKE On-Prem API) im Projekt. Eine Anleitung dazu finden Sie unter Dienste deaktivieren.
Wenn Sie Ihren Administrator- oder Nutzercluster in der GKE On-Prem API registrieren, können Sie Standardtools – die Google Cloud Console, die Google Cloud CLI oder
Terraform – verwenden, um Clusterdetails anzusehen und den Clusterlebenszyklus zu verwalten. Sie können beispielsweise gcloud CLI-Befehle ausführen, um
Informationen zu Ihrem Cluster abzurufen.
Wenn Sie gkeOnPremAPI.enabled auf true gesetzt haben, führen Sie vor dem Erstellen oder Aktualisieren des Clusters mit bmctl die Schritte unter Vorbereitung aus, um die GKE On-Prem API zu aktivieren und zu initialisieren.
Nachdem Sie diesen Abschnitt hinzugefügt und den Cluster erstellt oder aktualisiert haben, schlägt die Aktualisierung fehl, wenn Sie den Abschnitt entfernen und den Cluster aktualisieren.
Wenn Sie den Cluster statt mit bmctl lieber mit einem Standardtool erstellen möchten, finden Sie hier entsprechende Informationen:
Wenn Sie einen Cluster mit einem Standardtool erstellen, wird der Cluster automatisch in der GKE On-Prem API registriert.
Clusterressource
Optional
gkeOnPremAPI.enabled
Der Cluster wird standardmäßig in der GKE On-Prem API registriert, wenn die GKE On-Prem API in Ihrem Projekt aktiviert ist. Legen Sie dafür false fest, wenn Sie den Cluster nicht registrieren möchten.
Wenn Sie den Cluster in der GKE On-Prem API registriert haben und die Registrierung aufheben müssen, nehmen Sie die folgende Änderung vor und aktualisieren dann den Cluster:
gkeOnPremAPI:
enabled: false
Clusterressource
Erforderlich
Veränderlich
gkeOnPremAPI.location
Die Google Cloud-Region, in der die GKE On-Prem API ausgeführt und Clustermetadaten speichert. Wählen Sie eine der
unterstützten Regionen aus. Muss ein nicht leerer String sein, wenn gkeOnPremAPI.enabled den Wert true hat. Wenn gkeOnPremAPI.enabled den Wert false hat, lass dieses Feld weg.
Wenn dieser Abschnitt nicht in der Konfigurationsdatei enthalten ist, wird dieses Feld auf clusterOperations.location gesetzt.
Clusterressource
Optional
Nicht veränderbar.
kubevirt.useEmulation (verworfen)
Veraltet. Ab Version 1.11.2 können Sie die VM-Laufzeit auf GDC aktivieren oder deaktivieren, indem Sie nur die benutzerdefinierte VMRuntime-Ressource aktualisieren.
Boolescher Wert. Bestimmt, ob die Softwareemulation zum Ausführen virtueller Maschinen verwendet wird. Wenn der Knoten Hardwarevirtualisierung unterstützt, setzen Sie useEmulation auf false, um die Leistung zu verbessern. Wenn die Hardwarevirtualisierung nicht unterstützt wird oder Sie sich nicht sicher sind, legen Sie dafür true fest.
Clusterressource
Optional
Veränderlich
loadBalancer
Dieser Abschnitt enthält Einstellungen für das Cluster-Load-Balancing.
Clusterressource
Erforderlich
Veränderlich
loadBalancer.addressPools
Objekt. Der Name und ein Array von IP-Adressen für den Cluster des Load-Balancers. Die Konfiguration des Adresspools ist nur für den Load-Balancer-Modus bundled in Clustern ohne Administrator gültig. Sie können jederzeit neue Adresspools hinzufügen, vorhandene Adresspools jedoch nicht entfernen.
Ein vorhandener Adresspool kann bearbeitet werden, um nur die Felder avoidBuggyIPs und manualAssign zu ändern.
Clusterressource
Optional
Nicht veränderbar.
loadBalancer.addressPools.addresses
Array von IP-Adressbereichen. Geben Sie eine Liste der nicht überlappenden IP-Bereiche für den Load-Balancer der Datenebene an. Alle Adressen müssen sich im selben Subnetz wie die Load-Balancer-Knoten befinden.
String. Der Name, den Sie für den Load-Balancer-Pool Ihres Clusters auswählen
Clusterressource
Erforderlich
Nicht veränderbar.
loadBalancer.addressPools.avoidBuggyIPs
Optional. Boolescher Wert (true | false). Wenn true, werden die IP-Adressen weggelassen, die auf .0 und .255 enden.
Bestimmte Netzwerkhardware führt zu einem Rückgang des Traffics zu diesen speziellen Adressen. Sie können dieses Feld weglassen. Der Standardwert ist false.
Clusterressource
Optional
Veränderlich
loadBalancer.addressPools.manualAssign
Optional. Boolescher Wert (true | false). Wenn true, werden Adressen in diesem Pool nicht automatisch Kubernetes-Diensten zugewiesen. Bei true wird eine IP-Adresse in diesem Pool nur verwendet, wenn sie explizit von einem Dienst angegeben wird. Sie können dieses Feld weglassen. Der Standardwert ist false.
Clusterressource
Optional
Veränderlich
loadBalancer.mode
Erforderlich. String. Gibt den Load-Balancing-Modus an. Im bundled-Modus installiert GKE on Bare Metal während der Clustererstellung einen Load-Balancer auf Load-Balancer-Knoten. Im manual-Modus benötigt der Cluster einen manuell konfigurierten externen Load-Balancer. Weitere Informationen finden Sie unter Load-Balancer – Übersicht.
Zulässige Werte: bundled | manual
Clusterressource
Erforderlich
Nicht veränderbar.
loadBalancer.type
Optional. String. Gibt den Typ des verwendeten gebündelten Load-Balancings, Layer-2 oder Border Gateway Protocol (BGP) an. Setzen Sie type auf layer2, wenn Sie das Standard-Paket-Load-Balancing verwenden. Setzen Sie type auf bgp, wenn Sie das gebündelte Load-Balancing mit BGP verwenden. Wenn Sie type nicht festlegen, wird standardmäßig layer2 verwendet.
Zulässige Werte: layer2 | bgp
Clusterressource
Optional
Nicht veränderbar.
loadBalancer.nodePoolSpec
Optional. In diesem Abschnitt konfigurieren Sie einen Load-Balancer-Knotenpool. Die von Ihnen angegebenen Knoten sind Teil des Kubernetes-Clusters und führen reguläre Arbeitslasten und Load-Balancer aus. Wenn Sie keinen Knotenpool angeben, werden die Knoten der Steuerungsebene für das Load-Balancing verwendet. Dieser Abschnitt gilt nur, wenn der Load-Balancing-Modus auf bundled gesetzt ist.
Clusterressource
Optional
Veränderlich
loadBalancer.nodePoolSpec.nodes
Dieser Abschnitt enthält ein Array von IP-Adressen für die Knoten im Load-Balancer-Knotenpool.
Clusterressource
Optional
Veränderlich
loadBalancer.nodePoolSpec.nodes.address
Optional. String (IPv4-Adresse). IP-Adresse eines Knotens.
Clusterressource
Optional
Veränderlich
loadBalancer.nodePoolSpec.kubeletConfig
Optional.
Dieser Abschnitt enthält Felder, mit denen Kubelet auf allen Knoten im Knotenpool der Steuerungsebene konfiguriert wird.
Optional. Ganzzahl (nicht negativ). Gibt die maximale Anzahl von Image-Pull-Anfragen an, die der Verarbeitungswarteschlange hinzugefügt werden können, um Spitzen in Anfragen zu verarbeiten. Sobald ein Pull-Vorgang gestartet wird, kann eine neue Anfrage zur Warteschlange hinzugefügt werden. Der Standardwert ist 10. Dieses Feld entspricht der Kubelet-Konfigurationsoption registryBurst (v1beta1).
Der Wert für registryPullQPS hat Vorrang vor dieser Einstellung. Mit den Standardeinstellungen sind beispielsweise Bursts von bis zu 10 gleichzeitigen Abfragen zulässig, sie müssen jedoch mit der Standardrate von fünf Abfragen pro Sekunde verarbeitet werden. Dieses Burst-Verhalten wird nur verwendet, wenn registryPullQPS größer als 0 ist.
Dieses Feld kann immer dann festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden. Die Einstellung bleibt auch nach Clusterupgrades bestehen. Weitere Informationen finden Sie unter Einstellungen für das Abrufen von kubelet-Images konfigurieren.
Optional. Ganzzahl (nicht negativ). Gibt die Verarbeitungsrate für Abfragen von Container Registry-Image-Abrufen in Abfragen pro Sekunde an.
Wenn registryPullQPS auf einen Wert größer als 0 festgelegt ist, wird die Abfragerate auf diese Anzahl von Abfragen pro Sekunde beschränkt. Wenn registryPullQPS auf 0 gesetzt ist, gibt es keine Einschränkung der Abfragerate. Der Standardwert ist 5.
Dieses Feld entspricht der Kubelet-Konfigurationsoption registryPullQPS (v1beta1).
Dieses Feld kann immer dann festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden. Die Einstellung bleibt auch nach Clusterupgrades bestehen. Weitere Informationen finden Sie unter Einstellungen für das Abrufen von kubelet-Images konfigurieren.
Optional. Boolescher Wert (true|false). Dieses Feld gibt an, ob Container Registry-Abrufe parallel oder einzeln verarbeitet werden. Der Standardwert ist true und gibt an, dass Abrufe nacheinander verarbeitet werden. Wenn dieser Wert auf false gesetzt ist, ruft Kubelet die Images parallel ab. Dieses Feld entspricht der Kubelet-Konfigurationsoption serializeImagePulls (v1beta1).
Dieses Feld kann immer dann festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden. Die Einstellung bleibt auch nach Clusterupgrades bestehen. Weitere Informationen finden Sie unter Einstellungen für das Abrufen von kubelet-Images konfigurieren.
Clusterressource
Optional
Veränderlich
loadBalancer.ports.controlPlaneLBPort
Zahl. Der Zielport, der für den Traffic verwendet wird, der an die Kubernetes-Steuerungsebene (die Kubernetes API-Server) gesendet wird.
Clusterressource
Erforderlich
Nicht veränderbar.
loadBalancer.vips.controlPlaneVIP
Erforderlich. Gibt die virtuelle IP-Adresse (VIP) an, die eine Verbindung zum Kubernetes API-Server herstellen soll. Diese Adresse darf nicht in den Bereich der IP-Adressen loadBalancer.addressPools.addresses fallen, die für Load-Balancer-Adresspools verwendet werden.
Clusterressource
Erforderlich
Nicht veränderbar.
loadBalancer.vips.ingressVIP
Optional. String (IPv4-Adresse). Die IP-Adresse, die Sie für den Load-Balancer für eingehenden Traffic konfigurieren möchten.
Clusterressource
Optional
Nicht veränderbar.
loadBalancer.localASN
Optional. String. Gibt die Nummer des autonomen Systems (Autonomous System Number, ASN) für den zu erstellenden Cluster an. Dieses Feld wird beim Einrichten der gebündelten Load-Balancing-Lösung verwendet, die BGP (Border Gateway Protocol) verwendet.
Weitere Informationen finden Sie unter Gebündelte Load-Balancer mit BGP konfigurieren.
Clusterressource
Optional
Veränderlich
loadBalancer.bgpPeers
Optional. Objekt (Liste der Zuordnungen). In diesem Abschnitt werden ein oder mehrere BGP-Peers (Border Gateway Protocol) von Ihrem lokalen Netzwerk (außerhalb des Clusters) angegeben. Sie geben BGP-Peers an, wenn Sie den Load-Balancing-Teil der Steuerungsebene der gebündelten Load-Balancing-Lösung einrichten, die BGP verwendet. Jeder Peer wird mit einer Zuordnung angegeben, die aus einer IP-Adresse, einer autonomen Systemnummer (ASN) und optional einer Liste mit einer oder mehreren IP-Adressen für Knoten der Steuerungsebene besteht. Die BGP-Peering-Konfiguration für das Load-Balancing der Steuerungsebene kann nach dem Erstellen des Clusters nicht aktualisiert werden.
Optional. String (IPv4-Adresse) Die IP-Adresse eines externen Peering-Geräts aus Ihrem lokalen Netzwerk
Weitere Informationen finden Sie unter Gebündelte Load-Balancer mit BGP konfigurieren.
Clusterressource
Optional
Veränderlich
loadBalancer.bgpPeers.asn
Optional. String. Die autonome Systemnummer für das Netzwerk, das das externe Peer-Gerät enthält Geben Sie eine ASN für jeden BGP-Peer an, den Sie für das Load-Balancing der Steuerungsebene eingerichtet haben, wenn Sie die gebündelte Load-Balancing-Lösung einrichten, die BGP verwendet.
Weitere Informationen finden Sie unter Gebündelte Load-Balancer mit BGP konfigurieren.
Clusterressource
Optional
Veränderlich
loadBalancer.bgpPeers.controlPlaneNodes
Optional. Array von IP-Adressen (IPv4) Eine oder mehrere IP-Adressen für Knoten der Steuerungsebene, die eine Verbindung zum externen BGP-Peer herstellen, wenn Sie die gebündelte Load-Balancing-Lösung einrichten, die BGP verwendet. Wenn Sie keine Steuerungsebenenknoten angeben, werden alle Steuerungsebenenknoten mit dem externen Peer verbunden. Wenn Sie eine oder mehrere IP-Adressen angeben, nehmen nur die angegebenen Knoten an Peering-Sitzungen teil.
Weitere Informationen finden Sie unter Gebündelte Load-Balancer mit BGP konfigurieren.
Clusterressource
Optional
Veränderlich
maintenanceBlocks.cidrBlocks
Optional. Einzelne IPv4-Adresse oder ein Bereich von IPv4-Adressen. Geben Sie die IP-Adressen der Knotenmaschinen an, die in den Wartungsmodus versetzt werden sollen. Weitere Informationen finden Sie unter Knoten in den Wartungsmodus versetzen.
Beispiel:
maintenanceBlocks:
cidrBlocks:
- 192.168.1.200 # Single machine
- 192.168.1.100-192.168.1.109 # Ten machines
Clusterressource
Optional
Veränderlich
nodeAccess.loginUser
Optional. String. Geben Sie den Nicht-Root-Nutzernamen an, den Sie für den passwortlosen SUDO-Zugriff auf die Knotenmaschinen in Ihrem Cluster verwenden möchten. Der SSH-Schlüssel sshPrivateKeyPath muss für den angegebenen Nutzer funktionieren. Mit den Vorgängen zum Erstellen und Aktualisieren von Clustern wird geprüft, ob auf Knotencomputer mit dem angegebenen Nutzer und SSH-Schlüssel zugegriffen werden kann.
Clusterressource
Optional
Veränderlich
osEnvironmentConfig.addPackageRepo
Optional. Boolescher Wert (true | false). Gibt an, ob Ihr eigener Paket-Repository-Server anstelle des standardmäßigen Docker-Repositorys apt verwendet werden soll. Wenn Sie Ihr eigenes Paket-Repository verwenden möchten, setzen Sie addPackageRepo auf false. Mit diesem Feature müssen Sie jeder Bare-Metal-Maschine in Ihrer Bereitstellung keine Paket-Repositories mehr hinzufügen. Weitere Informationen finden Sie unter Privaten Paket-Repository-Server verwenden.
Clusterressource
Optional
Nicht veränderbar.
nodeConfig
Dieser Abschnitt enthält Einstellungen für die Clusterknotenkonfiguration.
Clusterressource
Optional
Änderbar (nur Upgrade)
nodeConfig.containerRuntime (verworfen)
Eingestellt. Ab Version 1.13.0 unterstützt GKE on Bare Metal containerd nur noch als Containerlaufzeit. Das Feld containerRuntime wurde verworfen und wurde aus der generierten Clusterkonfigurationsdatei entfernt. Wenn Ihre Clusterkonfigurationsdatei dieses Feld ab GKE on Bare Metal-Versionen 1.13.0 und höher enthält, muss der Wert containerd sein.
Clusterressource
Optional
Änderbar (nur Upgrade)
nodeConfig.podDensity
In diesem Abschnitt wird die Konfiguration der Pod-Dichte angegeben.
Clusterressource
Optional
Nicht veränderbar.
nodeConfig.podDensity.maxPodsPerNode
Optional. Integer. Gibt die maximale Anzahl von Pods an, die auf einem einzelnen Knoten ausgeführt werden können. Für selbstverwaltete Cluster sind die zulässigen Werte für maxPodsPerNode32–250 für Hochverfügbarkeitscluster (HA) und 64–250. für Nicht-HA-Cluster. Für Nutzercluster sind zulässige Werte für maxPodsPerNode32–250. Der Standardwert, wenn nicht angegeben, ist 110. Nachdem der Cluster erstellt wurde, kann dieser Wert nicht mehr aktualisiert werden.
Kubernetes weist jedem Knoten einen CIDR-Block (Classless Inter-Domain Routing) zu, sodass jeder Pod eine eindeutige IP-Adresse haben kann. Die Größe des CIDR-Blocks entspricht der maximalen Anzahl von Pods pro Knoten.
Weitere Informationen zum Festlegen der maximalen Anzahl von Pods pro Knoten finden Sie unter Pod-Netzwerke.
Clusterressource
Optional
Nicht veränderbar.
nodePoolUpgradeStrategy
Optional. Dieser Abschnitt enthält Einstellungen zum Konfigurieren der Upgradestrategie für die Worker-Knotenpools in Ihrem Cluster. Weitere Informationen finden Sie unter Parallele Upgrades.
Clusterressource
Optional
Veränderlich
nodePoolUpgradeStrategy.concurrentNodePools
Optional. Boolescher Wert (0 oder 1). Standardeinstellung: 1.
Dieses Feld gibt an, ob alle Worker-Knotenpools für einen Cluster gleichzeitig aktualisiert werden sollen. Standardmäßig führen Sie Upgrades nacheinander (1) nacheinander durch. Wenn Sie concurrentNodePools auf 0 setzen, wird jeder Worker-Knotenpool im Cluster parallel aktualisiert.
Die Knoten in jedem Worker-Knotenpool werden gemäß der Upgradestrategie in der entsprechenden Knotenpoolspezifikation aktualisiert.
Clusterressource
Optional
Veränderlich
periodicHealthCheck
Dieser Abschnitt enthält Konfigurationsinformationen für regelmäßige Systemdiagnosen. In der Clusterressource ist das Feld enable die einzige Einstellung, die für regelmäßige Systemdiagnosen verfügbar ist. Weitere Informationen finden Sie unter Regelmäßige Systemdiagnosen.
Clusterressource
Optional
Veränderlich
periodicHealthCheck.enable
Optional. Boolescher Wert (true|false). Aktivieren oder deaktivieren Sie regelmäßige Systemdiagnosen für Ihren Cluster. Regelmäßige Systemdiagnosen sind standardmäßig für alle Cluster aktiviert. Sie können regelmäßige Systemdiagnosen für einen Cluster deaktivieren. Setzen Sie dazu das Feld periodicHealthCheck.enable auf false.
Weitere Informationen finden Sie unter Regelmäßige Systemdiagnosen deaktivieren.
Clusterressource
Optional
Veränderlich
profile
Optional. String. Wenn profile für einen eigenständigen Cluster auf edge gesetzt ist, wird der Ressourcenverbrauch des Clusters minimiert. Das Edge-Profil ist nur für eigenständige Cluster verfügbar.
Das Edge-Profil hat weniger Systemressourcenanforderungen und wird für Edge-Geräte mit restriktiven Ressourceneinschränkungen empfohlen.
Informationen zu Hardwareanforderungen, die mit dem Edge-Profil verknüpft sind, finden Sie unter Ressourcenanforderungen für eigenständige Cluster mit dem Edge-Profil.
Clusterressource
Optional
Nicht veränderbar.
proxy
Wenn sich Ihr Netzwerk hinter einem Proxyserver befindet, füllen Sie diesen Abschnitt aus.
Andernfalls entfernen Sie diesen Abschnitt.
Clusterressource
Optional
Veränderlich
proxy.noProxy
String. Eine durch Kommas getrennte Liste von IP-Adressen, IP-Adressbereichen, Hostnamen und Domainnamen, die nicht über den Proxyserver geleitet werden sollen. Wenn GKE on Bare Metal eine Anfrage an eine dieser Adressen, Hosts oder Domains sendet, wird die Anfrage direkt gesendet.
Clusterressource
Optional
Nicht veränderbar.
proxy.url
String. Die HTTP-Adresse Ihres Proxyservers. Geben Sie die Portnummer an, auch wenn sie mit dem Standardport des Schemas identisch ist.
Optional. Boolescher Wert (true|false). Aktivieren oder deaktivieren Sie das clusterweite seccomp. Wenn dieses Feld deaktiviert ist, werden Container ohne seccomp-Profil in der Clusterkonfigurationsdatei uneingeschränkt ausgeführt. Wenn dieses Feld aktiviert ist, werden dieselben Container mit dem Standardprofil seccomp der Containerlaufzeit gesichert. Dieses Feature ist standardmäßig aktiviert.
Nach der Clustererstellung kann dieses Feld nur während des Upgrades aktiviert oder deaktiviert werden.
Weitere Informationen finden Sie unter Container mit seccomp einschränken.
Clusterressource
Optional
Änderbar (nur Upgrade)
clusterSecurity.enableRootlessContainers
Optional. Boolescher Wert (true|false). Rootlose Bare-Metal-Systemcontainer aktivieren/deaktivieren. Wenn dieses Feld aktiviert ist, werden Bare-Metal-Systemcontainer als Nicht-Root-Nutzer mit einer Nutzer-ID im Bereich 2.000–5.000 ausgeführt. Wenn diese Option deaktiviert ist, werden Bare-Metal-Systemcontainer als Root-Nutzer ausgeführt. Diese Funktion ist standardmäßig aktiviert. Wir raten dringend davon ab, diese Funktion zu deaktivieren, da die Ausführung von Containern als Root-Nutzer ein Sicherheitsrisiko darstellt. Nach der Clustererstellung kann dieses Feld nur während des Upgrades aktiviert oder deaktiviert werden. Weitere Informationen finden Sie unter Container nicht als Root-Nutzer ausführen.
Clusterressource
Optional
Änderbar (nur Upgrade)
clusterSecurity.authorization
Optional. Durch die Autorisierung wird der Nutzerzugriff auf den Cluster konfiguriert.
Clusterressource
Optional
Veränderlich
clusterSecurity.authorization.clusterAdmin
Optional. Gibt den Clusteradministrator für diesen Cluster an.
Optional. Im Feld gcpAccounts wird eine Liste der Konten angegeben, denen die rollenbasierte Zugriffssteuerung (Role-based Access Control, RBAC) von Kubernetesclusterrole/cluster-admin zugewiesen wurde. Konten mit dieser Rolle haben in allen Namespaces uneingeschränkten Zugriff auf jede Ressource im Cluster. In diesem Feld werden auch die RBAC-Richtlinien konfiguriert, nach denen die angegebenen Konten das Connect-Gateway zum Ausführen von kubectl-Befehlen für den Cluster verwenden können. Dies ist praktisch, wenn Sie mehrere Cluster verwalten müssen, insbesondere in einer Hybridumgebung mit GKE- und lokalen Clustern.
Dieses Feld verwendet ein Array von Kontonamen. Nutzerkonten und Dienstkonten werden unterstützt. Für Nutzer geben Sie die E-Mail-Adressen ihrer Google Cloud-Konten an. Geben Sie für Dienstkonten die E-Mail-Adressen im folgenden Format an: SERVICE_ACCOUNT@PROJECT_ID.iam.gserviceaccount.com.
Beispiel:
Wenn Sie einen Cluster aktualisieren, um ein Konto hinzuzufügen, müssen Sie alle Konten (sowohl vorhandene als auch neue Konten) in die Liste aufnehmen, da der Aktualisierungsbefehl die Liste mit den in der Aktualisierung angegebenen Daten überschreibt.
Dieses Feld gilt nur für Cluster, die Arbeitslasten ausführen können. Sie können gcpAccounts beispielsweise nicht für Administratorcluster angeben.
Clusterressource
Optional
Veränderlich
storage.lvpNodeMounts.path
Erforderlich. String. Geben Sie im Feld path den Hostcomputerpfad an, unter dem bereitgestellte Laufwerke erkannt werden können. Für jede Bereitstellung wird ein lokales PersistentVolume (PV) erstellt. Der Standardpfad ist /mnt/localpv-share. Eine Anleitung zum Konfigurieren der Knotenbereitstellungen finden Sie unter LVP-Knotenbereitstellungen konfigurieren.
Clusterressource
Erforderlich
Nicht veränderbar.
storage
Dieser Abschnitt enthält Einstellungen für den Clusterspeicher.
Clusterressource
Erforderlich
Nicht veränderbar.
storage.lvpNodeMounts
In diesem Abschnitt wird die Konfiguration (Pfad) für lokale nichtflüchtige Volumes angegeben, die von bereitgestellten Laufwerken unterstützt werden. Sie müssen diese Laufwerke selbst formatieren und bereitstellen. Sie können diese Aufgabe vor oder nach der Clustererstellung ausführen. Weitere Informationen finden Sie unter LVP-Knotenbereitstellungen.
Clusterressource
Erforderlich
Nicht veränderbar.
storage.lvpShare
In diesem Abschnitt wird die Konfiguration für lokale nichtflüchtige Volumes angegeben, die von Unterverzeichnissen in einem freigegebenen Dateisystem unterstützt werden. Diese Unterverzeichnisse werden bei der Clustererstellung automatisch erstellt.
Weitere Informationen finden Sie unter LVP-Freigabe.
Clusterressource
Erforderlich
Nicht veränderbar.
storage.lvpShare.path
Erforderlich. String. Geben Sie im Feld path den Hostcomputerpfad an, in dem Unterverzeichnisse erstellt werden können. Für jedes Unterverzeichnis wird ein lokales PersistentVolume (PV) erstellt. Eine Anleitung zum Konfigurieren Ihrer LVP-Freigabe finden Sie unter LVP-Freigabe konfigurieren.
Clusterressource
Erforderlich
Nicht veränderbar.
storage.lvpShare.numPVUnderSharedPath
Erforderlich. String. Geben Sie die Anzahl der zu erstellenden Unterverzeichnisse unter lvpShare.path an. Der Standardwert ist 5. Eine Anleitung zum Konfigurieren Ihrer LVP-Freigabe finden Sie unter LVP-Freigabe konfigurieren.
Clusterressource
Erforderlich
Nicht veränderbar.
storage.lvpShare.storageClassName
Erforderlich. String. Geben Sie die StorageClass an, die zum Erstellen nichtflüchtiger Volumes verwendet werden soll. Die StorageClass wird während der Clustererstellung erstellt. Der Standardwert ist local-shared. Anleitungen zum Konfigurieren Ihrer LVP-Freigabe finden Sie unter LVP-Freigabe konfigurieren.
Clusterressource
Optional
Nicht veränderbar.
type
Erforderlich. String. Gibt den Clustertyp an. Das Standardbereitstellungsmodell besteht aus einem einzelnen Administratorcluster und einem oder mehreren Nutzerclustern, die vom Administratorcluster verwaltet werden. GKE on Bare Metal unterstützt die folgenden Clustertypen:
Admin – Ein Cluster, der zum Verwalten von Nutzerclustern verwendet wird.
Nutzer – Ein Cluster zum Ausführen von Arbeitslasten.
Hybrid: einzelner Cluster für Administrator und Arbeitslasten, der auch Nutzercluster verwalten kann.
Eigenständig: ein einzelner Cluster, der sich selbst verwalten und auch Arbeitslasten ausführen kann, aber keine anderen Nutzercluster erstellen oder verwalten kann.
Der Clustertyp wird bei der Clustererstellung angegeben und kann für Updates oder Upgrades nicht geändert werden. Weitere Informationen zum Erstellen eines Clusters finden Sie unter Cluster erstellen: Übersicht.
Zulässige Werte: admin | user | hybrid | standalone
Dieser Wert kann nicht für vorhandene Cluster geändert werden.
Clusterressource
Erforderlich
Nicht veränderbar.
name
Erforderlich. String. In der Regel verwendet der Namespace-Name das Muster cluster-CLUSTER_NAME. Das Präfix cluster- ist jedoch seit Version 1.7.2 von GKE on Bare Metal nicht unbedingt erforderlich.
Dieser Wert kann nicht für vorhandene Cluster geändert werden.
Namespace-Ressource
Erforderlich
Nicht veränderbar.
clusterName
String. Erforderlich. Der Name des Clusters, dem Sie den Knotenpool hinzufügen. Erstellen Sie die Knotenpoolressource im selben Namespace wie der zugehörige Cluster und verweisen Sie in diesem Feld auf den Clusternamen. Weitere Informationen finden Sie unter Knotenpools in einem Cluster hinzufügen und entfernen.
Optional. Ganzzahl (nicht negativ). Gibt die maximale Anzahl von Image-Pull-Anfragen an, die der Verarbeitungswarteschlange hinzugefügt werden können, um Spitzen in Anfragen zu verarbeiten. Sobald ein Pull-Vorgang gestartet wird, kann eine neue Anfrage zur Warteschlange hinzugefügt werden. Der Standardwert ist 10. Dieses Feld entspricht der Kubelet-Konfigurationsoption registryBurst (v1beta1).
Der Wert für registryPullQPS hat Vorrang vor dieser Einstellung. Mit den Standardeinstellungen sind beispielsweise Bursts von bis zu 10 gleichzeitigen Abfragen zulässig, sie müssen jedoch mit der Standardrate von fünf Abfragen pro Sekunde verarbeitet werden. Dieses Burst-Verhalten wird nur verwendet, wenn registryPullQPS größer als 0 ist.
Dieses Feld kann immer dann festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden. Die Einstellung bleibt auch nach Clusterupgrades bestehen. Weitere Informationen finden Sie unter Einstellungen für das Abrufen von kubelet-Images konfigurieren.
NodePool-Ressource
Optional
Veränderlich
kubeletConfig.registryPullQPS
Optional. Ganzzahl (nicht negativ). Gibt die Verarbeitungsrate für Abfragen von Container Registry-Image-Abrufen in Abfragen pro Sekunde an.
Wenn registryPullQPS auf einen Wert größer als 0 festgelegt ist, wird die Abfragerate auf diese Anzahl von Abfragen pro Sekunde beschränkt. Wenn registryPullQPS auf 0 gesetzt ist, gibt es keine Einschränkung der Abfragerate. Der Standardwert ist 5.
Dieses Feld entspricht der Kubelet-Konfigurationsoption registryPullQPS (v1beta1).
Dieses Feld kann immer dann festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden. Die Einstellung bleibt auch nach Clusterupgrades bestehen. Weitere Informationen finden Sie unter Einstellungen für das Abrufen von kubelet-Images konfigurieren.
NodePool-Ressource
Optional
Veränderlich
kubeletConfig.serializeImagePulls
Optional. Boolescher Wert (true|false). Dieses Feld gibt an, ob Container Registry-Abrufe parallel oder einzeln verarbeitet werden. Der Standardwert ist true und gibt an, dass Abrufe nacheinander verarbeitet werden. Wenn dieser Wert auf false gesetzt ist, ruft Kubelet die Images parallel ab. Dieses Feld entspricht der Kubelet-Konfigurationsoption serializeImagePulls (v1beta1).
Dieses Feld kann immer dann festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden. Die Einstellung bleibt auch nach Clusterupgrades bestehen. Weitere Informationen finden Sie unter Einstellungen für das Abrufen von kubelet-Images konfigurieren.
NodePool-Ressource
Optional
Veränderlich
taints
Optional. Objekt. Mit einer Knotenmarkierung können Sie einen Knoten markieren. Dies bewirkt, dass der Planer den Knoten für bestimmte Pods nicht verwendet. Eine Markierung besteht aus einem Schlüssel/Wert-Paar und einem zugehörigen Effekt. Die Werte key und value sind Strings, mit denen Sie die Markierung identifizieren. Der Wert effect gibt an, wie Pods für den Knoten verarbeitet werden. Das Objekt taints kann mehrere Markierungen haben.
Das Label effect kann einen der folgenden Werte haben:
NoSchedule: Ein Pod kann nur dann auf dem Knoten geplant werden, wenn er eine übereinstimmende Toleranz hat.
PreferNoSchedule: Das System vermeidet es, einen Pod zu platzieren, der die Markierung nicht auf dem Knoten toleriert. Dies ist aber nicht erforderlich.
NoExecute: Pods, die die Markierung nicht tolerieren, werden sofort entfernt. Pods, die die Markierung tolerieren, werden nie entfernt.
Bei GKE on Bare Metal werden Markierungen mit den Knoten des Knotenpools abgeglichen, es sei denn, die Annotation baremetal.cluster.gke.io/label-taint-no-sync wird auf den Cluster angewendet. Weitere Informationen zu Markierungen finden Sie unter Markierungen und Toleranzen.
Beispiel:
taints:
- key: status
value: testpool
effect: NoSchedule
NodePool-Ressource
Optional
Veränderlich
labels
Optional. Zuordnung (Schlüssel/Wert-Paare).
Labels werden auf die Knoten des Knotenpools abgeglichen, sofern die Annotation baremetal.cluster.gke.io/label-taint-no-sync nicht auf den Cluster angewendet wird. Weitere Informationen zu Labels finden Sie unter Labels und Selektoren.
NodePool-Ressource
Optional
Veränderlich
upgradeStrategy
Optional. Dieser Abschnitt enthält Einstellungen zum Konfigurieren der Upgradestrategie für die Knoten in einem Worker-Knotenpool. Weitere Informationen finden Sie unter Parallele Upgrades.
Hinweis: Fügen Sie diesen Abschnitt nicht für Knotenpools oder Load-Balancer-Knotenpools hinzu.
NodePool-Ressource
Optional
Veränderlich
upgradeStrategy.parallelUpgrade
Optional. Dieser Abschnitt enthält Einstellungen zum Konfigurieren paralleler Knotenupgrades für einen Worker-Knotenpool. Bei einem typischen Standardclusterupgrade wird jeder Clusterknoten nacheinander und nacheinander aktualisiert. Sie können Worker-Knotenpools so konfigurieren, dass mehrere Knoten beim Upgrade des Clusters parallel aktualisiert werden. Parallele Knotenupgrades können Cluster-Upgrades erheblich beschleunigen, insbesondere bei Clustern mit Hunderten von Knoten.
Für einen Worker-Knotenpool können Sie die Anzahl der Knoten angeben, die gleichzeitig aktualisiert werden sollen, und einen Mindestgrenzwert für die Anzahl der Knoten festlegen, über die während des Upgrades Arbeitslasten ausgeführt werden können.
Optional. Ganzzahl (positiv). Standardeinstellung: 1. Max.: 15.
Standardmäßig (1) werden Knoten sequenziell nacheinander aktualisiert. Wenn Sie für concurrentNodes eine Zahl größer als 1 festlegen, gibt dieses Feld die Anzahl der Knoten an, die parallel aktualisiert werden sollen. Beachten Sie die folgenden Einschränkungen für concurrentNodes:
Der Wert darf nicht den kleineren Wert von 50 % der Anzahl der Knoten im Knotenpool oder die feste Anzahl 15 überschreiten. Wenn Ihr Knotenpool beispielsweise 20 Knoten hat, können Sie keinen Wert größer als 10 angeben. Wenn Ihr Knotenpool 100 Knoten hat, können Sie den Höchstwert 15 angeben.
Wenn Sie dieses Feld zusammen mit dem Feld minimumAvailableNodes verwenden, dürfen deren kombinierte Werte die Gesamtzahl der Knoten im Knotenpool nicht überschreiten. Wenn Ihr Knotenpool beispielsweise 20 Knoten hat und minimumAvailableNodes auf 18 gesetzt ist, darf concurrentNodes2 nicht überschreiten.
Bei parallelen Upgrades wird das Budget für Pod-Störungen nicht berücksichtigt.
Wenn Ihre Arbeitslasten empfindlich auf Unterbrechungen reagieren, sollten Sie minimumAvailableNodes angeben, damit eine bestimmte Anzahl von Knoten verfügbar bleibt, um Arbeitslasten während des Upgradeprozesses auszuführen. Weitere Informationen finden Sie unter Parallele Upgrades.
Optional. Ganzzahl (nicht negativ). Standardeinstellung: Abhängig von concurrentNodes. Weitere Informationen zu den Standardwerten für minimumAvailableNodes finden Sie unter Standardeinstellungen für parallele Upgrades. Mit minimumAvailableNodes können Sie die Anzahl der Knoten im Knotenpool angeben, die während des Upgradeprozesses verfügbar bleiben müssen. Ein Knoten gilt als nicht verfügbar, wenn er aktiv aktualisiert wird. Ein Knoten gilt auch als nicht verfügbar, wenn eine der folgenden Bedingungen erfüllt ist:
Knoten befindet sich im Wartungsmodus
Knoten wird abgeglichen
Knoten wird mitten in einem Upgrade stehen
Wenn Sie dieses Feld zusammen mit dem Feld concurrentNodes verwenden, dürfen deren kombinierte Werte die Gesamtzahl der Knoten im Knotenpool nicht überschreiten. Wenn Ihr Knotenpool beispielsweise 20 Knoten hat und concurrentNodes auf 10 gesetzt ist, darf minimumAvailableNodes10 nicht überschreiten.
Ein hoher Wert für minimumAvailableNodes minimiert Kapazitätsprobleme bei der Planung von Pods und schützt daher Arbeitslasten während eines Clusterupgrades. Ein hoher Wert für minimumAvailableNodes erhöht jedoch das Risiko, dass ein Upgrade beim Warten auf die Verfügbarkeit von Knoten verzögert wird. Weitere Informationen finden Sie unter Parallele Upgrades.
NodePool-Ressource
Optional
Veränderlich
registryMirrors
Optional. In diesem Abschnitt geben Sie einen Registry-Spiegel an, der für die Installation von Clustern anstelle von Container Registry (gcr.io) verwendet werden soll. Weitere Informationen zum Verwenden eines Registry-Spiegels finden Sie unter GKE on Bare Metal mithilfe eines Registry-Spiegels installieren.
String. Der Endpunkt des Spiegels, bestehend aus der IP-Adresse und der Portnummer des Registry-Servers. Optional können Sie Ihren eigenen Namespace in Ihrem Registry-Server anstelle des Root-Namespace verwenden. Ohne Namespace ist das Endpunktformat REGISTRY_IP:PORT. Wenn Sie einen Namespace verwenden, hat das Endpunktformat REGISTRY_IP:PORT/v2/NAMESPACE.
/v2 ist erforderlich, wenn ein Namespace angegeben wird.
Das Feld endpoint ist erforderlich, wenn Sie einen Registrierungsspiegel angeben. Sie können mehrere Spiegel/Endpunkte angeben.
Optional. String. Pfad der CA-Zertifikatsdatei (Root-Zertifizierungsstelle des Servers), wenn Ihr Registry-Server ein privates TLS-Zertifikat verwendet. Wenn für Ihre lokale Registry kein privates TLS-Zertifikat erforderlich ist, können Sie dieses Feld auslassen.
Registrierungsspiegel
Optional
Veränderlich
registryMirrors.pullCredentialConfigPath
Optional. String. Pfad zur Konfigurationsdatei der Docker CLI (config.json) Docker speichert Authentifizierungseinstellungen in der Konfigurationsdatei. Dieses Feld gilt nur für die Verwendung von Registrierungsspiegeln. Wenn Ihr Registry-Server keine Docker-Konfigurationsdatei für die Authentifizierung benötigt, können Sie dieses Feld auslassen.
Optional. Ein Array mit Domainnamen für Hosts, die lokal für den angegebenen Registry-Mirror (endpoint) gespiegelt werden. Wenn die Containerlaufzeit Pull-Anfragen für Images von einem bestimmten Host erkennt, prüft sie zuerst den lokalen Registry-Mirror. Weitere Informationen finden Sie unter Cluster aus dem Registry-Spiegel erstellen.
Die von bmctl für GKE on Bare Metal generierte Clusterkonfigurationsdatei enthält Felder zum Angeben von Pfaden zu Anmeldedaten- und Schlüsseldateien im lokalen Dateisystem. Diese Anmeldedaten und Schlüssel werden benötigt, um Ihre Cluster miteinander und mit Ihrem Google Cloud-Projekt zu verbinden.
String. Der Pfad zum Dienstkontoschlüssel der Container Registry. Das Container Registry-Dienstkonto ist ein von Google verwaltetes Dienstkonto, das im Namen von Container Registry agiert, wenn es mit Google Cloud-Diensten interagiert.
Anmeldedaten
Optional
Veränderlich
sshPrivateKeyPath
String. Der Pfad zum privaten SSH-Schlüssel. SSH ist für den Knotenzugriff erforderlich.
Anmeldedaten
Optional
Veränderlich
gkeConnectAgentServiceAccountKeyPath
String. Der Pfad zum Agent-Dienstkontoschlüssel.
GKE on Bare Metal verwendet dieses Dienstkonto, um eine Verbindung zwischen GKE on Bare Metal und Google Cloud aufrechtzuerhalten.
String. Der Pfad zum Dienstkontoschlüssel für die Registrierung
GKE on Bare Metal verwendet dieses Dienstkonto, um Ihre Nutzercluster bei Google Cloud zu registrieren.
String. Der Pfad zum Dienstkontoschlüssel des Vorgangs
GKE on Bare Metal verwendet das Vorgangsdienstkonto, um sich bei Google Cloud Observability für den Zugriff auf die Logging API und Monitoring API zu authentifizieren.
Definiert die Konfiguration für den IPv4-CIDR-Bereich. Für die Ressource ClusterCidrConfig muss mindestens eines der Felder ipv4 oder ipv6 angegeben werden.
ClusterCIDRConfig-Ressource
Optional
Nicht veränderbar.
ipv4.cidr
String. Legt den CIDR-Block des IPv4-Knotens fest. Knoten können nur einen Bereich aus jeder Familie haben. Dieser CIDR-Block muss mit dem Pod-CIDR übereinstimmen, das in der Ressource Cluster beschrieben wird.
Beispiel:
ipv4:
cidr: "10.1.0.0/16"
ClusterCIDRConfig-Ressource
Erforderlich
Nicht veränderbar.
ipv4.perNodeMaskSize
Ganze Zahl. Definiert die Maskengröße für den IPv4-CIDR-Block des Knotens. Der Wert 24 wird beispielsweise in die Netzmaske /24 umgewandelt. Achten Sie darauf, dass die CIDR-Blocknetzmaske des Knotens größer ist als die maximale Anzahl von Pods, die das Kubelet planen kann. Dies ist im Flag --max-pods des Kubelet definiert.
ClusterCIDRConfig-Ressource
Erforderlich
Nicht veränderbar.
ipv6
Definiert die Konfiguration für den IPv6-CIDR-Bereich. Für die Ressource ClusterCidrConfig muss mindestens eines der Felder ipv4 oder ipv6 angegeben werden.
ClusterCIDRConfig-Ressource
Optional
Nicht veränderbar.
ipv6.cidr
String. Legt den CIDR-Block des IPv6-Knotens fest. Knoten können nur einen Bereich aus jeder Familie haben.
Beispiel:
ipv6:
cidr: "2620:0:1000:2631:3:10:3:0/112"
ClusterCIDRConfig-Ressource
Erforderlich
Nicht veränderbar.
ipv6.perNodeMaskSize
Ganze Zahl. Definiert die Maskengröße für den IPv6-CIDR-Block des Knotens. Der Wert 120 wird beispielsweise in die Netzmaske /120 umgewandelt. Achten Sie darauf, dass die CIDR-Blocknetzmaske des Knotens größer ist als die maximale Anzahl von Pods, die das Kubelet planen kann. Dies ist im Flag --max-pods des Kubelet definiert.
ClusterCIDRConfig-Ressource
Erforderlich
Nicht veränderbar.
nodeSelector.matchLabels
Definiert, für welche Knoten die CIDR-Konfiguration gilt. Standardmäßig gilt ein leerer Knotenselektor für alle Knoten.
[[["Leicht verständlich","easyToUnderstand","thumb-up"],["Mein Problem wurde gelöst","solvedMyProblem","thumb-up"],["Sonstiges","otherUp","thumb-up"]],[["Hard to understand","hardToUnderstand","thumb-down"],["Incorrect information or sample code","incorrectInformationOrSampleCode","thumb-down"],["Missing the information/samples I need","missingTheInformationSamplesINeed","thumb-down"],["Problem mit der Übersetzung","translationIssue","thumb-down"],["Sonstiges","otherDown","thumb-down"]],["Zuletzt aktualisiert: 2024-03-15 (UTC)."],[],[]]