Nutzercluster-Konfigurationsdatei

Auf dieser Seite werden die Felder in den Konfigurationsdateien für Nutzercluster von Anthos-Cluster auf VMware (GKE On-Prem) beschrieben.

Vorlage für Ihre Konfigurationsdatei erstellen

Wenn Sie gkeadm zum Erstellen Ihrer Administrator-Workstation verwendet haben, hat gkeadm eine Vorlage für die Konfigurationsdatei des Nutzerclusters generiert. Außerdem hat gkeadm einige Felder mit Werten versehen.

Wenn Sie Ihre Administrator-Workstation nicht mit gkeadm erstellt haben, können Sie mit gkectl eine Vorlage für die Konfigurationsdatei des Nutzerclusters generieren.

So generieren Sie eine Vorlage für die Konfigurationsdatei des Nutzerclusters:

gkectl create-config cluster --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 user-cluster.yaml und speichert sie im aktuellen Verzeichnis.

Ersetzen Sie VERSION durch die gewünschte Versionsnummer. Beispiel: gkectl create-config cluster --gke-on-prem-version=1.6.2-gke.0 Wenn Sie dieses Flag weglassen, werden in die generierte Konfigurationsvorlage Werte eingefügt, die auf der neuesten Clusterversion basieren.

Vorlage

Konfigurationsdatei ausfüllen

Geben Sie in Ihrer Konfigurationsdatei Feldwerte ein, wie in den folgenden Abschnitten beschrieben.

name

String. Ein Name Ihrer Wahl für den Nutzercluster. Beispiel:

name: "my-user-cluster"

gkeOnPremVersion

String. Die Anthos-Cluster auf VMware-Version des Nutzerclusters. Beispiel:

gkeOnPremVersion: "1.7.0-gke.16"

vCenter

Wenn alle Elemente Ihrer vCenter-Umgebung mit jenen identisch sein sollen, die Sie für Ihren Administratorcluster angegeben haben, entfernen Sie diesen Abschnitt oder lassen ihn auskommentiert.

Wenn sich bestimmte Elemente Ihrer vCenter-Umgebung von den Angaben für Ihren Administratorcluster unterscheiden sollen, füllen Sie die entsprechenden Felder in diesem Abschnitt aus. Alle Felder, die Sie hier im Abschnitt vCenter festlegen, überschreiben die entsprechenden Felder in der Konfigurationsdatei des Administratorclusters.

vCenter.resourcePool

String. Der Name des vCenter-Ressourcenpools für Ihren Nutzercluster. Wenn Sie nicht den Standardressourcenpool verwenden, geben Sie den Namen Ihres vCenter-Ressourcenpools an. Beispiel:

vCenter:
  resourcePool: "MY-USER-POOL"

Wenn Sie den Standardressourcenpool verwenden, geben Sie den folgenden Wert an:

vCenter:
  resourcePool: "VSPHERE_CLUSTER/Resources"

Ersetzen Sie VSPHERE_CLUSTER durch den Namen Ihres vSphere-Clusters.

Weitere Informationen finden Sie unter Root-Ressourcenpool für einen eigenständigen Host angeben.

vCenter.datastore

String. Der Name des vCenter-Datenspeichers für Ihren Nutzercluster. Beispiel:

vCenter:
  datastore: "MY-USER-DATASTORE"

vCenter.caCertPath

String. Wenn ein Client wie GKE On-Prem eine Anfrage an vCenter-Server sendet, muss der Server seine Identität gegenüber dem Client durch Vorlage eines Zertifikats oder eines Zertifikatpakets bestätigen. Um das Zertifikat oder Paket zu prüfen, muss GKE On-Prem das Root-Zertifikat in der Vertrauenskette haben.

Legen Sie für vCenter.caCertPath den Pfad des Root-Zertifikats fest. Beispiel:

vCenter:
  caCertPath: "/usr/local/google/home/me/certs/user-vcenter-ca-cert.pem"

Ihre VM-Installation hat eine Zertifizierungsstelle (Certificate Authority, CA), die ein Zertifikat für Ihren vCenter-Server ausstellt. Das Root-Zertifikat in der Vertrauenskette ist ein selbst signiertes Zertifikat, das von VMware erstellt wurde.

Wenn Sie nicht die VMware-Zertifizierungsstelle (Standardeinstellung) verwenden möchten, können Sie VMware so konfigurieren, dass eine andere Zertifizierungsstelle genutzt wird.

Wenn Ihr vCenter-Server ein von der VMware-Standardzertifizierungsstelle ausgestelltes Zertifikat verwendet, laden Sie es so herunter:

curl -k "https://SERVER_ADDRESS/certs/download.zip" > download.zip

Ersetzen Sie SERVER_ADDRESS durch die Adresse Ihres vCenter-Servers.

Installieren Sie den Befehl unzip und entpacken Sie die Zertifikatsdatei:

sudo apt-get install unzip
unzip downloads.zip

Wenn der Befehl unzip zum Entpacken beim ersten Mal nicht funktioniert, geben Sie ihn noch einmal ein.

Suchen Sie die Zertifikatsdatei in certs/lin.

Wenn sich das Zertifikat ändert, können Sie die Referenz auf das neue Zertifikat aktualisieren.

vCenter.credentials.fileRef.path

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. Beispiel:

vCenter:
  credentials:
    fileRef:
      path: "my-config-directory/user-creds.yaml"

vCenter.credentials.fileRef.entry

String. Der Name des Anmeldedatenblocks in Ihrer Konfigurationsdatei für Anmeldedaten, die den Nutzernamen und das Passwort Ihres vCenter-Nutzerkontos enthält. Beispiel:

vCenter:
  credentials:
    fileRef:
      entry: "vcenter-creds"

enableDataplaneV2

Boolescher Wert. Wenn Sie Dataplane V2 aktivieren möchten, geben Sie hier true an. Andernfalls legen Sie false fest. Beispiel:

enableDataplaneV2: true

Dataplane V2 ist nur in Nutzerclustern verfügbar.

Schritte zur Fehlerbehebung finden Sie unter Fehlerbehebung bei Problemen mit der Dataplane 2.

network

Dieser Abschnitt enthält Informationen zu Ihrem Nutzercluster-Netzwerk.

network.hostConfig

Dieser Abschnitt enthält Informationen zu von Ihrem Cluster verwendeten NTP-Servern, DNS-Servern und DNS-Suchdomains.

Wenn Sie für eines oder beide der folgenden Felder einen Wert angegeben haben, füllen Sie diesen Abschnitt aus. Andernfalls entfernen Sie diesen Abschnitt.

  • loadBalancer.seesaw.ipBlockFilePath
  • network.ipMode.ipBlockFilePath

network.hostConfig.dnsServers

Stringarray Die Adressen der DNS-Server, die von den Hosts verwendet werden sollen. Beispiel:

network:
  hostConfig:
    dnsServers:
    - "172.16.255.1"
    - "172.16.255.2"

network.hostConfig.ntpServers

Stringarray Die Adressen der Zeitserver, die von den Hosts verwendet werden sollen. Beispiel:

network:
  hostConfig:
    ntpServers:
    - "216.239.35.0"

network.hostConfig.searchDomainsForDNS

Stringarray DNS-Suchdomains, die von den Hosts verwendet werden sollen. Diese Domains werden als Teil einer Domainsuchliste verwendet. Beispiel:

network:
  hostConfig:
    searchDomainsForDNS:
    - "my.local.com"

network.ipMode.type

String. 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

Wenn Sie für ipMode.type den Wert "static" festlegen, füllen Sie dieses Feld aus. Wenn Sie für ipMode.type den Wert "dhcp" festgelegt haben, entfernen Sie dieses Feld.

String. Der Pfad der IP-Blockdatei für Ihren Cluster. Beispiel:

network:
  ipMode:
    ipBlockFilePath: "/my-config-folder/user-cluster-ipblock.yaml"

network.serviceCIDR und network.podCIDR

Strings. Ihr Nutzercluster muss einen IP-Adressbereich für Dienste und einen IP-Adressbereich für Pods haben. Diese Bereiche werden durch die Felder network.serviceCIDR und network.podCIDR angegeben. In diese Felder werden Standardwerte eingefügt. Sie können die Werte auch ändern.

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.

Beispiel:

network:
  serviceCIDR: "10.96.0.0/20"
  podCIDR: "192.168.0.0/16"

network.vCenter.networkName

String. Der Name des vSphere-Netzwerks für Ihre Nutzerclusterknoten.

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 nicht eindeutig ist, kann ein Pfad zum Netzwerk angegeben werden, z. B. /DATACENTER/network/NETWORK_NAME.

Beispiel:

network:
  vCenter:
    networkName: "MY-USER-CLUSTER-NETWORK"

loadBalancer

Dieser Abschnitt enthält Informationen zum Load-Balancer für Ihren Nutzercluster.

loadBalancer.vips.controlPlaneVIP

Die IP-Adresse, die Sie auf dem Load-Balancer für den Kubernetes API-Server des Nutzerclusters konfiguriert haben. Beispiel:

loadBalancer:
  vips:
    controlplaneVIP: "203.0.113.3"

loadBalancer.vips.ingressVIP

Die IP-Adresse, die Sie für den Load-Balancer für eingehenden Traffic konfigurieren möchten. Beispiel:

loadBalancer:
  vips:
    ingressVIP: "203.0.113.4"

loadBalancer.kind

String. Legen Sie dafür "Seesaw", "F5BigIP" oder "ManualLB" fest. Beispiel:

loadBalancer:
  kind: "Seesaw"

loadBalancer.manualLB

Wenn Sie für loadbalancer.kind den Wert "manualLB" festlegen, füllen Sie diesen Abschnitt aus. Andernfalls entfernen Sie diesen Abschnitt oder lassen ihn auskommentiert.

loadBalancer.manualLB.ingressHTTPNodePort

Integer. Der Ingress-Dienst in einem Nutzercluster wird als Kubernetes-Dienst vom Typ LoadBalancer implementiert. Der Dienst hat einen ServicePort für HTTP. Für die HTTP-ServicePorts müssen Sie einen nodePort-Wert auswählen.

Legen Sie für dieses Feld den Wert nodePort fest. Beispiel:

loadBalancer:
  manualLB:
    ingressHTTPNodePort: 32527

loadBalancer.manualLB.ingressHTTPSNodePort

Integer. Der Ingress-Dienst in einem Nutzercluster wird als Dienst vom Typ LoadBalancer implementiert. Der Dienst hat einen ServicePort für HTTPS. Für den HTTPS-ServicePort müssen Sie einen nodePort-Wert auswählen.

Legen Sie für dieses Feld den Wert nodePort fest. Beispiel:

loadBalancer:
  manualLB:
    ingressHTTPSNodePort: 30139

loadBalancer.manualLB.controlPlaneNodePort

Ganzzahl. Der Kubernetes API-Server im Administratorcluster ist als Dienst vom Typ NodePort implementiert. Für den Dienst müssen Sie einen nodePort-Wert auswählen.

Legen Sie für dieses Feld den Wert nodePort fest. Beispiel:

loadBalancer:
  manualLB:
    controlPlaneNodePort: 30968

loadBalancer.manualLB.addonsNodePort

Entfernen Sie dieses Feld. Es wird nicht in einem Nutzercluster verwendet.

loadBalancer.f5BigIP

Wenn Sie für loadbalancer.kind den Wert "f5BigIP" festlegen, füllen Sie diesen Abschnitt aus. Andernfalls entfernen Sie diesen Abschnitt oder lassen ihn auskommentiert.

loadBalancer.f5BigIP.address

String. Die Adresse Ihres F5 BIG-IP-Load-Balancers. Beispiel:

loadBalancer:
  f5BigIP:
      address: "203.0.113.2"

loadBalancer.f5BigIP.fileRef.path

String. Der Pfad einer Konfigurationsdatei mit Anmeldedaten, die den Nutzernamen und das Passwort eines Kontos enthält, mit dem Anthos-Cluster auf VMware 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.

Beispiel:

loadBalancer:
  f5BigIP:
    fileRef:
      path: ""my-config-folder/user-creds.yaml"

loadBalancer.f5BigIP.fileRef.entry

String. Der Name des Anmeldedatenblocks in Ihrer Konfigurationsdatei für Anmeldedaten, die den Nutzernamen und das Passwort Ihres F5 BIG-IP-Kontos enthält. Beispiel:

loadBalancer:
  f5BigIP:
    fileRef:
      entry: "f5-creds"

loadBalancer.f5BigIP.partition

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

String. Wenn Sie SNAT verwenden, ist dies der Name Ihres SNAT-Pools. Wenn Sie SNAT nicht verwenden, entfernen Sie dieses Feld oder lassen es auskommentiert. 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.

Informationen zum Einrichten des Seesaw-Load-Balancer finden Sie unter Kurzanleitung: Seesaw-Load-Balancer und Gebündeltes Load-Balancing mit Seesaw.

loadBalancer.seesaw.ipBlockFilePath

String. Legen Sie dies auf den Pfad der IP-Blockdatei für Ihre Seesaw-VMs fest. Beispiel:

loadBalancer:
  seesaw:
    ipBlockFilePath: "config-folder/admin-seesaw-ipblock.yaml"

loadBalancer.seesaw.vrid

Integer. Die virtuelle Router-ID Ihrer Seesaw-VM. Diese Kennung, die eine Ganzzahl Ihrer Wahl ist, muss in einem VLAN einmalig sein. Gültiger Bereich ist 1 – 255. Beispiel:

loadBalancer:
  seesaw:
    vrid: 125

loadBalancer.seesaw.masterIP

String. Die virtuelle IP-Adresse, die auf Ihrer Master-Seesaw-VM konfiguriert ist. Beispiel:

loadBalancer:
  seesaw:
    masterIP: 172.16.20.21

loadBalancer.seesaw.cpus

Ganzzahl. Die Anzahl der CPUs für jeder Seesaw-VM. Beispiel:

loadBalancer:
  seesaw:
    cpus: 8

loadBalancer.seesaw.memoryMB

Integer. Die Größe des Arbeitsspeichers in Megabyte für jede Seesaw-VM. Beispiel:

loadBalancer:
  seesaw:
    memoryMB: 8192

Hinweis: Dieses Feld gibt die Anzahl der Mebibyte des Speichers und nicht die Anzahl der Megabyte an. Ein Mebibyte ist 2^20 = 1.048.576 Byte. Ein Megabyte ist 10^6 = 1.000.000 Byte.

loadBalancer.seesaw.vCenter.networkName

String. Der Name des vCenter-Netzwerks, das Ihre Seesaw-VMs enthält. Beispiel:

loadBalancer:
  seesaw:
    vCenter:
      networkName: "my-seesaw-network"

loadBalancer.seesaw.enableHA

Boolescher Wert. 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

Boolescher Wert. 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

masterNode

Dieser Abschnitt enthält Informationen zu den Knoten im Administratorcluster, die als Steuerungsebenenknoten für Ihren Nutzercluster dienen.

masterNode.cpus

Ganzzahl. Die Anzahl der CPUs für jeden Administratorclusterknoten, die als Steuerungsebenen für diesen Nutzercluster dienen. Beispiel:

masterNode:
  cpus: 8

masterNode.memoryMB

Integer. Die Größe des Arbeitsspeichers in Mebibyte für jeden Administratorclusterknoten, der als Steuerungsebene für diesen Nutzercluster dient. Beispiel:

masterNode:
  memoryMB: 8192

Hinweis: Dieses Feld gibt die Anzahl der Mebibyte des Speichers und nicht die Anzahl der Megabyte an. Ein Mebibyte ist 2^20 = 1.048.576 Byte. Ein Megabyte ist 10^6 = 1.000.000 Byte.

masterNode.replicas

Integer. Die Anzahl der Steuerungsebenenknoten für diesen Nutzercluster. Legen Sie für dieses Feld den Wert 1 oder 3 fest. Beispiel:

masterNode:
  replicas: 3

masterNode.autoResize.enabled

Boolescher Wert. Setzen Sie diesen Wert auf true, um die automatische Größenanpassung der Knoten der Steuerungsebene für den Nutzercluster zu aktivieren. Beachten Sie, dass sich die Knoten der Steuerungsebene für den Nutzercluster im Administratorcluster befinden. Beispiel:

masterNode:
  autoResize:
    enabled: true

nodePools

Array von Objekten, die jeweils einen Knotenpool beschreiben.

nodePools[i].name

String. Ein Name Ihrer Wahl für den Knotenpool. Beispiel:

nodePools:
- name: "my-node-pool"

nodePools[i].cpus

Ganzzahl. Die Anzahl der CPUs für jeden Knoten im Pool. Beispiel:

nodePools"
- name: "my-node-pool"
  cpus: 8

nodePools[i].memoryMB

Integer. Die Größe des Arbeitsspeichers in Mebibyte für jeden Knoten im Pool. Beispiel:

nodePools"
- name: "my-node-pool"
  memoryMB: 8192

Hinweis: Dieses Feld gibt die Anzahl der Mebibyte des Speichers und nicht die Anzahl der Megabyte an. Ein Mebibyte ist 2^20 = 1.048.576 Byte. Ein Megabyte ist 10^6 = 1.000.000 Byte.

nodePools[i].replicas

Integer. Die Anzahl der Knoten im Pool. Beispiel:

nodePools:
- name: "my-node-pool"
  replicas: 5

nodePools[i].bootDiskSizeGB

Integer. Die Größe des Bootlaufwerks in Gigabyte für jeden Knoten im Pool. Diese Konfiguration ist ab Anthos-Cluster auf VMware-Version 1.5.0 verfügbar Beispiel:

nodePools
- name: "my-node-pool"
  bootDiskSizeGB: 40

nodePools[i].osImageType

String. Der Typ des Betriebssystems, der auf den VMs im Knotenpool ausgeführt werden soll. Mögliche Werte sind "ubuntu_containerd", "ubuntu" und "cos". Beispiel:

nodePools
- name: "my-node-pool"
  osImageType: "ubuntu_containerd"

nodePools[i].labels

Zuordnung. Labels, die auf jeden Knoten im Pool angewendet werden sollen. Beispiel:

nodePools:
- name: "my-node-pool"
  labels:
    environment: "production"
    tier: "cache"

nodePools[i].taints

Array von Objekten, die jeweils eine Markierung beschreiben. Beispiel:

nodePools:
- name: "my-node-pool"
  taints:
  - key: "staging"
    value: "true"
    effect: "NoSchedule"

nodePools[i].vsphere.datastore

String. Der Name des vCenter-Datenspeichers, in dem jeder Knoten im Pool erstellt wird. Beispiel:

nodePools:
- name: "my-node-pool"
  vsphere:
    datastore: "my-datastore"

nodePools[i].vsphere.tags

Array von Objekten, von denen jedes ein vSphere-Tag beschreibt, das auf VMs im Knotenpool platziert wird. Jedes Tag hat eine Kategorie und einen Namen. Beispiel:

nodePools:
- name: "my-node-pool"
  vsphere:
    tags:
    - category: "purpose"
      name: "testing"

Wenn Sie Tags an alle VMs in einem Knotenpool anhängen möchten, muss Ihr vCenter-Nutzerkonto diese vSphere-Tagging-Berechtigungen haben:

  • vSphere-Tagging.Assign oder Unassign vSphere Tag
  • vSphere Tagging.Assign oder Unassign vSphere Tag on Object (vSphere 7)

nodePools[i].autoscaling

Vorschau.

Wenn Sie das Autoscaling für den Knotenpool aktivieren möchten, füllen Sie diesen Abschnitt aus. Andernfalls entfernen Sie diesen Abschnitt.

nodePools[i].autoscaling.minReplicas

Integer. Die Mindestanzahl der Knoten, die das Autoscaling für den Pool festlegen kann. Muss mindestens 1 sein Beispiel:

nodePools:
- name: "my-node-pool"
  autoscaling:
    minReplicas: 5

nodePools.autoscaling.maxReplicas

Integer. Die maximale Anzahl von Knoten, die das Autoscaling für den Pool festlegen kann.

nodePools:
- name: "my-node-pool"
  autoscaling:
    maxReplicas: 10

antiAffinityGroups.enabled

Boolescher Wert. Legen Sie dafür true fest, wenn das Erstellen von DRS-Regeln aktiviert werden soll. Andernfalls legen Sie false fest. Beispiel:

antiAffinityGroups:
  enabled true

Anthos-Cluster auf VMware erstellt automatisch die DRS (Distributed Resource Scheduler)-Anti-Affinitätsregeln für die Knoten Ihres Nutzerclusters, wodurch sie auf mindestens drei physische 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 drei physische Hosts verfügbar.

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 drei Hosts haben, für die vSphere-VMs geplant werden können, legen Sie für antiAffinityGroups.enabled den Wert false fest.

authentication

Dieser Abschnitt enthält Informationen zur Authentifizierung und Autorisierung von Clusternutzern.

authentication.oidc

Verwenden Sie diesen Abschnitt nicht. Bearbeiten Sie stattdessen nach der Clustererstellung die benutzerdefinierte ClientConfig-Ressource, wie unter Cluster für Anthos Identity Service mit OIDC konfigurieren beschrieben.

authentication.sni

Wenn Sie ein zusätzliches Bereitstellungszertifikat für den Kubernetes API-Server des Clusters festlegen möchten, füllen Sie diesen Abschnitt aus. Andernfalls entfernen Sie diesen Abschnitt oder lassen ihn auskommentiert.

authentication.sni.certPath

String. Der Pfad zu einem Bereitstellungszertifikat für den Kubernetes API-Server. Beispiel:

authentication:
  sni:
    certPath: "my-cert-folder/example.com.crt"

authentication.sni.keyPath

String. Der Pfad zur privaten Schlüsseldatei des Zertifikats. Beispiel:

authentication:
  sni:
    keyPath: "my-cert-folder/example.com.key"

stackdriver

Dieser Abschnitt enthält Informationen zum Google Cloud-Projekt und zum Dienstkonto für das Speichern von Logs und Messwerten.

stackdriver.projectID

String. Die ID des Google Cloud-Projekts, in dem Sie Logs aufrufen möchten. Beispiel:

stackdriver:
  projectID: "my-logs-project"

stackdriver.clusterLocation

String. 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. Beispiel:

stackdriver:
  clusterLocation: "us-central1"

stackdriver.enableVPC

Boolescher Wert. Wenn das Netzwerk des Clusters von einer VPC gesteuert wird, legen Sie für dieses Feld den Wert true fest. So wird gewährleistet, dass alle Telemetriedaten über die eingeschränkten IP-Adressen von Google übertragen werden. Andernfalls legen Sie für dieses Feld false fest. Beispiel:

stackdriver:
  enableVPC: false

stackdriver.serviceAccountKeyPath

String. Der Pfad der JSON-Schlüsseldatei für Ihr Logging-Monitoring-Dienstkonto. Beispiel:

stackdriver:
  serviceAccountKeyPath: "my-key-folder/log-mon-key.json"

stackdriver.disableVsphereResourceMetrics

Boolescher Wert. Setzen Sie diesen Wert auf true, um die Erfassung von Messwerten aus vSphere zu deaktivieren. Setzen Sie ihn andernfalls auf false. Beispiel:

stackdriver:
  disableVsphereResourceMetrics: true

gkeConnect

Dieser Abschnitt enthält Informationen zum Google Cloud-Projekt und zu den Dienstkonten, die Sie zum Herstellen einer Verbindung Ihres Clusters zu Google Cloud verwenden möchten.

gkeConnect.projectID

String. Die ID des Cloud-Projekts, das Sie zum Herstellen einer Verbindung Ihres Clusters zu Google Cloud verwenden möchten. Beispiel:

gkeConnect:
  projectID: "my-connect-project-123"

gkeConnect.registerServiceAccountKeyPath

String. Der Pfad der JSON-Schlüsseldatei für Ihr Connect-Register-Dienstkonto. Beispiel:

gkeConnect:
  registerServiceAccountKeyPath: "my-key-folder/connect-register-key.json"

usageMetering

Wenn Sie die Nutzungsmessung für Ihren Cluster aktivieren möchten, füllen Sie diesen Abschnitt aus. Andernfalls entfernen Sie diesen Abschnitt oder lassen ihn auskommentiert.

usageMetering.bigQueryProjectID

String. Die ID des Google Cloud-Projekts, in dem Sie Nutzungsmessdaten speichern möchten. Beispiel:

usageMetering:
  bigQueryProjectID: "my-bq-project"

usageMetering.bigQueryDatasetID

String. Die ID des BigQuery-Datasets, in dem Sie Nutzungsmessdaten speichern möchten. Beispiel:

usageMetering:
  bigQueryDatasetID: "my-bq-dataset"

usageMetering.bigQueryServiceAccountKeyPath

String. Der Pfad der JSON-Schlüsseldatei für Ihr BigQuery-Dienstkonto. Beispiel:

usageMetering:
  bigQueryServiceAccountKeyPath: "my-key-folder/bq-key.json"

usageMetering.enableConsumptionMetering

Boolescher Wert. Legen Sie für dieses Feld true fest, wenn Sie die verbrauchsbasierte Messung aktivieren möchten. Andernfalls legen Sie "false" fest. Beispiel:

usageMetering:
  enableConsumptionMetering: 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.

cloudAuditLogging.projectID

String. Die Projekt-ID des Google Cloud-Projekts, in dem Sie Audit-Logs speichern möchten. Beispiel:

cloudAuditLogging:
  projectID: "my-audit-project"

cloudAuditLogging.clusterLocation

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. Beispiel:

cloudAuditLogging:
  clusterLocation: "us-central1"

cloudAuditLogging.serviceAccountKeyPath

String. Der Pfad der JSON-Schlüsseldatei für Ihr Audit-Logging-Dienstkonto. Beispiel:

cloudAuditLogging:
  serviceAccountKeyPath: "my-key-folder/audit-log-key.json"

autoRepair.enabled

Boolescher Wert. Legen Sie für diesen Wert true fest, um die automatische Knotenreparatur zu aktivieren. Setzen Sie ihn andernfalls auf false. Beispiel:

autoRepair:
  enabled: true