In diesem Dokument werden die Felder in der Konfigurationsdatei für den Administratorcluster für Version 1.16 von Google Distributed Cloud beschrieben.
Vorlage für Ihre Konfigurationsdatei erstellen
Wenn Sie gkeadm
zum Erstellen Ihrer Administratorworkstation verwendet haben, hat gkeadm
eine Vorlage für die Konfigurationsdatei des Administratorclusters generiert. Außerdem hat gkeadm
einige Felder mit Werten versehen.
Wenn Sie Ihre Administratorworkstation nicht mit gkeadm
erstellt haben, können Sie mit gkectl
eine Vorlage für die Konfigurationsdatei des Administratorclusters generieren.
So generieren Sie eine Vorlage für die Konfigurationsdatei des Administratorclusters:
gkectl create-config admin --config=OUTPUT_FILENAME --gke-on-prem-version=VERSION
Ersetzen Sie OUTPUT_FILENAME
durch einen Pfad Ihrer Wahl für die generierte Vorlage. Wenn Sie dieses Flag weglassen, benennt gkectl
die Datei admin-cluster.yaml
und speichert sie im aktuellen Verzeichnis.
Ersetzen Sie VERSION
durch die Vollversion eines 1.16-Patches. Beispiel: gkectl create-config admin --gke-on-prem-version=1.16.10-gke.36
.
Diese Version muss gleich oder kleiner als Ihre gkectl
-Version sein. Wenn Sie dieses Flag weglassen, werden in die generierte Konfigurationsvorlage Werte eingefügt, die auf dem neuesten 1.16-Patch basieren.
Vorlage
Konfigurationsdatei ausfüllen
Geben Sie in Ihrer Konfigurationsdatei Feldwerte ein, wie in den folgenden Abschnitten beschrieben.
name
Optional
String
Standard: Ein zufälliger Name mit dem Präfix „gke-admin-”
Ein Name Ihrer Wahl für den Cluster.
Beispiel:
name: "my-admin-cluster"
bundlePath
Erforderlich
Veränderlich
String
Der Pfad Ihrer Google Distributed Cloud-Bundle-Datei.
Die vollständige Bundle-Datei von Google Distributed Cloud enthält alle Komponenten einer bestimmten Version von Google Distributed Cloud. Wenn Sie eine Administratorworkstation erstellen, erhalten Sie ein vollständiges Bundle unter:
/var/lib/gke/bundles/gke-onprem-vsphere-VERSION-full.tgz
Beispiel:
bundlePath: "/var/lib/gke/bundles/gke-onprem-vsphere-1.10.0-gke.8.full.tgz"
preparedSecrets.enabled
Vorschau
Optional
Unveränderlich
Boolescher Wert
Vorausgefüllt: false
Standard: false
Legen Sie dies auf true
fest, wenn Sie vorbereitete Anmeldedaten im Administratorcluster verwenden möchten. Legen Sie andernfalls false
fest.
Beispiel:
preparedSecrets: enabled: true
vCenter
Erforderlich
Unveränderlich
Dieser Abschnitt enthält Informationen zu Ihrer vSphere-Umgebung und Ihrer Verbindung zu vCenter Server.
vCenter.address
Erforderlich
Unveränderlich
String
Die IP-Adresse oder der Hostname Ihres vCenter-Servers.
Weitere Informationen finden Sie unter vCenter-Serveradresse suchen.
Beispiele:
vCenter: address: "203.0.113.100"
vCenter: address: "my-vcenter-server.my-domain.example"
vCenter.datacenter
Erforderlich
Unveränderlich
String
Der relative Pfad eines vSphere-Rechenzentrums.
Der von Ihnen angegebene Wert gilt relativ zum Stammordner namens /
.
Befindet sich Ihr Rechenzentrum im Stammordner, ist der Wert der Name des Rechenzentrums.
Beispiel:
vCenter: datacenter: "my-data-center"
Andernfalls ist der Wert ein relativer Pfad, der einen oder mehrere Ordner zusammen mit dem Namen des Rechenzentrums enthält.
Beispiel:
vCenter: datacenter: "data-centers/data-center-1"
vCenter.cluster
Erforderlich
Unveränderlich
String
Der relative Pfad eines vSphere-Clusters, der für die ESXi-Hosts steht, auf denen Ihre Administratorcluster-VMs ausgeführt werden. Dieser vSphere-Cluster stellt eine Teilmenge der physischen ESXi-Hosts in Ihrem vCenter-Rechenzentrum dar.
Der von Ihnen angegebene Wert ist relativ zu /.../DATA_CENTER/vm/
.
Wenn sich Ihr vSphere-Cluster im Ordner /.../DATA_CENTER/vm/
befindet, ist der Wert der Name des vSphere-Clusters.
Beispiel:
vCenter: cluster: "my-vsphere-cluster"
Andernfalls ist der Wert ein relativer Pfad, der einen oder mehrere Ordner zusammen mit dem Namen des vSphere-Clusters enthält.
Beispiel:
vCenter: cluster: "clusters/vsphere-cluster-1"
vCenter.resourcePool
Erforderlich
Unveränderlich
String
Ein vCenter-Ressourcenpool für Ihre Administratorcluster-VMs.
Wenn Sie den Standardressourcenpool verwenden möchten, legen Sie dafür VSPHERE_CLUSTER/Resources
fest.
Beispiel:
vCenter: resourcePool: "my-vsphere-cluster/Resources"
Wenn Sie einen bereits erstellten Ressourcenpool verwenden möchten, legen Sie dafür den relativen Pfad Ihres Ressourcenpools fest.
Der angegebene Wert bezieht sich auf
/.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/
Wenn Ihr Ressourcenpool ein direktes untergeordnetes Element von /.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/
ist, ist der Wert der Name des Ressourcenpools.
Beispiel:
vCenter: resourcePool: "my-resource-pool"
Wenn Ihr Ressourcenpool unter einem anderen Ressourcenpool verschachtelt ist, legen Sie hier den vollständigen Pfad zu Ihrem Ressourcenpool fest.
Beispiel:
vCenter: resourcePool: "my-vsphere-cluster/Resources/parent-resource-pool/child-resource-pool"
vCenter.datastore
Erforderlich
Unveränderlich
String
Der Name eines vSphere-Datenspeichers für Ihren Administratorcluster.
Der angegebene Wert muss ein Name und kein Pfad sein. Fügen Sie dem Wert keine Ordner hinzu.
Beispiel:
vCenter: datastore: "my-datastore"
vCenter.caCertPath
Erforderlich
Veränderlich
String
Der Pfad des CA-Zertifikats für Ihren vCenter-Server.
Weitere Informationen finden Sie unter vCenter-CA-Zertifikat abrufen.
Informationen zum Aktualisieren dieses Felds für einen vorhandenen Cluster finden Sie unter vCenter-Zertifikatsverweise aktualisieren.
Beispiel:
vCenter: caCertPath: "/usr/local/google/home/me/certs/vcenter-ca-cert.pem"
vCenter.credentials.fileRef.path
Erforderlich
String
Der Pfad einer Konfigurationsdatei für Anmeldedaten, die den Nutzernamen und das Passwort Ihres vCenter-Nutzerkontos enthält. Das Nutzerkonto sollte die Administratorrolle oder entsprechende Berechtigungen haben. Weitere Informationen finden Sie unter vSphere-Anforderungen.
Sie können dieses Feld mit gkectl update
in einem vorhandenen Cluster aktualisieren.
Informationen zum Aktualisieren von vCenter-Anmeldedaten finden Sie unter Clusteranmeldedaten aktualisieren.
Beispiel:
vCenter: credentials: fileRef: path: "my-config-folder/admin-creds.yaml"
vCenter.credentials.fileRef.entry
Erforderlich
String
Der Name des Anmeldedatenblocks in Ihrer Konfigurationsdatei für Anmeldedaten, die den Nutzernamen und das Passwort Ihres vCenter-Nutzerkontos enthält.
Sie können dieses Feld mit gkectl update
in einem vorhandenen Cluster aktualisieren.
Informationen zum Aktualisieren von vCenter-Anmeldedaten finden Sie unter Clusteranmeldedaten aktualisieren.
Beispiel:
vCenter: credentials: fileRef: entry: "vcenter-creds"
vCenter.folder
Optional
Unveränderlich
String
Standard: Das ganze Rechenzentrum betreffender Ordner
Der relative Pfad eines vSphere-Ordners, den Sie bereits erstellt haben. Dieser Ordner enthält Ihre Administratorcluster-VMs.
Wenn Sie keinen Wert angeben, werden Ihre Administratorcluster-VMs in /.../DATA_CENTER/vm/
platziert.
Wenn Sie einen Wert angeben, ist dieser relativ zu /.../DATA_CENTER/vm/
.
Der Wert kann der Name eines Ordners sein.
Beispiel:
vCenter: folder: "my-folder"
Wenn Ihr VM-Ordner in einem anderen VM-Ordner verschachtelt ist, legen Sie hier den vollständigen Pfad zu Ihrem VM-Ordner fest.
Beispiel:
vCenter: folder: "/my-datacenter/vm/vm-folder/nested-vm-folder"
Beachten Sie, dass Sie den ersten „/“ im vollständigen Pfad des VM-Ordners einfügen müssen.
vCenter.dataDisk
Erforderlich
Unveränderlich
String
Google Distributed Cloud erstellt ein VM-Laufwerk (VMDK), das Kubernetes-Objektdaten enthält. Das Installationsprogramm erstellt das VMDK für Sie, aber Sie müssen im Feld vCenter.dataDisk
einen relativen Pfad für das VMDK angeben.
Der von Ihnen angegebene Wert ist relativ zu /.../DATA_CENTER/datastore/
.
Wenn sich das VMDK im Ordner /.../DATA_CENTER/datastore/
befinden soll, ist der Wert der Name des VMDK.
Wenn Sie adminMaster.replicas
auf 3
setzen, dürfen Sie dieses Feld NICHT festlegen. Für Hochverfügbarkeits-Administratorcluster werden die Datenlaufwerkpfade für die drei Maschinen zur Administratorsteuerungsebene automatisch unter /anthos/ADMIN_CLUSTER/default/
generiert.
Beispiel:
vCenter: dataDisk: "my-disk.vmdk"
Andernfalls ist der Wert ein relativer Pfad, der einen oder mehrere Ordner zusammen mit dem VMDK-Namen enthält.
Beispiel:
vCenter: dataDisk: "data-disks/data-disk-1.vmdk"
Wenn Sie einen vSAN-datastore verwenden, muss sich das VMDK in einem Ordner befinden, den Sie bereits erstellt haben.
Sie können govc
verwenden, um einen Ordner zu erstellen:
govc datastore.mkdir -namespace=true data-disks
network
Erforderlich
Unveränderlich
Dieser Abschnitt enthält Informationen zu Ihrem Administratorcluster-Netzwerk.
network.hostConfig
Unveränderlich
Dieser Abschnitt ist erforderlich, wenn eine oder mehrere der folgenden Bedingungen zutreffen:
network.ipMode.type
ist auf"static"
gesetzt.loadBalancer.kind
ist auf"Seesaw"
gesetzt.adminMaster.replicas
ist auf3
gesetzt.
Dieser Abschnitt enthält Informationen zu NTP-Servern, DNS-Servern und DNS-Suchdomains, die von den VMs verwendet werden, die Ihre Clusterknoten sind. Wenn Sie den Seesaw-Load-Balancer verwenden, gelten diese Informationen auch für Ihre Seesaw-VMs.
network.hostConfig.dnsServers
Erforderlich, wenn der Abschnitt network.hostConfig
ausgefüllt ist.
Unveränderlich
Array von Strings.
Die maximale Anzahl von Elementen im Array beträgt drei.
Die Adressen der DNS-Server für die VMs.
Beispiel:
network: hostConfig: dnsServers: - "172.16.255.1" - "172.16.255.2"
network.hostConfig.ntpServers
Erforderlich, wenn der Abschnitt network.hostConfig
ausgefüllt ist.
Unveränderlich
String-Array
Die Adressen der Zeitserver, die von den VMs verwendet werden sollen.
Beispiel:
network: hostConfig: ntpServers: - "216.239.35.0"
network.hostConfig.searchDomainsForDNS
Optional
Unveränderlich
Array von Strings
DNS-Suchdomains, die von den VMs verwendet werden sollen. Diese Domains werden als Teil einer Domainsuchliste verwendet.
Beispiel:
network: hostConfig: searchDomainsForDNS: - "my.local.com"
network.ipMode.type
Erforderlich
Unveränderlich
String
Vorab ausgefüllt: "dhcp"
Standard: "dhcp"
Wenn Sie möchten, dass Ihre Clusterknoten ihre IP-Adresse von einem DHCP-Server abrufen, legen Sie für dieses Feld "dhcp"
fest. Wenn Sie für die Clusterknoten statische IP-Adressen aus einer von Ihnen bereitgestellten Liste auswählen möchten, legen Sie "static"
fest.
Beispiel:
network: ipMode: type: "static"
network.ipMode.ipBlockFilePath
Erforderlich, wenn network.ipMode.type
= static
Unveränderlich
String
Der Pfad der IP-Blockdatei für Ihren Cluster.
Wenn Sie einen Hochverfügbarkeits-Administratorcluster erstellen, geben Sie die IP-Adressen der Knoten der Steuerungsebene nicht in der IP-Blockdatei an. Geben Sie stattdessen diese Adressen im Abschnitt network.controlPlaneIPBlock ein.
Beispiel:
network: ipMode: ipBlockFilePath: "/my-config-folder/admin-cluster-ipblock.yaml"
network.serviceCIDR
Erforderlich
Unveränderlich
String
Kleinstmöglicher Bereich: /24
Größtmöglicher Bereich: /12
Vorab ausgefüllt: "10.96.232.0/24"
Standard: "10.96.232.0/24"
Ein Bereich von IP-Adressen im CIDR-Format, der für Dienste in Ihrem Cluster verwendet werden soll.
Beispiel:
network: serviceCIDR: "10.96.232.0/24"
network.podCIDR
Erforderlich
Unveränderlich
String
Kleinstmöglicher Bereich: /18
Größtmöglicher Bereich: /8
Vorab ausgefüllt: "192.168.0.0/16"
Standard: "192.168.0.0/16"
Ein Bereich von IP-Adressen im CIDR-Format, der für Pods in Ihrem Cluster verwendet werden soll.
Beispiel:
network: podCIDR: "192.168.0.0/16"
Der Dienstbereich darf sich nicht mit dem Pod-Bereich überschneiden.
Die Dienst- und Pod-Bereiche dürfen sich nicht mit einer Adresse außerhalb des Clusters überschneiden, die Sie von innerhalb des Clusters erreichen möchten.
Angenommen, der Dienstbereich lautet 10.96.232.0/24 und der Pod-Bereich lautet 192.168.0.0/16. Traffic, der von einem Pod an eine Adresse in einem dieser Bereiche gesendet wird, wird als clusterintern behandelt und erreicht kein Ziel außerhalb des Clusters.
Insbesondere dürfen sich die Bereiche für Dienste und Pods nicht überschneiden mit:
IP-Adressen von Knoten in einem beliebigen Cluster
Von Load-Balancer-Maschinen verwendete IP-Adressen
Von Knoten der Steuerungsebene und Load-Balancern verwendete VIPs
IP-Adresse von vCenter-Servern, DNS-Servern und NTP-Servern
Wir empfehlen, dass sich Ihre Dienst- und Pod-Bereiche im Adressbereich RFC 1918 befinden.
Dies ist ein Grund für die Empfehlung, RFC 1918-Adressen zu verwenden. Angenommen, Ihr Pod- oder Dienstbereich enthält externe IP-Adressen. Traffic von einem Pod an eine dieser externen Adressen wird als clusterinterner Traffic behandelt und erreicht das externe Ziel nicht.
network.vCenter.networkName
Erforderlich
Unveränderlich
String
Der Name des vSphere-Netzwerks für Ihre Clusterknoten.
Beispiel:
network: vCenter: networkName: "my-network"
Wenn der Name ein Sonderzeichen enthält, müssen Sie dafür eine Escapesequenz verwenden.
Sonderzeichen | Escapesequenz |
---|---|
Schrägstrich (/ ) |
%2f |
Umgekehrter Schrägstrich (\ ) |
%5c |
Prozentzeichen (% ) |
%25 |
Wenn der Netzwerkname in Ihrem Rechenzentrum nicht eindeutig ist, können Sie einen vollständigen Pfad angeben.
Beispiel:
network: vCenter: networkName: "/data-centers/data-center-1/network/my-network"
network.controlPlaneIPBlock
Wenn Sie einen Hochverfügbarkeits-Administratorcluster erstellen möchten, füllen Sie diesen Abschnitt aus. Andernfalls entfernen Sie diesen Abschnitt oder lassen ihn auskommentiert.
Ein Hochverfügbarkeits-Administratorcluster hat drei Knoten, auf denen Komponenten der Steuerungsebene ausgeführt werden. Geben Sie die IP-Adressen für die Knoten der Steuerungsebene in diesem Abschnitt an.
Wenn Sie einen Administratorcluster ohne Hochverfügbarkeit erstellen möchten, geben Sie die IP-Adresse für den Knoten der Steuerungsebene zusammen mit den Adressen für die Add-on-Knoten in der IP-Block-Datei ein.
Wenn Sie diesen Abschnitt ausfüllen, müssen Sie auch adminMaster.replicas
auf 3
festlegen.
network.controlPlaneIPBlock.netmask
Erforderlich für eine Steuerungsebene mit Hochverfügbarkeit
Unveränderlich
String
Die Netzmaske für das Netzwerk, das die Knoten der Steuerungsebene enthält.
Beispiel:
network: controlPlaneIPBlock: netmask: "255.255.255.0"
network.controlPlaneIPBlock.gateway
Erforderlich für eine Steuerungsebene mit Hochverfügbarkeit
Unveränderlich
String
Die IP-Adresse des Standardgateways für Ihre Knoten der Steuerungsebene.
Beispiel:
network: controlPlaneIPBlock: gateway: "172.16.22.1"
network.controlPlaneIPBlock.ips
Erforderlich für eine Steuerungsebene mit Hochverfügbarkeit
Unveränderlich
Array von drei Objekten, von denen jedes eine IP-Adresse und einen optionalen Hostnamen hat.
Dies sind die IP-Adressen, die den Knoten der Steuerungsebene zugewiesen werden.
Beispiel:
network: controlPlaneIPBlock: ips: - ip: "172.16.22.6" hostname: "admin-cp-vm-1" - ip: "172.16.22.7" hostname: "admin-cp-vm-2" - ip: "172.16.22.8" hostname: "admin-cp-vm-3"
loadBalancer
Dieser Abschnitt enthält Informationen zum Load-Balancer für Ihren Administratorcluster.
loadBalancer.vips.controlPlaneVIP
Erforderlich
Unveränderlich
String
Die IP-Adresse, die Sie auf dem Load-Balancer für den Kubernetes API-Server des Administratorclusters konfiguriert haben.
Beispiel:
loadBalancer: vips: controlplaneVIP: "203.0.113.3"
loadBalancer.kind
Erforderlich
Unveränderlich
String
Vorab ausgefüllt: "MetalLB"
String. Legen Sie dafür "ManualLB"
, "F5BigIP"
, "Seesaw"
oder "MetalLB"
fest.
Wenn Sie adminMaster.replicas
auf 3
setzen, können Sie den Seesaw-Load-Balancer nicht verwenden.
Beispiel:
loadBalancer: kind: "MetalLB"
loadBalancer.manualLB
Wenn Sie für loadbalancer.kind
den Wert "ManualLB"
festlegen, füllen Sie diesen Abschnitt aus. Andernfalls entfernen Sie diesen Abschnitt.
Unveränderlich
loadBalancer.manualLB.ingressHTTPNodePort
Entfernen Sie dieses Feld aus Ihrer Konfigurationsdatei. Es wird in einem Administratorcluster nicht verwendet.
loadBalancer.manualLB.ingressHTTPSNodePort
Entfernen Sie dieses Feld aus Ihrer Konfigurationsdatei. Es wird in einem Administratorcluster nicht verwendet.
loadBalancer.manualLB.konnectivityServerNodePort
Entfernen Sie dieses Feld aus Ihrer Konfigurationsdatei. Es wird in einem Administratorcluster nicht verwendet.
loadBalancer.manualLB.controlPlaneNodePort
Erforderlich, wenn loadBalancer.kind
= "ManualLB"
und adminMaster.replicas
= 1
Unveränderlich
Ganzzahl
Vorab ausgefüllt: 30968
Der Kubernetes API-Server im Administratorcluster wird durch einen Kubernetes-Service verfügbar gemacht. Für den Service müssen Sie einen nodePort
-Wert auswählen.
Legen Sie für dieses Feld den Wert nodePort
fest.
Beispiel:
loadBalancer: manualLB: controlPlaneNodePort: 30968
loadBalancer.f5BigIP
Wenn Sie für loadbalancer.kind
den Wert "f5BigIP"
festlegen, füllen Sie diesen Abschnitt aus. Andernfalls entfernen Sie diesen Abschnitt.
loadBalancer.f5BigIP.address
Erforderlich, wenn loadBalancer.kind
= "f5BigIp"
Unveränderlich
String
Die Adresse Ihres F5 BIG-IP-Load-Balancers. Beispiel:
loadBalancer: f5BigIP: address: "203.0.113.2"
loadBalancer.f5BigIP.credentials.fileRef.path
Erforderlich, wenn loadBalancer.kind
= "f5BigIp"
Veränderlich
String
Der Pfad einer Konfigurationsdatei für Anmeldedaten, die den Nutzernamen und das Passwort eines Kontos enthält, mit dem Google Distributed Cloud eine Verbindung zu Ihrem F5 BIG-IP-Load-Balancer herstellen kann.
Das Nutzerkonto muss eine Nutzerrolle mit ausreichenden Berechtigungen zum Einrichten und Verwalten des Load-Balancers haben. Die Rolle „Administrator“ oder „Ressourcenadministrator“ ist ausreichend.
Sie können dieses Feld mit gkectl update
in einem vorhandenen Cluster aktualisieren.
Informationen zum Aktualisieren von F5 BIG-IP-Anmeldedaten finden Sie unter Clusteranmeldedaten aktualisieren.
Beispiel:
loadBalancer: f5BigIP: credentials: fileRef: path: ""my-config-folder/admin-creds.yaml"
loadBalancer.f5BigIP.credentialsfileRef.entry
Erforderlich, wenn loadBalancer.kind
= "f5BigIp"
Veränderlich
String
Der Name des Anmeldedatenblocks in Ihrer Konfigurationsdatei für Anmeldedaten, die den Nutzernamen und das Passwort Ihres F5 BIG-IP-Kontos enthält.
Sie können dieses Feld mit gkectl update
in einem vorhandenen Cluster aktualisieren.
Informationen zum Aktualisieren von F5 BIG-IP-Anmeldedaten finden Sie unter Clusteranmeldedaten aktualisieren.
Beispiel:
loadBalancer: f5BigIP: credentials: fileRef: entry: "f5-creds"
loadBalancer.f5BigIP.partition
Erforderlich, wenn loadBalancer.kind
= "f5BigIp"
Unveränderlich
String
Der Name einer BIG-IP-Partition, die Sie für Ihren Administratorcluster erstellt haben.
Beispiel:
loadBalancer: f5BigIP: partition: "my-f5-admin-partition"
loadBalancer.f5BigIP.snatPoolName
Optional
Relevant, wenn loadBalancer.kind
= "f5BigIp"
Unveränderlich
String
Wenn Sie SNAT verwenden, ist dies der Name Ihres SNAT-Pools. Wenn Sie SNAT nicht verwenden, entfernen Sie dieses Feld.
Beispiel:
loadBalancer: f5BigIP: snatPoolName: "my-snat-pool"
loadBalancer.seesaw
Wenn Sie für loadbalancer.kind
den Wert "Seesaw"
festlegen, füllen Sie diesen Abschnitt aus. Andernfalls entfernen Sie diesen Abschnitt.
Unveränderlich
Informationen zum Einrichten des Seesaw-Load-Balancers finden Sie unter Gebündeltes Load-Balancing mit Seesaw.
loadBalancer.seesaw.ipBlockFilePath
Erforderlich, wenn loadBalancer.kind
= "Seesaw"
Unveränderlich
String
Der Pfad der IP-Blockdatei für Ihre Seesaw-VMs.
Beispiel:
loadBalancer: seesaw: ipBlockFilePath: "config-folder/admin-seesaw-ipblock.yaml"
loadBalancer.seesaw.vrid
Erforderlich, wenn loadBalancer.kind
= "Seesaw"
Unveränderlich
Ganzzahl
Mögliche Werte: 1–255
Die virtuelle Router-ID Ihrer Seesaw-VM. Diese Kennung, die eine Ganzzahl Ihrer Wahl ist, muss in einem VLAN einmalig sein.
Beispiel:
loadBalancer: seesaw: vrid: 125
loadBalancer.seesaw.masterIP
Erforderlich, wenn loadBalancer.kind
= "Seesaw"
Unveränderlich
Ganzzahl
String. Die virtuelle IP-Adresse, die auf Ihrer Master-Seesaw-VM konfiguriert ist.
Beispiel:
loadBalancer: seesaw: masterIP: 172.16.20.21
loadBalancer.seesaw.cpus
Erforderlich, wenn loadBalancer.kind
= "Seesaw"
Veränderlich
Ganzzahl
Vorab ausgefüllt: 2
Standard:
Die Anzahl der CPUs für jeder Seesaw-VM.
Beispiel:
loadBalancer: seesaw: cpus: 8
loadBalancer.seesaw.memoryMB
Erforderlich, wenn loadBalancer.kind
= "Seesaw"
Veränderlich
Ganzzahl
Vorab ausgefüllt: 3072
Standard: 1024
Die Größe des Arbeitsspeichers in Megabyte für jede Seesaw-VM.
Beispiel:
loadBalancer: seesaw: memoryMB: 8192
loadBalancer.seesaw.vCenter.networkName
Optional
Relevant, wenn loadBalancer.kind
= "Seesaw"
Unveränderlich
String
Der Name des vCenter-Netzwerks, das Ihre Seesaw-VMs enthält.
Beispiel:
loadBalancer: seesaw: vCenter: networkName: "my-seesaw-network"
loadBalancer.seesaw.enableHA
Optional
Erforderlich, wenn loadBalancer.kind
= "Seesaw"
Unveränderlich
Boolescher Wert
Vorausgefüllt: false
Standard: false
Wenn Sie einen hochverfügbaren Seesaw-Load-Balancer erstellen möchten, legen Sie für dieses Feld true
fest. Andernfalls legen Sie false
fest. Ein HA-Seesaw-Load-Balancer verwendet ein VM-Paar (Master, Backup).
Beispiel:
loadBalancer: seesaw: enableHA: true
loadBalancer.seesaw.disableVRRPMAC
Optional
Erforderlich, wenn loadBalancer.kind
= "Seesaw"
Unveränderlich
Boolescher Wert
Vorab ausgefüllt: false
Standard: false
Wenn Sie true
festlegen, verwendet der Seesaw-Load-Balancer das MAC-Lernen für Failover nicht. Stattdessen wird eine überflüssige ARP verwendet.
Wenn Sie false
auf den Seesaw-Load-Balancer setzen, verwendet der Seesaw-Load-Balancer MAC-Lernen. Es wird empfohlen, dass Sie hier true
festlegen. Wenn Sie vSphere 7 oder höher verwenden und einen Seesaw-Load-Balancer mit Hochverfügbarkeit haben, müssen Sie dies auf true
setzen.
Beispiel:
loadBalancer: seesaw: disableVRRPMAC: true
antiAffinityGroups.enabled
Optional
Veränderlich
Boolescher Wert
Vorab ausgefüllt: true
Legen Sie dafür true
fest, wenn das Erstellen von DRS-Regeln aktiviert werden soll. Andernfalls legen Sie false
fest.
Beispiel:
antiAffinityGroups: enabled: true
Wenn dieses Feld true
ist, erstellt Google Distributed Cloud VMware-DRS-Anti-Affinitätsregeln (Distributed Resource Scheduler) für Ihre Administratorclusterknoten, sodass sie auf mindestens drei physische ESXi-Hosts in Ihrem Rechenzentrum verteilt werden.
Für diese Funktion muss die vSphere-Umgebung die folgenden Bedingungen erfüllen:
VMware DRS ist aktiviert. Für VMware DRS ist die vSphere Enterprise Plus-Lizenzversion erforderlich.
Ihr vSphere-Nutzerkonto hat die Berechtigung
Host.Inventory.Modify cluster
.Es sind mindestens vier ESXi-Hosts verfügbar.
Auch wenn die Regel erfordert, dass die Clusterknoten auf drei ESXi-Hosts verteilt sind, empfehlen wir dringend, mindestens vier ESXi-Hosts zur Verfügung zu haben. So schützen Sie sich vor dem Verlust der Steuerungsebene des Administratorclusters. Angenommen, Sie haben nur drei ESXi-Hosts und der Knoten der Steuerungsebene des Administratorclusters befindet sich auf einem ESXi-Host, der ausfällt. Die DRS-Regel verhindert, dass der Knoten der Steuerungsebene auf einem der beiden verbleibenden ESXi-Hosts platziert wird.
Wenn Sie eine vSphere Standard-Lizenz haben, können Sie VMware DRS nicht aktivieren.
Wenn Sie DRS nicht aktiviert haben oder wenn Sie nicht mindestens vier Hosts haben, für die vSphere-VMs geplant werden können, legen Sie für antiAffinityGroups.enabled
den Wert false
fest.
adminMaster
Vorschau
Optional
Unveränderlich
Bearbeiten Sie diesen Bereich, wenn Sie eine der folgenden Aktionen ausführen möchten:
- CPUs für die Knoten der Steuerungsebene des Administratorclusters angeben
- Arbeitsspeicher für die Knoten der Steuerungsebene des Administratorclusters angeben
- Administratorcluster mit Hochverfügbarkeit erstellen
Andernfalls behalten Sie die voreingestellten Werte bei.
adminMaster.cpus
Vorschau
Optional
Unveränderlich
Ganzzahl
Vorab ausgefüllt 4
Standard: 4
Die Anzahl der vCPUs für jeden Knoten der Steuerungsebene im Administratorcluster.
Beispiel:
adminMaster: cpus: 4
adminMaster.memoryMB
Vorschau
Optional
Unveränderlic
Ganzzahl
Vorab ausgefüllt 16384
Standard: 16384
Die Anzahl der Megabyte des Arbeitsspeichers für jeden Knoten der Steuerungsebene im Administratorcluster.
Beispiel:
adminMaster: memoryMB: 16384
adminMaster.replicas
Optional
Unveränderlich
Ganzzahl
Mögliche Werte: 1 oder 3
Vorab ausgefüllt: 1
Standard: 1
Die Anzahl der Steuerungsebenenknoten im Administratorcluster. Legen Sie dafür 3
fest, wenn Sie einen Administratorcluster mit Hochverfügbarkeit erstellen möchten. Setzen Sie ihn andernfalls auf 1
.
Wenn Sie dafür 3
festlegen, müssen Sie auch die Abschnitte network.controlPlaneIPBlock
und network.hostConfig
ausfüllen.
Wenn Sie dafür 3
festlegen, können Sie den Seesaw-Load-Balancer nicht verwenden.
Beispiel:
adminMaster: replicas: 3
addonNode.autoResize.enabled
Optional
Veränderlich
Boolescher Wert
Voreingestellt: false
Standard: false
Setzen Sie diesen Wert auf true
, um die automatische Größenanpassung der Add-on-Knoten im Administratorcluster zu aktivieren. Andernfalls setzen Sie den Wert auf false
.
Zum Aktualisieren des Werts dieses Felds verwenden Sie gkectl update admin
.
Beispiel:
addonNode: autoResize: enabled: true
proxy
Wenn sich Ihr Netzwerk hinter einem Proxyserver befindet, füllen Sie diesen Abschnitt aus. Andernfalls entfernen Sie diesen Abschnitt oder lassen ihn auskommentiert. Der hier angegebene Proxyserver wird von den Nutzerclustern verwendet, die von diesem Administratorcluster verwaltet werden.
Unveränderlich
proxy.url
Erforderlich, wenn der Abschnitt proxy
ausgefüllt ist.
Unveränderlich
String
Die HTTP-Adresse Ihres Proxyservers. Geben Sie die Portnummer an, auch wenn sie mit dem Standardport des Schemas identisch ist.
Beispiel:
proxy: url: "http://my-proxy.example.local:80"
Der hier angegebene Proxyserver wird von Ihren Google Distributed Cloud-Clustern verwendet. Außerdem wird Ihre Administratorworkstation automatisch so konfiguriert, dass sie denselben Proxyserver verwendet, sofern Sie nicht die Umgebungsvariable HTTPS_PROXY
auf Ihrer Administratorworkstation festgelegt haben.
Wenn Sie proxy.url
angeben, müssen Sie auch proxy.noProxy
angeben.
Nachdem die Proxykonfiguration für den Administratorcluster festgelegt wurde, kann sie nicht mehr geändert oder gelöscht werden, es sei denn, der Cluster wird neu erstellt.
proxy.noProxy
Optional
Unveränderlich
String
Eine durch Kommas getrennte Liste mit IP-Adressen, IP-Adressbereichen, Hostnamen und Domainnamen, die nicht durch den Proxyserver geleitet werden sollen. Wenn Google Distributed Cloud eine Anfrage an eine dieser Adressen, Hosts oder Domains sendet, wird die Anfrage direkt gesendet.
Beispiel:
proxy: noProxy: "10.151.222.0/24,my-host.example.local,10.151.2.1"
privateRegistry
Wenn Sie eine private Container Registry haben, füllen Sie diesen Abschnitt aus. Andernfalls entfernen Sie diesen Abschnitt oder lassen ihn auskommentiert.
privateRegistry.address
Erforderlich für private Registry
Unveränderlich
String
Die IP-Adresse oder der FQDN (Fully Qualified Domain Name) der Maschine, auf dem Ihre private Registry ausgeführt wird.
Beispiele:
privateRegistry: address: "203.0.113.10"
privateRegistry: address: "fqdn.example.com"
privateRegistry.credentials.fileRef.path
Erforderlich für private Registry
Veränderlich
String
Der Pfad einer Konfigurationsdatei für Anmeldedaten, die den Nutzernamen und das Passwort eines Kontos enthält, mit dem Google Distributed Cloud auf Ihre private Registry zugreifen kann.
Beispiel:
privateRegistry: credentials: fileRef: path: "my-config-folder/admin-creds.yaml"
privateRegistry.credentials.fileRef.entry
Erforderlich für private Registry
Veränderlich
String
Der Name des Anmeldedatenblocks in Ihrer Konfigurationsdatei für Anmeldedaten, die den Nutzernamen und das Passwort Ihres privaten Registry-Kontos enthält.
privateRegistry: credentials: fileRef: entry: "private-registry-creds"
privateRegistry.caCertPath
Erforderlich für private Registry
Veränderlich
String
Wenn die Containerlaufzeit ein Image aus Ihrer privaten Registry abruft, muss die Registry ihre Identität anhand eines Zertifikats nachweisen. Das Zertifikat der Registry wird von einer Zertifizierungsstelle signiert. Die Containerlaufzeit verwendet das Zertifikat der Zertifizierungsstelle, um das Zertifikat der Registry zu validieren.
Legen Sie in diesem Feld den Pfad des Zertifikats der Zertifizierungsstelle fest.
Beispiel:
privateRegistry: caCertPath: "my-cert-folder/registry-ca.crt"
componentAccessServiceAccountKeyPath
Erforderlich
Veränderlich
String
Der Pfad der JSON-Schlüsseldatei für Ihr Dienstkonto für den Komponentenzugriff.
Beispiel:
componentAccessServiceAccountKeyPath: "my-key-folder/access-key.json"
gkeConnect
Erforderlich
Veränderlich
Wenn Sie den Abschnitt gkeConnect
ausfüllen, wird der Administratorcluster nach der Erstellung automatisch auf einer Flotte registriert. Dieser Abschnitt enthält Informationen zum Google Cloud-Projekt und zum Dienstkonto für die Registrierung des Clusters.
Während der Erstellung oder Aktualisierung eines Clusters werden auf dem Administratorcluster mehrere RBAC-Richtlinien konfiguriert. Diese RBAC-Richtlinien sind erforderlich, damit Sie Nutzercluster in der Google Cloud Console erstellen können.
gkeConnect.projectID
Erforderlich
Unveränderlich
String
Die ID Ihres Flotten-Hostprojekts.
Bei neuen Clustern muss diese Projekt-ID mit der in stackdriver.projectID
und cloudAuditLogging.projectID
festgelegten ID übereinstimmen. Wenn die Projekt-IDs nicht identisch sind, schlägt die Clustererstellung fehl. Diese Anforderung gilt nicht für vorhandene Cluster.
Beispiel:
gkeConnect: projectID: "my-fleet-host-project"
gkeConnect.registerServiceAccountKeyPath
Erforderlich
Veränderlich
String
Der Pfad der JSON-Schlüsseldatei für Ihr Connect-Register-Dienstkonto.
Beispiel:
gkeConnect: registerServiceAccountKeyPath: "my-key-folder/connect-register-key.json"
gkeOnPremAPI
Optional
Wenn ab 1.16 und höher die GKE On-Prem API in Ihrem Google Cloud-Projekt aktiviert ist, werden alle Cluster im Projekt automatisch in der GKE On-Prem API in der Region angemeldet, die in stackdriver.clusterLocation
konfiguriert wurde.
Wenn Sie alle Cluster im Projekt für die GKE On-Prem API registrieren möchten, müssen Sie die Schritte unter Vorbereitung zur Aktivierung und Verwendung der GKE On-Prem API im Projekt ausführen.
Wenn Sie den Cluster nicht in der GKE On-Prem API registrieren möchten, fügen Sie diesen Abschnitt hinzu und setzen Sie
gkeOnPremAPI.enabled
auffalse
. Wenn Sie keine Cluster in dem Projekt registrieren möchten, deaktivieren Siegkeonprem.googleapis.com
(der Dienstname für die GKE On-Prem API) in dem Projekt. Eine Anleitung finden Sie unter Dienste deaktivieren.
Wenn Sie Ihren Administratorcluster in der GKE On-Prem API registrieren, können Sie Standardtools (die Google Cloud Console, die Google Cloud CLI oder Terraform) verwenden, um Nutzercluster zu aktualisieren, die der Administratorcluster verwaltet. Durch die Clusterregistrierung können Sie gcloud
-Befehle ausführen, um Informationen zu Ihren Clustern abzurufen.
Nachdem Sie diesen Abschnitt hinzugefügt und den Administratorcluster erstellt oder aktualisiert haben, schlägt die Aktualisierung fehl, wenn Sie anschließend den Abschnitt entfernen und den Cluster aktualisieren.
gkeOnPremAPI.enabled
Erforderlich, wenn der Abschnitt gkeOnPremAPI
enthalten ist.
Veränderlich
Boolescher Wert
Standard: true
Standardmäßig wird der Cluster in 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 in der GKE On-Prem API registriert haben und die Registrierung aufheben müssen, nehmen Sie die folgende Änderung vor und aktualisieren Sie dann den Cluster:
gkeOnPremAPI: enabled: false
gkeOnPremAPI.location
Unveränderlich
String
Standard:stackdriver.clusterLocation
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.
Sie müssen dieselbe Region verwenden, die in
stackdriver.clusterLocation
konfiguriert ist. Wenn gkeOnPremAPI.enabled
den Wert false
hat, geben Sie dieses Feld nicht an.
stackdriver
Standardmäßig erforderlich
Veränderlich
Wenn Sie Cloud Logging und Cloud Monitoring für Ihren Cluster aktivieren möchten, füllen Sie diesen Abschnitt aus. Andernfalls entfernen Sie diesen Abschnitt.
Dieser Abschnitt ist standardmäßig erforderlich. Wenn Sie diesen Abschnitt also nicht einfügen, müssen Sie beim Ausführen von gkectl create admin
das Flag --skip-validation-stackdriver
angeben.
Dieser Abschnitt ist im Administratorcluster erforderlich, wenn Sie den Lebenszyklus von Nutzerclustern mit GKE On-Prem API-Clients verwalten möchten.
stackdriver.projectID
Erforderlich für Logging und Monitoring
Unveränderlich
String
Die ID Ihres Flotten-Hostprojekts.
Bei neuen Clustern muss diese Projekt-ID mit der in gkeConnect.projectID
und cloudAuditLogging.projectID
festgelegten ID übereinstimmen. Wenn die Projekt-IDs nicht identisch sind, schlägt die Clustererstellung fehl. Diese Anforderung gilt nicht für vorhandene Cluster.
Bei Bedarf können Sie einen Logrouter in diesem Projekt konfigurieren, um Logs an Log-Buckets in einem anderen Projekt weiterzuleiten. Informationen zum Konfigurieren des Logrouters finden Sie unter Unterstützte Ziele.
Beispiel:
stackdriver: projectID: "my-fleet-host-project"
stackdriver.clusterLocation
Erforderlich für Logging und Monitoring
Unveränderlich
String
Vorab ausgefüllt: "us-central1"
Die Google Cloud-Region, in der Sie Logs speichern möchten. Es empfiehlt sich, eine Region auszuwählen, die sich in der Nähe Ihres lokalen Rechenzentrums befindet.
Wenn Sie bei neuen Clustern die Abschnitte gkeOnPremAPI
und cloudAuditLogging
in der Konfigurationsdatei angeben, muss die Region, die Sie hier festlegen, mit der Region in gkeOnPremAPI.location
und cloudAuditLogging.clusterLocation
übereinstimmen. Wenn die Regionen nicht identisch sind, schlägt die Clustererstellung fehl.
Beispiel:
stackdriver: clusterLocation: "us-central1"
stackdriver.enableVPC
Optional
Unveränderlich
Boolescher Wert
Vorab ausgefüllt: false
Wenn das Netzwerk des Clusters von einer VPC gesteuert wird, legen Sie es auf true
fest.
So wird gewährleistet, dass alle Telemetriedaten über die eingeschränkten IP-Adressen von Google übertragen werden.
Andernfalls legen Sie false
fest.
Beispiel:
stackdriver: enableVPC: false
stackdriver.serviceAccountKeyPath
Erforderlich für Logging und Monitoring
Veränderlich
String
Der Pfad der JSON-Schlüsseldatei für Ihr Logging-Monitoring-Dienstkonto.
Informationen zum Aktualisieren dieses Felds in einem vorhandenen Cluster finden Sie unter Dienstkontoschlüssel rotieren.
Beispiel:
stackdriver: serviceAccountKeyPath: "my-key-folder/log-mon-key.json"
stackdriver.disableVsphereResourceMetrics
Optional
Veränderlich
Für Logging und Monitoring relevant
Boolescher Wert
Vorab ausgefüllt: false
Standard: false
Setzen Sie diesen Wert auf true
, um die Erfassung von Messwerten aus vSphere zu deaktivieren.
Setzen Sie ihn andernfalls auf false
.
Dieser Abschnitt ist im Administratorcluster erforderlich, wenn Sie den Lebenszyklus von Nutzerclustern in der Google Cloud Console verwalten möchten.
Beispiel:
stackdriver: disableVsphereResourceMetrics: true
cloudAuditLogging
Wenn Sie die Audit-Logs vom Kubernetes API-Server des Clusters in Cloud-Audit-Logs einbinden möchten, füllen Sie diesen Abschnitt aus. Andernfalls entfernen Sie diesen Abschnitt oder lassen ihn auskommentiert.
Veränderlich
Dieser Abschnitt ist im Administratorcluster erforderlich, wenn Sie den Lebenszyklus von Nutzerclustern mit GKE On-Prem API-Clients verwalten möchten.
cloudAuditLogging.projectID
Erforderlich für Cloud-Audit-Logs
Unveränderlich
String
Die ID Ihres Flotten-Hostprojekts.
Bei neuen Clustern muss diese Projekt-ID mit der in gkeConnect.projecID
und stackdriver.projectID
festgelegten ID übereinstimmen. Wenn die Projekt-IDs nicht identisch sind, schlägt die Clustererstellung fehl. Diese Anforderung gilt nicht für vorhandene Cluster.
Bei Bedarf können Sie einen Logrouter in diesem Projekt konfigurieren, um Logs an Log-Buckets in einem anderen Projekt weiterzuleiten. Informationen zum Konfigurieren des Logrouters finden Sie unter Unterstützte Ziele.
Beispiel:
cloudAuditLogging: projectID: "my-fleet-host-project"
cloudAuditLogging.clusterLocation
Erforderlich für Cloud-Audit-Logs
Unveränderlich
String
Die Google Cloud-Region, in der Sie Audit-Logs speichern möchten. Es empfiehlt sich, eine Region auszuwählen, die sich in der Nähe Ihres lokalen Rechenzentrums befindet.
Wenn Sie bei neuen Clustern die Abschnitte gkeOnPremAPI
und stackdriver
in der Konfigurationsdatei angeben, muss die Region, die Sie hier festlegen, mit der Region in gkeOnPremAPI.location
und stackdriver.clusterLocation
übereinstimmen. Wenn die Regionen nicht identisch sind, schlägt die Clustererstellung fehl.
Beispiel:
cloudAuditLogging: clusterLocation: "us-central1"
cloudAuditLogging.serviceAccountKeyPath
Erforderlich für Cloud-Audit-Logs
Veränderlich
String
Der Pfad der JSON-Schlüsseldatei für Ihr Audit-Logging-Dienstkonto.
Informationen zum Aktualisieren dieses Felds in einem vorhandenen Cluster finden Sie unter Dienstkontoschlüssel rotieren.
Beispiel:
cloudAuditLogging: serviceAccountKeyPath: "my-key-folder/audit-log-key.json"
clusterBackup.datastore
Vorschau
Optional
Veränderlich
String
Wenn Sie die Sicherung des Administratorclusters aktivieren möchten, legen Sie diesen auf den vSphere-Datenspeicher fest, in dem Sie Clustersicherungen speichern möchten.
Beispiel:
clusterBackup: datastore: "my-datastore"
autoRepair.enabled
Optional
Veränderlich
Boolescher Wert
Vorab ausgefüllt: true
Legen Sie für diesen Wert true
fest, um die automatische Knotenreparatur zu aktivieren.
Andernfalls legen Sie false
fest.
Zum Aktualisieren des Werts dieses Felds verwenden Sie gkectl update admin
.
Beispiel:
autoRepair: enabled: true
secretsEncryption
Wenn Sie Secrets verschlüsseln möchten, ohne dass ein externer KMS (Key Management Service) oder andere Abhängigkeiten erforderlich sind, füllen Sie diesen Abschnitt aus.
Andernfalls entfernen Sie diesen Abschnitt oder lassen ihn auskommentiert.
Unveränderlich
secretsEncryption.mode
Erforderlich für Verschlüsselung von Secrets
Unveränderlich
String
Möglicher Wert: "GenerateKey"
Vorab ausgefüllt: "GenerateKey"
Der Secret-Verschlüsselungsmodus.
secretsEncryption: mode: "GeneratedKey"
secretsEncryption.generatedKey.keyVersion
Erforderlich für Secret-Verschlüsselung
Veränderlich
Ganzzahl
Vorab ausgefüllt: 1
Eine Ganzzahl Ihrer Wahl für die Schlüsselversionsnummer. Wir empfehlen, mit 1
zu beginnen.
Beispiel:
secretsEncryption: generatedKey: keyVersion: 1
secretsEncryption.generatedKey.disabled
Optional für Verschlüsselung von Secrets
Veränderlich
Boolescher Wert
Vorab ausgefüllt: false
Legen Sie hier true
fest, um die Secret-Verschlüsselung zu deaktivieren. Setzen Sie es andernfalls auf false
.
Beispiel:
secretsEncryption: generatedKey: disabled: false
osImageType
Optional
String
Mögliche Werte: „ubuntu_containerd” oder „cos”
Vorab ausgefüllt: „ubuntu_containerd”
Standard: „ubuntu_containerd”
Der Typ des Betriebssystem-Images, das auf den Knoten Ihres Administratorclusters ausgeführt werden soll.
Beispiel:
osImageType: "cos"