Anthos Clusters on Bare Metal sind jetzt Google Distributed Cloud (nur Software) für Bare Metal. Weitere Informationen finden Sie in der Produktübersicht.
Mit Sammlungen den Überblick behalten
Sie können Inhalte basierend auf Ihren Einstellungen speichern und kategorisieren.
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 Google Distributed Cloud-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 ein Reverse-Proxy im Cluster bereitgestellt wird, um die Google Cloud Console mit einem lokalen Identitätsanbieter zu verbinden, der nicht über das Internet öffentlich 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. Beide Funktionen verwenden das Network Gateway für GDC. Network Gateway für GDC ist die Schlüsselkomponente zum Aktivieren erweiterter Netzwerkfeatures in GKE Enterprise und Google Kubernetes Engine (GKE). Einer der Hauptvorteile von Network Gateway for GDC besteht darin, dass es Floating-IP-Adressen aus einer Reihe von Adressen dynamisch zuweisen kann, die Sie in einer benutzerdefinierten NetworkGatewayGroup-Ressource angeben.
Boolescher Wert. Legen Sie dieses Feld auf false fest, um die in Google Distributed Cloud enthaltenen Ingress-Funktionen zu deaktivieren. Die gebündelten Ingress-Funktionen für Ihren Cluster unterstützen nur eingehenden Traffic. Wenn Sie Istio oder Cloud Service Mesh einbinden, um die zusätzlichen Vorteile eines voll funktionsfähigen Service Mesh zu nutzen, empfehlen wir, das gebündelte Ingress zu deaktivieren. Dieses Feld ist standardmäßig auf true festgelegt. Dieses Feld ist in der generierten Clusterkonfigurationsdatei nicht vorhanden. Gebündelte Ingress-Ressourcen können nur für Cluster der Version 1.13.0 und höher deaktiviert werden.
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.forwardMode
Optional. String. Gibt den Netzwerkmodus für das Dataplane V2-Load-Balancing an. Quellnetzwerkadressübersetzung (Source Network Address Translation, SNAT) ist der Standard-Netzwerkmodus. Der Direct Server Return (DSR)-Modus behebt Probleme mit dem SNAT-Load-Balancing. Im DSR-Modus (forwardMode: dsr) verwendet der Load-Balancer-Knoten IP-Optionen, um die Quelladresse des Clients zu speichern.
Der Netzwerkmodus für Dataplane V2-Load-Balancing kann nur beim Erstellen des Clusters konfiguriert werden.
Erforderlich. Bereich der IPv4-Adressen im CIDR-Blockformat. Pods geben die IP-Bereiche an, aus denen Pod-Netzwerke zugewiesen sind.
Mindest-Pod-CIDR-Bereich: Maskenwert von /18, was einer Größe von 14 Bit (16.384 IP-Adressen) entspricht.
Maximaler Pod-CIDR-Bereich: Der Maskenwert von /8 entspricht einer Größe von 24 Bit (16.777.216 IP-Adressen).
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 Google Distributed Cloud-Release 1.15.0 ist dieses Feld änderbar. Bei Bedarf können Sie die Anzahl der den Diensten zugewiesenen IP-Adressen erhöhen, nachdem Sie einen Cluster erstellt haben. Weitere Informationen finden Sie unter Dienstnetzwerkreichweite erhöhen.
Sie können nur den Bereich des IPv4-Dienst-CIDR erhöhen. Der Netzwerkbereich kann nicht reduziert werden, d. h. die Maske (der Wert nach „/“) kann nicht vergrößert werden.
Minimaler CIDR-Bereich des Dienstes: Der Maskenwert von /24 entspricht einer Größe von 8 Bit (256 Adressen).
Maximaler Dienst-CIDR-Bereich: Der Maskenwert von /12 entspricht einer Größe von 20 Bit (1.048.576 IP-Adressen).
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 Logging und Monitoring für Anwendungen finden Sie unter Logging und Monitoring für Anwendungen 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.apiServerCertExtraSANs
Optional. Ein Array von Strings (Domainnamen und IP-Adressen). Ein alternativer Antragstellername (Subject Alternative Name, SAN) ist ein Feature von SSL-Zertifikaten, mit dem Sie die Domainnamen und Subdomains definieren können, für die ein Zertifikat gültig sein soll. In einem GKE on Bare Metal-Cluster enthalten die SANs für das API-Serverzertifikat standardmäßig die IP- und VIP-Adressen der Knoten der Steuerungsebene und die Kubernetes-DNS-Namen.
Verwenden Sie dieses Feld, um dem API-Serverzertifikat für den Cluster zusätzliche SANs hinzuzufügen. Domainnamen müssen RFC 1035 entsprechen.
Weitere Informationen finden Sie unter Dem API-Serverzertifikat Domains hinzufügen.
Dieses Feld kann jederzeit hinzugefügt oder geändert werden.
Clusterressource
Optional
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 Bild-Pull-Anfragen an, die der Verarbeitungswarteschlange hinzugefügt werden können, um Anfragespitzen zu verarbeiten. Zu Beginn eines Pull-Vorgangs kann der Warteschlange eine neue Anfrage 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, 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 jedes Mal festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden, und die Einstellung bleibt bis zu Clusterupgrades erhalten. Weitere Informationen finden Sie unter Abrufeinstellungen für 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, ist 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 jedes Mal festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden, und die Einstellung bleibt bis zu Clusterupgrades erhalten. Weitere Informationen finden Sie unter Abrufeinstellungen für Kubelet-Images konfigurieren.
Optional. Boolesch (true|false). Dieses Feld gibt an, ob Container Registry-Abrufe parallel oder nacheinander verarbeitet werden. Die Standardeinstellung ist true und gibt an, dass Abrufe einzeln verarbeitet werden. Wenn false festgelegt ist, ruft kubelet Images parallel ab. Dieses Feld entspricht der Kubelet-Konfigurationsoption serializeImagePulls (v1beta1).
Dieses Feld kann jedes Mal festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden, und die Einstellung bleibt bis zu Clusterupgrades erhalten. Weitere Informationen finden Sie unter Abrufeinstellungen für 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.
Dieser Wert kann nicht für vorhandene Cluster geändert werden.
Clusterressource
Erforderlich
Nicht veränderbar.
gkeConnect.location
Optional. String. Standardwert: global.
Die Flottenmitgliedschaft für Ihre Cluster wird vom Fleet-Dienst (gkehub.googleapis.com) und dem Connect-Dienst (gkeconnect.googleapis.com) verwaltet. Die Flottenmitgliedschaft kann global oder regional sein. Optional können Sie mit gkeConnect.location die Google Cloud-Region angeben, in der die Flotte und die Connect-Dienste ausgeführt werden, sodass der Traffic auf Ihre Region beschränkt ist.
Eine Liste der unterstützten Regionen finden Sie unter Unterstützte Regionen für die GKE On-Prem API.
Wenn keine Angabe erfolgt, werden die globalen Instanzen der Dienste verwendet.
Wichtige Hinweise:
Cluster, die mit Versionen unter 1.28 erstellt wurden, werden von den globalen Fleet- und Connect-Diensten verwaltet.
Neue Cluster, die mit den GKE On-Prem API-Clients wie der Google Cloud Console, der Google Cloud CLI oder Terraform erstellt wurden, verwenden dieselbe Region, die Sie für die GKE On-Prem API angeben.
Wenn Sie dieses Feld bei neuen Clustern angeben, muss die von Ihnen angegebene Region mit der in gkeOnPremAPI.location konfigurierten Region übereinstimmen. Wenn die Regionen nicht identisch sind, schlägt die Clustererstellung fehl.
Dieser Wert kann nicht für vorhandene Cluster geändert werden.
Clusterressource
Optional
Nicht veränderbar.
gkeOnPremAPI
Wenn ab Version 1.16 die GKE On-Prem API in Ihrem Google Cloud-Projekt aktiviert ist, werden alle Cluster im Projekt automatisch in der in clusterOperations.location konfigurierten Region bei der GKE On-Prem API registriert.
Wenn Sie alle Cluster im Projekt bei der GKE On-Prem API registrieren möchten, führen Sie die Schritte unter Vorbereitung aus, um die GKE On-Prem API im Projekt zu aktivieren und zu verwenden.
Wenn Sie den Cluster nicht bei 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 (der Dienstname für die GKE On-Prem API) im Projekt. Eine Anleitung finden Sie unter Dienste deaktivieren.
Wenn Sie alle Cluster im Projekt bei der GKE On-Prem API registrieren möchten, führen Sie die Schritte unter Vorbereitung aus, um die GKE On-Prem API im Projekt zu aktivieren und zu verwenden.
Wenn Sie den Cluster nicht bei 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 (der Dienstname für die GKE On-Prem API) im Projekt. Eine Anleitung finden Sie unter Dienste deaktivieren.
Wenn Sie Ihren Administrator- oder Nutzercluster bei der GKE On-Prem API registrieren, können Sie mit Standardtools – der Google Cloud Console, der Google Cloud CLI oder
Terraform – Clusterdetails aufrufen und den Clusterlebenszyklus verwalten. Sie können beispielsweise gcloud CLI-Befehle ausführen, um
Informationen über Ihren Cluster abzurufen.
Die GKE On-Prem API speichert Metadaten zum Clusterstatus in Google Cloud.
Mit diesen Metadaten kann die API den Clusterlebenszyklus verwalten. Die Standardtools verwenden die GKE On-Prem API und werden zusammenfassend als GKE On-Prem API-Clients bezeichnet.
Wenn Sie gkeOnPremAPI.enabled auf true setzen, müssen Sie vor dem Erstellen oder Aktualisieren des Clusters mit bmctl die Schritte unter Vorbereitung ausführen, 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 anschließend entfernen und den Cluster aktualisieren.
Wenn Sie den Cluster lieber mit einem Standardtool anstelle von bmctl erstellen möchten, lesen Sie die folgenden Informationen:
Wenn Sie einen Cluster mit einem Standardtool erstellen, wird der Cluster automatisch bei der GKE On-Prem API registriert.
Clusterressource
Optional
gkeOnPremAPI.enabled
Der Cluster ist standardmäßig bei der GKE On-Prem API registriert, wenn die GKE On-Prem API in Ihrem Projekt aktiviert ist. Legen Sie false fest, wenn Sie den Cluster nicht registrieren möchten.
Wenn Sie den Cluster nach der Registrierung des Clusters bei der GKE On-Prem API abmelden müssen, nehmen Sie die folgende Änderung vor und aktualisieren Sie 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 wird und Clustermetadaten speichert. Wählen Sie eine der
unterstützten Regionen aus. Der String darf nicht leer sein, wenn gkeOnPremAPI.enabled den Wert true hat. Wenn gkeOnPremAPI.enabled den Wert false hat, lassen Sie 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 die Einstellung auf 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). Bei 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 Google Distributed Cloud 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.
Wenn Sie verhindern möchten, dass Arbeitslasten auf einem Knoten im Knotenpool des Load-Balancers ausgeführt werden, fügen Sie dem Knoten die folgende Markierung hinzu:
node-role.kubernetes.io/load-balancer:NoSchedule
Google Distributed Cloud fügt den Pods, die für das Load-Balancing erforderlich sind, Toleranzen für diese Markierung hinzu.
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. Obwohl Knoten im Load-Balancer-Knotenpool Arbeitslasten ausführen können, sind sie von den Knoten in den Worker-Knotenpools getrennt. Sie können einen bestimmten Clusterknoten nicht in mehr als einen Knotenpool aufnehmen. Sich überschneidende Knoten-IP-Adressen blockieren die Clustererstellung und andere Clustervorgänge.
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 Anfragespitzen zu verarbeiten. Zu Beginn eines Pull-Vorgangs kann der Warteschlange eine neue Anfrage 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, 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 jedes Mal festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden, und die Einstellung bleibt bis zu Clusterupgrades erhalten. Weitere Informationen finden Sie unter Abrufeinstellungen für 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, ist 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 jedes Mal festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden, und die Einstellung bleibt bis zu Clusterupgrades erhalten. Weitere Informationen finden Sie unter Abrufeinstellungen für Kubelet-Images konfigurieren.
Optional. Boolesch (true|false). Dieses Feld gibt an, ob Container Registry-Abrufe parallel oder nacheinander verarbeitet werden. Die Standardeinstellung ist true und gibt an, dass Abrufe einzeln verarbeitet werden. Wenn false festgelegt ist, ruft kubelet Images parallel ab. Dieses Feld entspricht der Kubelet-Konfigurationsoption serializeImagePulls (v1beta1).
Dieses Feld kann jedes Mal festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden, und die Einstellung bleibt bis zu Clusterupgrades erhalten. Weitere Informationen finden Sie unter Abrufeinstellungen für 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. Boolesch (true | false). Gibt an, ob Ihr eigener Paket-Repository-Server anstelle des standardmäßigen Docker-apt-Repositorys verwendet werden soll. Wenn Sie Ihr eigenes Paket-Repository verwenden möchten, legen Sie addPackageRepo auf false fest. Mit dieser Funktion können Sie das Hinzufügen von Paket-Repositories zu jeder Bare-Metal-Maschine in Ihrer Bereitstellung überspringen. 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 Google Distributed Cloud containerd nur als Containerlaufzeit. Das Feld containerRuntime wurde verworfen und wurde aus der generierten Clusterkonfigurationsdatei entfernt. Wenn die Clusterkonfigurationsdatei ab Google Distributed Cloud-Version 1.13.0 dieses Feld 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.
In diesem Abschnitt wird eine private Registry-Konfiguration auf Knotenebene für Nutzercluster angegeben. Private Registrys auf Knotenebene sind für die Verwendung mit Ihren Arbeitslasten vorgesehen, um Ihnen mehr Kontrolle über Image-Abrufe und die damit verbundene Sicherheit zu geben.
Für Administratorcluster wird die private Registry auf Knotenebene im Abschnitt „Anmeldedaten“ der Konfigurationsdatei des Administratorclusters angegeben.
Verwenden Sie diesen Abschnitt gegebenenfalls, um den Namen und den Namespace des Secrets anzugeben, das zum Speichern des CA-Zertifikats (Server-Stammzertifizierungsstelle) für die private Registry erstellt wurde. Wenn Ihre lokale Registry kein privates TLS-Zertifikat benötigt, können Sie diesen Block weglassen.
Unterstützung für die Konfiguration einer privaten Registry auf Knotenebene ist nur in der Vorabversion für Cluster der Version 1.29 verfügbar.
String. In diesem Feld werden der Host und der Port für eine einzelne private Registry angegeben. Sie können den Host entweder mit einem Domainnamen oder einer IP-Adresse angeben. Lassen Sie das Präfix http oder https weg.
Das Feld host ist erforderlich, wenn Sie eine private Registry für einen Nutzercluster angeben.
Unterstützung für die Konfiguration einer privaten Registry auf Knotenebene ist nur in der Vorabversion für Cluster der Version 1.29 verfügbar.
Geben Sie in diesem Abschnitt gegebenenfalls den Namen und den Namespace des Secrets an, das zum Speichern der Anmeldedaten der privaten Registry erstellt wurde.
Verwenden Sie den Block pullCredentialSecretRef, wenn Sie einen Nutzercluster konfigurieren, um Knoten Zugriff auf eine private Registry zu gewähren, die eine Authentifizierung erfordert.
Unterstützung für die Konfiguration einer privaten Registry auf Knotenebene ist nur in der Vorabversion für Cluster der Version 1.29 verfügbar.
Unterstützung für die Konfiguration einer privaten Registry auf Knotenebene ist nur in der Vorabversion für Cluster der Version 1.29 verfügbar.
Clusterressource
Optional
Veränderlich
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. Boolesch (0 oder 1). Standardeinstellung: 1.
Dieses Feld gibt an, ob alle Worker-Knotenpools für einen Cluster gleichzeitig aktualisiert werden sollen. Standardmäßig (1) werden Upgrades sequenziell, eine nach der anderen durchgeführt. 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
nodePoolUpgradeStrategy.pause
Optional. Boolesch (true oder false). Standardeinstellung: false. In diesem Feld wird angegeben, ob ein aktives Clusterupgrade pausiert oder fortgesetzt werden soll.
Dieser Abschnitt enthält Konfigurationsinformationen für regelmäßige Systemdiagnosen. In der Clusterressource ist das Feld enable die einzige Einstellung für regelmäßige Systemdiagnosen. Weitere Informationen finden Sie unter Regelmäßige Systemdiagnosen.
Clusterressource
Optional
Veränderlich
periodicHealthCheck.enable
Optional. Boolesch (true|false). Aktivieren oder deaktivieren Sie regelmäßige Systemdiagnosen für den Cluster. Regelmäßige Systemdiagnosen sind standardmäßig für alle Cluster aktiviert. Sie können regelmäßige Systemdiagnosen für einen Cluster deaktivieren, indem Sie das Feld periodicHealthCheck.enable auf false setzen.
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 mit IP-Adressen, IP-Adressbereichen, Hostnamen und Domainnamen, die nicht über den Proxyserver geleitet werden sollen. Wenn Google Distributed Cloud 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 clusterweites 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 dem Erstellen des Clusters kann dieses Feld nur während des Upgrades umgeschaltet werden.
Weitere Informationen finden Sie unter Container mit seccomp einschränken.
Clusterressource
Optional
Änderbar (nur Upgrade)
clusterSecurity.enableRootlessContainers
Optional. Boolescher Wert (true|false). Rootless Bare-Metal-Systemcontainer aktivieren oder deaktivieren. Wenn dieses Feld aktiviert ist, werden Bare-Metal-Systemcontainer als Nicht-Root-Nutzer mit einer Nutzer-ID im Bereich zwischen 2000 und 5000 ausgeführt. Wenn diese Option deaktiviert ist, werden Bare-Metal-Systemcontainer als Root-Nutzer ausgeführt. Diese Funktion ist standardmäßig aktiviert. Es wird dringend davon abgeraten, diese Funktion zu deaktivieren, da das Ausführen von Containern als Root-Nutzer ein Sicherheitsrisiko darstellt. Nach dem Erstellen des Clusters kann dieses Feld nur während des Upgrades umgeschaltet werden. Weitere Informationen finden Sie unter Container nicht als Root-Nutzer ausführen.
Clusterressource
Optional
Änderbar (nur Upgrade)
clusterSecurity.authorization
Optional. Mit der 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. Das Feld gcpAccounts gibt eine Liste der Konten an, denen die rollenbasierte Zugriffssteuerung (Role-based Access Control, RBAC) von Kubernetes clusterrole/cluster-admin gewährt wird. Konten mit dieser Rolle haben vollen Zugriff auf alle Ressourcen im Cluster in allen Namespaces. In diesem Feld werden auch die RBAC-Richtlinien konfiguriert, mit denen die angegebenen Konten das Verbindungsgateway verwenden können, um kubectl-Befehle für den Cluster auszuführen. Dies ist praktisch, wenn Sie mehrere Cluster verwalten müssen, insbesondere in einer Hybridumgebung mit GKE- und lokalen Clustern.
In dieses Feld ist ein Array von Kontonamen angegeben. 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 einem Cluster ein Konto hinzufügen, müssen Sie alle Konten in die Liste aufnehmen (sowohl vorhandene als auch neue Konten), da der Aktualisierungsbefehl die Liste mit dem überschreibt, was Sie bei der Aktualisierung angeben.
Dieses Feld gilt nur für Cluster, die Arbeitslasten ausführen können. Für Administratorcluster können Sie beispielsweise gcpAccounts nicht angeben.
Clusterressource
Optional
Veränderlich
clusterSecurity.startUIDRangeRootlessContainers
Optional. Ganze Zahl. Standardwert: 2000. Systemcontainer in Google Distributed Cloud unterstützen das Installieren und Verwalten von Clustern. Die von diesen Containern verwendeten Nutzer-IDs (UIDs) und Gruppen-IDs (GIDs) können über das Feld startUIDRangeRootlessContainers in der Clusterspezifikation gesteuert werden. Die Systemcontainer verwenden die UIDs und GIDs im Bereich von startUIDRangeRootlessContainers bis startUIDRangeRootlessContainers + 2.999, was standardmäßig einen Bereich von 2000 bis 4999 ergibt. Wählen Sie beim Aktualisieren von startUIDRangeRootlessContainers einen Wert aus, durch den sich die von den Systemcontainern verwendeten UID- und GID-Bereiche nicht mit denen überschneiden, die Nutzerarbeitslasten zugewiesen sind. Der Wert startUIDRangeRootlessContainers kann nur während Upgrades geändert werden.
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 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.
Google Distributed Cloud 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: einzelner Cluster, der sich selbst verwalten und auch Arbeitslasten ausführen kann, aber keine anderen Nutzercluster erstellen oder verwalten kann.
Der Clustertyp wird beim Erstellen des Clusters angegeben und kann bei 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 Google Distributed Cloud 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 Bild-Pull-Anfragen an, die der Verarbeitungswarteschlange hinzugefügt werden können, um Anfragespitzen zu verarbeiten. Zu Beginn eines Pull-Vorgangs kann der Warteschlange eine neue Anfrage 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, 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 jedes Mal festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden, und die Einstellung bleibt bis zu Clusterupgrades erhalten. Weitere Informationen finden Sie unter Abrufeinstellungen für 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, ist 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 jedes Mal festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden, und die Einstellung bleibt bis zu Clusterupgrades erhalten. Weitere Informationen finden Sie unter Abrufeinstellungen für Kubelet-Images konfigurieren.
NodePool-Ressource
Optional
Veränderlich
kubeletConfig.serializeImagePulls
Optional. Boolesch (true|false). Dieses Feld gibt an, ob Container Registry-Abrufe parallel oder nacheinander verarbeitet werden. Die Standardeinstellung ist true und gibt an, dass Abrufe einzeln verarbeitet werden. Wenn false festgelegt ist, ruft kubelet Images parallel ab. Dieses Feld entspricht der Kubelet-Konfigurationsoption serializeImagePulls (v1beta1).
Dieses Feld kann jedes Mal festgelegt werden, wenn Sie einen Cluster erstellen, aktualisieren oder upgraden, und die Einstellung bleibt bis zu Clusterupgrades erhalten. Weitere Informationen finden Sie unter Abrufeinstellungen für 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 auf dem Knoten nur planen, wenn er eine übereinstimmende Toleranz hat.
PreferNoSchedule: Das System platziert keinen Pod, der die Markierung nicht auf dem Knoten toleriert, aber nicht erforderlich ist.
NoExecute: Pods, die die Markierung nicht tolerieren, werden sofort entfernt. Pods, die die Markierung tolerieren, werden nie entfernt.
Bei Google Distributed Cloud werden Markierungen mit den Knoten des Knotenpools abgeglichen, sofern die Annotation baremetal.cluster.gke.io/label-taint-no-sync nicht auf den Cluster angewendet wird. 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 der Steuerungsebene oder des Load-Balancers 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 sequenziell nacheinander aktualisiert. Sie können Worker-Knotenpools so konfigurieren, dass mehrere Knoten beim Upgrade Ihres Clusters parallel aktualisiert werden. Durch paralleles Upgrade von Knoten werden Clusterupgrades erheblich beschleunigt, 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, die während des Upgradeprozesses Arbeitslasten ausführen können.
Optional. Ganzzahl (positiv). Standardeinstellung: 1. Max.: 15.
Standardmäßig (1) werden Knoten nacheinander aktualisiert. Wenn Sie für concurrentNodes eine Zahl größer 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 50 % der Knotenanzahl im Knotenpool oder die feste Anzahl (15) nicht überschreiten. Wenn Ihr Knotenpool beispielsweise 20 Knoten hat, können Sie keinen Wert angeben, der größer als 10 ist. Wenn Ihr Knotenpool 100 Knoten hat, ist 15 der Höchstwert, den Sie angeben können.
Wenn Sie dieses Feld zusammen mit dem Feld minimumAvailableNodes verwenden, dürfen ihre kombinierten 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 störungsanfällig sind, empfehlen wir, minimumAvailableNodes anzugeben, damit während des Upgrades eine bestimmte Anzahl von Knoten zum Ausführen von Arbeitslasten verfügbar bleibt. 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 paralleles Upgrade. Mit minimumAvailableNodes können Sie die Anzahl der Knoten im Knotenpool angeben, die während des Upgrades verfügbar sein müssen. Ein Knoten gilt als nicht verfügbar, wenn er aktiv aktualisiert wird. Ein Knoten gilt auch dann als nicht verfügbar, wenn eine der folgenden Bedingungen erfüllt ist:
Knoten befindet sich im Wartungsmodus
Knoten wird abgeglichen
Knoten ist mitten in einem Upgrade hängen geblieben
Wenn Sie dieses Feld zusammen mit dem Feld concurrentNodes verwenden, dürfen ihre kombinierten 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 trägt so zum Schutz von Arbeitslasten während eines Clusterupgrades bei. Ein hoher Wert für minimumAvailableNodes erhöht jedoch das Risiko, dass ein Upgrade angehalten wird, bis Knoten verfügbar sind. Weitere Informationen finden Sie unter Parallele Upgrades.
Optional. Geben Sie in diesem Abschnitt eine private Registry an, die für Arbeitslast-Images verwendet werden soll. Diese Methode zum Konfigurieren der privaten Registry im Bereich „Anmeldedaten“ der Clusterkonfigurationsdatei ist für Hybrid- oder eigenständige Cluster gedacht, die nur Worker-Knotenpools haben.
String. In diesem Feld werden der Host und der Port für eine einzelne private Registry angegeben. Sie können den Host entweder mit einem Domainnamen oder einer IP-Adresse angeben. Lassen Sie das Präfix http oder https weg.
Das Feld host ist erforderlich, wenn Sie eine private Registry für einen Hybrid- oder eigenständigen Cluster angeben.
Optional. String. Pfad der CA-Zertifikatsdatei (Stammzertifizierungsstelle des Servers), wenn Ihr Registry-Server ein privates TLS-Zertifikat verwendet. Wenn Ihre lokale Registry kein privates TLS-Zertifikat benötigt, können Sie dieses Feld auslassen.
Optional. String. Pfad der Konfigurationsdatei der Docker-Befehlszeile, config.json. Docker speichert die Authentifizierungseinstellungen in der Konfigurationsdatei. Dieses Feld gilt nur für die Verwendung von privaten Registrys auf Knotenebene.
Verwenden Sie das Feld pullCredentialConfigPath, wenn Sie einen Hybrid- oder eigenständigen Cluster konfigurieren, um Knoten Zugriff auf eine private Registry zu gewähren, die eine Authentifizierung erfordert.
Anmeldedaten
Optional
Veränderlich
registryMirrors
Optional. Verwenden Sie diesen Abschnitt, um einen Registry-Mirror für die Installation von Clustern anstelle von Container Registry (gcr.io) anzugeben. Weitere Informationen zur Verwendung eines Registry-Mirrors finden Sie unter Google Distributed Cloud mithilfe eines Registry-Mirrors 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 eine Registry-Spiegelung angeben. Sie können mehrere Spiegel/Endpunkte angeben.
Optional. String. Pfad der CA-Zertifikatsdatei (Stammzertifizierungsstelle des Servers), wenn Ihr Registry-Server ein privates TLS-Zertifikat verwendet. Wenn Ihre lokale Registry kein privates TLS-Zertifikat benötigt, können Sie dieses Feld auslassen.
Registry-Mirror
Optional
Veränderlich
registryMirrors.pullCredentialConfigPath
Optional. String. Pfad der Konfigurationsdatei der Docker-Befehlszeile, config.json. Docker speichert die Authentifizierungseinstellungen in der Konfigurationsdatei. Dieses Feld gilt nur für die Verwendung von Registry-Mirrors. Wenn Ihr Registry-Server keine Docker-Konfigurationsdatei zur Authentifizierung benötigt, können Sie dieses Feld weglassen.
Optional. Ein Array von Domainnamen für Hosts, die lokal für den jeweiligen 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 über den Registry-Mirror erstellen.
Die von bmctl für Google Distributed Cloud 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 Dienst-Agent, der bei der Interaktion mit Google Cloud-Diensten im Namen von Container Registry agiert.
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.
Google Distributed Cloud verwendet dieses Dienstkonto, um eine Verbindung zwischen Google Distributed Cloud und Google Cloud aufrechtzuerhalten.
String. Der Pfad zum Dienstkontoschlüssel für die Registrierung
Google Distributed Cloud verwendet dieses Dienstkonto, um Ihre Nutzercluster bei Google Cloud zu registrieren.
String. Der Pfad zum Dienstkontoschlüssel des Vorgangs
Google Distributed Cloud verwendet das Vorgangsdienstkonto zur Authentifizierung bei Google Cloud Observability, um Zugriff auf die Logging API und die Monitoring API zu erhalten.
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 in der Ressource Cluster beschriebenen Pod-CIDR übereinstimmen.
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. Diese ist im Flag --max-pods des Kubelets 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. Diese ist im Flag --max-pods des Kubelets definiert.
ClusterCIDRConfig-Ressource
Erforderlich
Nicht veränderbar.
nodeSelector.matchLabels
Definiert, auf welche Knoten die CIDR-Konfiguration anwendbar ist. Ein leerer Knotenselektor dient als Standardeinstellung und gilt 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-06-28 (UTC)."],[],[]]