File di configurazione del cluster utente 1.30

Questa pagina descrive i campi del file di configurazione del cluster utente di Google Distributed Cloud.

Generare un modello per il file di configurazione

Se hai utilizzato gkeadm per creare la workstation di amministrazione, gkeadm ha generato un modello per il file di configurazione del cluster utente. E gkeadm ha compilato alcuni campi.

Se non hai utilizzato gkeadm per creare la tua workstation di amministrazione, puoi utilizzare gkectl per generare un modello per il file di configurazione del cluster utente.

Per generare un modello per il file di configurazione del cluster utente:

gkectl create-config cluster --config=OUTPUT_FILENAME --gke-on-prem-version=VERSION

Sostituisci quanto segue:

OUTPUT_FILENAME: un percorso a tua scelta per generato automaticamente. Se ometti questo flag, gkectl assegna un nome al file user-cluster.yaml e lo inserisce nella directory corrente.

VERSION: il numero di versione desiderato. Ad esempio: gkectl create-config cluster --gke-on-prem-version=1.10.0-gke.8.

Modello

Campi obbligatori e valori predefiniti

Se un campo è contrassegnato come obbligatorio, il file di configurazione completato deve presentano un valore per il campo.

Alcuni campi sono obbligatori in base alle condizioni. Ad esempio: loadBalancer.metalLB.addressPools è obbligatorio se loadBalancer.kind è uguale a MetalLB.

Se per un campo viene specificato un valore Predefinito, il cluster lo utilizzerà se non inserisci alcun valore per il campo. Puoi eseguire l'override di un valore predefinito inserendo un valore.

Se un campo non è contrassegnato come obbligatorio e non viene specificato alcun valore predefinito, il campo è facoltativo. Puoi compilarlo se è pertinente per te, ma non per compilarlo.

Compilazione del file di configurazione in corso...

Nel file di configurazione, inserisci i valori dei campi come descritto di seguito sezioni.

name

obbligatoria
Stringa

Un nome scelto da te per il cluster utente. Il nome deve:

  • Deve contenere al massimo 40 caratteri.
  • Deve contenere solo caratteri alfanumerici minuscoli o un trattino (-).
  • iniziano con un carattere alfabetico
  • Deve terminare con un carattere alfanumerico

Esempio:

name: "my-user-cluster"

gkeOnPremVersion

Stringa

mutabile obbligatoria

La versione di Google Distributed Cloud per il tuo cluster utente.

Esempio:

gkeOnPremVersion: "1.29.0-gke.1456"

preparedSecrets.namespace

Se vuoi utilizzare credenziali preparate, compila questo campo. In caso contrario, rimuovi questo campo o lascialo come commento.

Stringa
non mutevole
Valori possibili: una stringa che inizia con "gke-onprem-secrets-"

Il nome di uno spazio dei nomi Kubernetes nel cluster di amministrazione in cui vengono conservati i secret preparati per questo cluster utente.

Esempio:

preparedSecrets:
  namespace: "gke-onprem-secrets-alice"

enableControlplaneV2

1.30 e successive

Immutabile
Valore booleano
Precompilato: true
Valore predefinito: true

Nella versione 1.30 e successive, Controlplane 2 è obbligatorio per i nuovi cluster di utenti. Se includi questo campo nel file di configurazione, è necessario essere impostato su true. Con Controlplane V2, il control plane per un cluster utente viene eseguito su uno o più nodi nel cluster utente stesso. I vantaggi di Il piano di controllo V2 include:

  • Coerenza dell'architettura tra cluster di amministrazione e utenti.

  • Isolamento dei guasti. L'errore di un cluster di amministrazione non influisce sui cluster utente.

  • Separazione operativa. L'upgrade di un cluster di amministrazione non causa tempi di inattività per i cluster utente.

  • Separazione del deployment. Puoi posizionare i cluster di amministrazione e utente in diversi domini di errore o siti geografici. Ad esempio, un cluster utente in un ambiente potrebbe trovarsi in un sito geografico diverso da quello del cluster di amministrazione.

1.29 e versioni precedenti

Immutabile
Booleano
Precompilato: true
Valore predefinito: true

Per abilitare il piano di controllo V2, imposta enableControlplaneV2 su true o rimuovi il dal file di configurazione del cluster utente. In caso contrario, impostala su false. Con Controlplane V2, il piano di controllo per un cluster utente viene eseguito su uno o più e i nodi nel cluster utente stesso. Quando il piano di controllo V2 non è abilitato, l'utente viene eseguito nel cluster di amministrazione.

Ti consigliamo di attivare Controlplane v2.

Esempio:

enableControlplaneV2: true

vCenter

Questa sezione contiene informazioni sul tuo ambiente vSphere e connessione al server vCenter.

Se vuoi che un campo di questa sezione sia uguale a quello che hai specificato nel cluster di amministrazione, rimuovi il campo o lascialo senza commenti.

Se vuoi che un campo sia diverso da quello che hai specificato per l'amministratore , compilalo qui. Tutti i campi che compili qui nella sezione vCenter sovrascrivono i campi corrispondenti nel file di configurazione del cluster amministrativo.

vCenter.address

Immutabile
Stringa
Impostazione predefinita: eredita dal cluster di amministrazione

L'indirizzo IP o il nome host dell'istanza di vCenter Server che vuoi utilizzare per questo cluster utente.

Per ulteriori informazioni, vedi Ricerca dell'indirizzo del server vCenter.

Se specifichi un valore diverso da quello dell'istanza di vCenter Server utilizzata dal cluster di amministrazione, Controlplane V2 deve essere abilitato e devi fornire valori per network.vCenter.networkName e tutti i campi obbligatori nella sezione vCenter.

Esempi:

vCenter:
  address: "203.0.113.101"
vCenter:
  address: "my-vcenter-server-2.my-domain.example"

vCenter.datacenter

Immutabile
Stringa
Impostazione predefinita: eredita dal cluster di amministrazione

Il percorso relativo di un data center vSphere.

Se specifichi un valore per questo campo, devi specificare anche:

  • vCenter.networkName
  • vCenter.datastore o vCenter.storagePolicyName
  • vCenter.cluster o vCenter.resourcePool

Il valore specificato è relativo alla cartella principale denominata /.

Se il data center si trova nella cartella principale, il valore è il nome del data center.

Esempio:

vCenter:
  datacenter: "my-uc-data-center"

In caso contrario, il valore è un percorso relativo che include una o più cartelle insieme con il nome del data center.

Esempio:

vCenter:
  datacenter: "data-centers/data-center-2"

vCenter.cluster


Stringa
non modificabile
Valore predefinito: eredita dal cluster di amministrazione

Il percorso relativo di un Cluster vSphere che rappresenta gli host ESXi dove verranno eseguite le VM del cluster utente. Questo cluster vSphere rappresenta un sottoinsieme degli host ESXi fisici nel tuo data center vCenter.

Se specifichi un valore per questo campo, devi specificare anche:

  • vCenter.networkName
  • vCenter.datacenter
  • vCenter.datastore o vCenter.storagePolicyName

Il valore specificato è relativo a /.../DATA_CENTER/vm/.

Se il cluster vSphere si trova in /.../DATA_CENTER/vm/ , il valore è il nome del cluster vSphere

Esempio:

vCenter:
  cluster: "my-uc-vsphere-cluster"

In caso contrario, il valore è un percorso relativo che include una o più cartelle insieme con il nome del cluster vSphere.

Esempio:

vCenter:
  cluster: "clusters/vsphere-cluster-2"

vCenter.resourcePool

Immutabile
Stringa
Impostazione predefinita: eredita dal cluster di amministrazione

Un pool di risorse vCenter per le VM del cluster utente.

Se vuoi utilizzare il pool di risorse predefinito, impostalo su VSPHERE_CLUSTER/Resources.

Esempio:

vCenter:
  resourcePool: "my-uc-vsphere-cluster/Resources"

Il valore specificato è relativo a /.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/

Se il pool di risorse è un elemento figlio diretto di /.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/ il valore è il nome del pool di risorse.

Esempio:

vCenter:
  resourcePool: "my-uc-resource-pool"

In caso contrario, il valore è un percorso relativo con due o più pool di risorse.

Esempio:

vCenter:
  resourcePool: "uc-resource-pool-1/uc-resource-pool-2"

vCenter.datastore

Facoltativo
Stringa
non modificabile
Valore predefinito: eredita dal cluster di amministrazione

Il nome di un datastore vSphere per il cluster utente.

Il valore specificato deve essere un nome, non un percorso. Non includere cartelle nel valore.

Esempio:

vCenter:
  datastore: "my-datastore"

Se specifichi un valore per questo campo, non specificare un valore per vCenter.storagePolicyName. Il campo vCenter.datastore è immutabile, tranne quando lo imposti su una stringa vuota durante la migrazione di un datastore a Storage Policy Based Management (SPBM).

vCenter.storagePolicyName

Facoltativo
Immutabile
Stringa

Il nome di un criterio di archiviazione VM per i nodi del cluster.

Puoi anche specificare un criterio di archiviazione delle VM per i nodi in un determinato nodo piscina. Tuttavia, le norme specificate qui si applicano a qualsiasi pool di nodi che non abbia le proprie norme.

Per ulteriori informazioni, consulta Configurare un criterio di archiviazione.

Se specifichi un valore per questo campo, non specificare un valore per vCenter.datastore.

vCenter.caCertPath

Modificabile
Stringa
Impostazione predefinita: eredita dal cluster di amministrazione

Il percorso del certificato CA per il server vCenter. Per ulteriori informazioni, vedi Recupero del certificato CA vCenter.

Esempio:

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

Per informazioni su come aggiornare questo campo, consulta Aggiorna i riferimenti dei certificati vCenter.

vCenter.credentials.fileRef.path

Mutable
String
Valore predefinito: eredita dal cluster di amministrazione

Se specifichi un valore per preparedSecrets.namespace, non specificare un valore per questo campo. Fornisci invece un valore per vCenter.credentials.secretRef.version.

Il percorso di un file di configurazione credenziali che contiene il nome utente e la password del tuo account utente vCenter. L'account dell'utente deve avere il ruolo Amministratore o privilegi equivalenti. Consulta Requisiti di vSphere.

Puoi utilizzare gkectl update credentials per aggiornare questo campo in un cluster esistente. Per ulteriori informazioni, consulta la sezione Rotazione delle chiavi degli account di servizio.

Per informazioni sull'aggiornamento delle credenziali vCenter, vedi Aggiornare le credenziali del cluster.

Esempio:

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

vCenter.credentials.fileRef.entry

Mutable
String
Valore predefinito: eredita dal cluster di amministrazione

Il nome del blocco delle credenziali, nel tuo file di configurazione credenziali, che contiene il nome utente e la password del tuo account utente vCenter.

Esempio:

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

vCenter.credentials.secretRef.version

Stringa
Valori possibili: una stringa intera o "più recente"
Valore predefinito: "più recente"

Se fornisci un valore per preparedSecrets.namespace, compila questo campo. In caso contrario, rimuovi questo campo o lascialo commentato.

La versione di un Secret preparato nel cluster di amministrazione che contiene il nome utente e la password per l'istanza vCenter Server che intendi utilizzare per questo cluster utente.

Esempio:

vCenter:
  credentials:
    secretRef:
      version: "1"

vCenter.folder


Stringa
non modificabile
Valore predefinito: eredita dal cluster di amministrazione

Il percorso relativo di una cartella vSphere che hai già creato. Questa cartella conterrà le VM del cluster utente.

Se non specifichi un valore, le VM del cluster utente verranno inserite in /.../DATA_CENTER/vm/.

Se specifichi un valore, questo è relativo a /.../DATA_CENTER/vm/.

Il valore può essere il nome di una cartella.

Esempio:

vCenter:
  folder: "my-uc-folder"

In alternativa, il valore può essere un percorso relativo che include più di una cartella.

Esempio:

vCenter:
  folder: "folders/folder-2"

componentAccessServiceAccountKeyPath

Mutable
String
Valore predefinito: eredita dal cluster di amministrazione

Il percorso del file della chiave JSON per l'account di servizio di accesso ai componenti.

Esempio:

componentAccessServiceAccountKeyPath: "my-key-folder/uc-access-key.json"

componentAccessServiceAccountKey.secretRef.version

Mutevole
Stringa
Valori possibili: una stringa di numeri interi o "latest"
Valore predefinito: "latest"

La versione di un secret preparato nel cluster di amministrazione che contiene una chiave JSON per l'account del servizio di accesso ai componenti.

Esempio:

componentAccessServiceAccountKey:
  secretRef:
    version: "1"

privateRegistry

Compila questa sezione solo se il cluster di amministrazione utilizza un registry privato e vuoi che il cluster di utenti utilizzi un registry privato diverso. Altrimenti, rimuovi questa sezione o abbandona i commenti.

Se vuoi avere impostazioni diverse da quelle del cluster di amministrazione:

  • Nome utente, password e certificato diversi

  • (Disponibile solo per il piano di controllo V2) Indirizzo del registro privato diverso

Compila i campi privateRegistry qui. Le nuove impostazioni vengono rilevate durante la creazione e l'aggiornamento del cluster.

privateRegistry.address


Stringa
non modificabile
Valore predefinito: eredita dal cluster di amministrazione

L'indirizzo IP o il FQDN (nome di dominio completo) della macchina che esegue il tuo registry Docker privato.

Esempi:

privateRegistry:
  address: "203.0.113.10"
privateRegistry:
  address: "fqdn.example.com"

privateRegistry.credentials.fileRef.path

Modificabile
Stringa
Impostazione predefinita: eredita dal cluster di amministrazione

Se prevedi di utilizzare il segreto preparato per il registry privato, non fornire un valore per questo campo. Fornisci invece un valore per privateRegistry.credentials.secretRef.version.

Il percorso di un file di configurazione delle credenziali che contiene il nome utente e la password di un account che Google Distributed Cloud può utilizzare per accedere al tuo registry Docker privato.

Esempio:

privateRegistry:
  credentials:
    fileRef:
      path: "my-config-folder/admin-creds.yaml"

privateRegistry.credentials.fileRef.entry

Modificabile
Stringa
Impostazione predefinita: eredita dal cluster di amministrazione

Il nome del blocco delle credenziali, nel tuo file di configurazione credenziali, che contiene il nome utente e la password del tuo account del registro Docker privato.

privateRegistry:
  credentials:
    fileRef:
      entry: "private-registry-creds"

privateRegistry.credentials.secretRef.version

Stringa
Valori possibili: una stringa intera o "più recente"
Valore predefinito: "più recente"

Se fornisci un valore per preparedSecrets.namespace e vuoi utilizzare il segreto preparato per un registry privato, compila questo campo. In caso contrario, rimuovi questo o lasciarlo senza commenti.

La versione di un Secret preparato nel cluster di amministrazione che contiene il nome utente e la password per l'istanza vCenter Server che intendi utilizzare per questo cluster utente.

Esempio:

privateRegistry:
  credentials:
    secretRef:
      version: "1"

privateRegistry.caCertPath

Modificabile
Stringa
Impostazione predefinita: eredita dal cluster di amministrazione

Quando Docker estrae un'immagine dal tuo registro privato, il registro deve dimostrare la propria identità presentando un certificato. Il certificato del registry è firmato da un'autorità di certificazione (CA). Docker utilizza il certificato della CA per verificare il certificato del registry.

Imposta questo campo sul percorso del certificato della CA.

Esempio:

privateRegistry:
  caCertPath: "my-cert-folder/registry-ca.crt"

network

Questa sezione contiene informazioni sulla rete del cluster utente.

network.hostConfig

1.30 e successive

Questa sezione contiene informazioni su server NTP, server DNS e domini di ricerca DNS utilizzati dalle VM corrispondenti ai nodi del cluster.

Questa sezione è obbligatoria se una o più delle seguenti condizioni sono vere:

  • network.ipMode.type impostata su static.
  • enableControlplaneV2 è impostato su true o può essere impostato su true per impostazione predefinita. Tieni presente che Controlplane 2 è necessario per i nuovi cluster di utenti.

1.29 e versioni precedenti

Questa sezione contiene informazioni su server NTP, server DNS e domini di ricerca DNS utilizzati dalle VM corrispondenti ai nodi del cluster. Se utilizzi il bilanciatore del carico Seesaw, queste informazioni si applicano anche alle VM Seesaw.

Questa sezione è obbligatoria se una o più delle seguenti condizioni sono vere:

  • network.ipMode.type impostata su static.
  • enableControlplaneV2 è impostato su true o può essere impostato su true per impostazione predefinita. Il bilanciatore del carico Seesaw non è supportato sui cluster con Piano di controllo V2 abilitato.
  • L'opzione loadBalancer.kind è impostata su "Seesaw".

network.hostConfig.dnsServers

Obbligatorio
Impossibile modificare
Array di stringhe.
Il numero massimo di elementi nell'array è tre.

Gli indirizzi dei server DNS delle VM.

Esempio:

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

network.hostConfig.ntpServers

Obbligatorio
Immutabile
Array di stringhe

Gli indirizzi dei server di ora da utilizzare per le VM.

Esempio:

network:
  hostConfig:
    ntpServers:
    - "216.239.35.0"

network.hostConfig.searchDomainsForDNS

Array di stringhe immutabile

I domini di ricerca DNS utilizzabili dagli host. Questi domini vengono utilizzati come parte di un elenco di ricerca di domini.

Esempio:

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

network.ipMode.type

Stringa
non modificabile
Precompilata: "static"
Valore predefinito: "dhcp"

Se vuoi che i nodi del cluster ricevano il proprio indirizzo IP da un server DHCP, imposta questo valore su "dhcp". Se vuoi che i nodi del cluster abbiano indirizzi IP statici scelti da un elenco che fornisci, imposta questo valore su "static".

Esempio:

network:
  ipMode:
    type: "static"

network.ipMode.ipBlockFilePath

Obbligatorio se network.ipMode.type = static
Stringa
non mutabile

Il percorso del file del blocco IP per il cluster.

Esempio:

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

network.serviceCIDR

Immutabile
Stringa
Precompilato: "10.96.0.0/20"
>

Un intervallo di indirizzi IP, in formato CIDR, da utilizzare per i servizi nel cluster. Deve essere un intervallo di almeno /24.

Esempio:

network:
  serviceCIDR: "10.96.0.0/20"

network.podCIDR


Stringa
non modificabile
Precompilata: "192.168.0.0/16"
Valore predefinito: "192.168.0.0/16"

Un intervallo di indirizzi IP, in formato CIDR, da utilizzare per i pod nel tuo in un cluster Kubernetes. Deve essere un intervallo di almeno /18.

Esempio:

network:
  podCIDR: "192.168.0.0/16"

L'intervallo di servizi non deve sovrapporsi all'intervallo di pod.

Gli intervalli di servizi e pod non devono sovrapporsi ad alcun indirizzo esterno al cluster che vuoi raggiungere dall'interno del cluster.

Ad esempio, supponiamo che l'intervallo di servizi sia 10.96.232.0/24 e che l'intervallo di pod sia 192.168.0.0/16. Il traffico inviato da un pod a un indirizzo in uno di questi verranno trattati come nel cluster e non raggiungeranno nessuna destinazione all'esterno nel cluster.

In particolare, gli intervalli di servizi e pod non devono sovrapporsi a:

  • Indirizzi IP dei nodi in qualsiasi cluster

  • Indirizzi IP utilizzati dalle macchine del bilanciatore del carico

  • VIP utilizzati dai nodi del control plane e dai bilanciatori del carico

  • Indirizzo IP dei server vCenter, DNS e NTP

Ti consigliamo di inserire gli intervalli di servizi e pod nello spazio di indirizzi RFC 1918.

Ecco un motivo per cui consigliamo di utilizzare gli indirizzi RFC 1918. Supponiamo che se il pod o l'intervallo di servizi contiene indirizzi IP esterni. Qualsiasi traffico inviato da un pod a uno di questi indirizzi esterni verrà trattato come traffico nel cluster e non raggiungerà la destinazione esterna.

network.vCenter.networkName

Obbligatorio se vCenter.address è diverso dall'indirizzo vCenter che utilizzi per il cluster di amministrazione.
Stringa
invariabile

Il nome della rete vSphere per i nodi del cluster utente.

Esempio:

network:
  vCenter:
    networkName: "my-network"

Se il nome contiene un carattere speciale, devi utilizzare una sequenza di escape.

Caratteri speciali Sequenza di escape
Barra (/) %2f
Barra rovesciata (\) %5c
Simbolo della percentuale (%) %25

Se il nome della rete non è univoco nel tuo data center, puoi specificare un percorso completo.

Esempio:

network:
  vCenter:
    networkName: "/my-uc-datacenter/network/my-network"

network.additionalNodeInterfaces

Se imposti multipleNetworkInterfaces su true, compila questa sezione. In caso contrario, rimuovi questa sezione o lasciala commentata.

Immutabile

Un array di oggetti, ognuno dei quali descrive un'interfaccia di rete che può essere utilizzata su tutti o alcuni dei nodi del cluster.

network.additionalNodeInterfaces[i].networkName

Obbligatorio se multipleNetworkInterfaces = true
Stringa
non mutabile

Il nome della rete vSphere a cui collegherà questa interfaccia del nodo aggiuntiva a.

Esempio:

network:
  additionalNodeInterfaces:
  - networkName: "my-node-interface-1"

network.additionalNodeInterfaces[i].type

Obbligatorio se multipleNetworkInterfaces = true
Stringa
non mutabile

Esempio:

network:
  additionalNodeInterfaces:
  - name: "my-node-interface-1"
    type: "static"

network.additionalNodeInterfaces[i].ipBlockFilePath

Obbligatorio se network.additionalNodeInterfaces[i].type = static
Immutabile
Stringa

Il percorso di un file di blocco IP contenente gli indirizzi IP da utilizzare per questa interfaccia di rete sui nodi che dispongono di questa interfaccia di rete.

Esempio:

network:
  additionalNodeInterfaces:
  - name: "my-node-interface-1"
    type: "static"
    ipBlockFilePath: "my-ipblock-file-1"

network.controlPlaneIPBlock

Se imposti enableControlplaneV2 su true, compila questa sezione. In caso contrario, rimuovi questa sezione o abbandona i commenti.

network.controlPlaneIPBlock.netmask

Obbligatorio se enableControlplaneV2 = true
Stringa
non mutabile

Esempio:

network:
  controlPlaneIPBlock:
    netmask: "255.255.255.0"

network.controlPlaneIPBlock.gateway

Obbligatorio se enableControlplaneV2 = true
Immutabile
Stringa

Esempio:

network:
  controlPlaneIPBlock:
    gateway: "172.16.21.1"

network.controlPlaneIPBlock.ips

Obbligatorio se enableControlplaneV2 = true
Impossibile modificare
Array di oggetti, ciascuno con un indirizzo IP e un nome host facoltativo.

Per un cluster utente ad alta disponibilità, l'array ha tre elementi. Per un cluster utente non HA, l'array ha un elemento.

Esempio:

network:
  controlPlaneIPBlock:
    ips:
    - ip: "172.16.21.6"
      hostname: "cp-vm-1"
    - ip: "172.16.21.7"
      hostname: "cp-vm-2"
    - ip: "172.16.21.8"
      hostname: "cp-vm-3"

loadBalancer

Questa sezione contiene informazioni sul bilanciatore del carico per il cluster utente.

loadBalancer.vips.controlPlaneVIP

Obbligatorio
Immutabile
Stringa

L'indirizzo IP che hai scelto di configurare sul bilanciatore del carico per il server API Kubernetes del cluster utente.

Esempio:

loadBalancer:
  vips:
    controlplaneVIP: "203.0.113.3"

loadBalancer.vips.ingressVIP

Stringa
obbligatoria
non modificabile

L'indirizzo IP che hai scelto di configurare sul bilanciatore del carico per il proxy in entrata.

Esempio:

loadBalancer:
  vips:
    ingressVIP: "203.0.113.4"

loadBalancer.kind

1.30 e successive

Obbligatorio
Immutabile
Stringa
Precompilato: "MetalLB"

Stringa. Imposta "ManualLB" o "MetalLB"

Utilizza "ManualLB" se hai un bilanciatore del carico di terze parti (ad esempio F5 BIG-IP o Citrix) o "MetalLB" per la nostra soluzione in bundle.

Anche se puoi eseguire l'upgrade di un cluster che ha kind impostato su "F5BigIP" o "Seesaw", non puoi utilizzare Dataplane V2 o Controlplane V2 sulle applicazioni esistenti con una di queste configurazioni del bilanciatore del carico. Per informazioni sulla migrazione delle configurazioni di bilanciamento del carico, consulta quanto segue:

Esempio:

loadBalancer:
  kind: "MetalLB"

1.29 e versioni precedenti

Obbligatorio
Immutabile
Stringa
Precompilato: "MetalLB"

Imposta questo valore su "ManualLB", "F5BigIP", "Seesaw" o "MetalLB".

Per attivare Dataplane V2 e Controlplane V2, ti consigliamo di utilizzare "ManualLB" se hai un bilanciatore del carico di terze parti (ad esempio F5 BIG-IP o Citrix) o "MetalLB" per la nostra soluzione in bundle.

Esempio:

loadBalancer:
  kind: "MetalLB"

loadBalancer.manualLB

Se imposti loadbalancer.kind su "manualLB", compila questa sezione. In caso contrario,rimuovi questa sezione o lasciala commentata.

loadBalancer.manualLB.ingressHTTPNodePort

Obbligatorio se loadBalancer.kind = ManualLB
Immutabile
Numero intero
Precompilato: 30243

Il proxy in entrata in un cluster utente è esposto da un servizio Kubernetes di tipo LoadBalancer. Il servizio ha un'attributo ServicePort per HTTP. Devi scegliere un valore nodePort per il ServicePort HTTP.

Imposta questo campo sul valore nodePort.

Esempio:

loadBalancer:
  manualLB:
    ingressHTTPNodePort: 32527

loadBalancer.manualLB.ingressHTTPSNodePort

Obbligatorio se loadBalancer.kind = ManualLB
Immutabile
Intero
Precompilato: 30879

Il proxy di ingresso in un cluster utente è esposto da un servizio di tipo LoadBalancer. Il servizio ha un ServicePort per HTTPS. Devi scegliere un valore nodePort per il ServicePort HTTPS.

Imposta questo campo sul valore nodePort. Esempio:

loadBalancer:
  manualLB:
    ingressHTTPSNodePort: 30139

loadBalancer.manualLB.controlPlaneNodePort

Obbligatorio se loadBalancer.kind = ManualLB e enableControlplaneV2 = false
Immutabile
Numero intero
Precompilato: 30562

Il server API Kubernetes di un cluster utente viene eseguito nel cluster di amministrazione, ed è esposto da un servizio di tipo LoadBalancer. Devi scegliere un nodePort per il servizio.

Imposta questo campo sul valore nodePort.

Esempio:

loadBalancer:
  manualLB:
    controlPlaneNodePort: 30968

loadBalancer.manualLB.konnectivityServerNodePort

Obbligatorio se loadBalancer.kind = ManualLB e enableControlplaneV2 = false
Immutabile
Numero intero
Precompilato: 30563

Il server API Kubernetes di un cluster utente che utilizza kubeception viene eseguito cluster di amministrazione ed è esposto da un servizio di tipo LoadBalancer. Il server Konnectivity riutilizza questo servizio con un valore nodePort diverso. Devi scegliere un valore nodePort per il server Konnectivity.

Imposta questo campo sul valore nodePort per il server Konnectivity.

Esempio:

loadBalancer:
  manualLB:
    konnectivityServerNodePort: 30969

loadBalancer.f5BigIP

1.30 e successive

In 1.30 e versioni successive, il valore "F5BigIP" non è consentito per loadbalancer.kind per i nuovi cluster di utenti. Se loadBalancer.f5BigIP si trova nel file di configurazione, rimuovila o commentala.

Puoi comunque utilizzare il bilanciatore del carico BIG-IP di F5 con nuovi cluster utente, ma la configurazione è diversa. Per i dettagli sulla configurazione, consulta Attivare la modalità di bilanciamento del carico manuale.

1,29 e inferiori

Se imposti loadbalancer.kind su "f5BigIP", compila questa sezione. In caso contrario,rimuovi questa sezione o lasciala commentata.

Per attivare funzionalità nuove e avanzate, ti consigliamo di configurare il bilanciamento del carico manuale per il bilanciatore del carico F5 BIG-IP. Per attivare il bilanciamento del carico manuale, imposta loadbalancer.kind su "ManualLB" e compila la sezione loadBalancer.manualLB. Per ulteriori informazioni, consulta Attivare la modalità di bilanciamento del carico manuale.

Se hai già un bilanciatore del carico F5-BIG-IP e la configurazione del cluster utilizza questa sezione; dopo aver eseguito l'upgrade alla versione 1.29 o successive, ti consigliamo di eseguire la migrazione al bilanciamento del carico manuale.

loadBalancer.f5BigIP.address

1,30 e successive

Non consentito per i nuovi cluster
Obbligatorio se loadBalancer.kind = "f5BigIP"
Stringa

L'indirizzo del bilanciatore del carico F5 BIG-IP.

Esempio:

loadBalancer:
  f5BigIP:
      address: "203.0.113.2"

1,29 e inferiori

Obbligatorio se loadBalancer.kind = "f5BigIP"
Stringa

L'indirizzo del bilanciatore del carico BIG-IP di F5.

Esempio:

loadBalancer:
  f5BigIP:
      address: "203.0.113.2"

loadBalancer.f5BigIP.credentials.fileRef.path

1.30 e successive

Non consentito per i nuovi cluster
Obbligatorio se loadBalancer.kind = "f5BigIP"
Stringa

Il percorso di un file delle credenziali che contiene il nome utente e la password di un account Google Distributed Cloud per la connessione al bilanciatore del carico BIG-IP di F5.

L'account utente deve avere un ruolo utente con autorizzazioni sufficienti per configurare e gestire il bilanciatore del carico. Entrambi sia il ruolo Amministratore che il ruolo Amministratore risorse.

Per informazioni su come aggiornare le credenziali F5 BIG-IP, consulta Aggiornamento delle credenziali di un cluster.

Esempio:

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

1,29 e inferiori

Obbligatorio se loadBalancer.kind = "f5BigIP"
Stringa

Il percorso di un file delle credenziali che contiene il nome utente e la password di un account che Google Distributed Cloud può utilizzare per connettersi al bilanciatore del carico F5 BIG-IP.

L'account utente deve avere un ruolo utente che disponga di autorizzazioni sufficienti per configurare e gestire il bilanciatore del carico. È sufficiente il ruolo Amministratore o Amministratore risorse.

Per informazioni sull'aggiornamento delle credenziali BIG-IP di F5, consulta Aggiornare le credenziali del cluster.

Esempio:

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

loadBalancer.f5BigIP.credentials.fileRef.entry

1.30 e successive

Non consentito per i nuovi cluster
Obbligatorio se loadBalancer.kind = "f5BigIP"
Stringa

Il nome del blocco delle credenziali, nel tuo file di configurazione credenziali, che contiene il nome utente e la password del tuo account F5 BIG-IP.

Esempio:

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

1,29 e inferiori

Obbligatorio se loadBalancer.kind = "f5BigIP"
Stringa

Il nome del blocco delle credenziali, nel tuo file di configurazione credenziali, che contiene il nome utente e la password del tuo account F5 BIG-IP.

Esempio:

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

loadBalancer.f5BigIP.partition

1.30 e successive

Non consentito per i nuovi cluster
Obbligatorio se loadBalancer.kind = "f5BigIP"
Stringa

Il nome di un Partizione BIG-IP creato per il cluster utente.

Esempio:

loadBalancer:
  f5BigIP:
    partition: "my-f5-user-partition"

1,29 e inferiori

Obbligatorio se loadBalancer.kind = "f5BigIP"
Stringa

Il nome di una partizione BIG-IP che hai creato per il tuo cluster utente.

Esempio:

loadBalancer:
  f5BigIP:
    partition: "my-f5-user-partition"

loadBalancer.f5BigIP.snatPoolName

1.30 e successive

Non consentito per i nuovi cluster
Obbligatorio se loadBalancer.kind = "f5BigIP" e utilizzi SNAT
Stringa

Il nome del pool SNAT.

Esempio:

loadBalancer:
  f5BigIP:
    snatPoolName: "my-snat-pool"

1,29 e inferiori

Obbligatorio se loadBalancer.kind = "f5BigIP" e utilizzi SNAT
Stringa

Il nome del pool SNAT.

Esempio:

loadBalancer:
  f5BigIP:
    snatPoolName: "my-snat-pool"

loadBalancer.seesaw

1.30 e successive

In 1.30 e versioni successive, il valore "Seesaw" non è consentito per loadbalancer.kind per i nuovi cluster di utenti perché questo bilanciatore del carico non è supportato con funzionalità nuove e avanzate. Se loadBalancer.seesaw si trova nel file di configurazione, rimuovila o commentala.

Puoi invece configurare il bilanciatore del carico MetalLB in bundle. Per attivare il bilanciatore del carico MetalLB, imposta loadbalancer.kind su "MetalLB" e compila la sezione loadBalancer.metalLB. Per ulteriori informazioni, consulta Bilanciamento del carico in bundle con MetalLB.

1,29 e inferiori

Se imposti loadbalancer.kind su "Seesaw", compila questa sezione. In caso contrario,rimuovi questa sezione o lasciala commentata.

Tieni presente le seguenti limitazioni del bilanciatore del carico SeeSaw:

Per utilizzare queste funzionalità, ti consigliamo di configurare il bilanciatore del carico MetalLB. Per abilitare il bilanciatore del carico MetalLB, imposta loadbalancer.kind a "MetalLB" e compilare il loadBalancer.metalLB. Per maggiori informazioni le informazioni, vedi Bilanciamento del carico in bundle con MetalLB.

loadBalancer.seesaw.ipBlockFilePath

1.30 e successive

Non consentito per i nuovi cluster
Obbligatorio se loadBalancer.kind = Seesaw
Immutabile
Stringa

Il percorso del File del blocco IP per le tue VM Seesaw.

Esempio:

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

1.29 e versioni precedenti

Obbligatorio se loadBalancer.kind = Seesaw
Immutabile
Stringa

Il percorso del file di blocco IP per le VM Seesaw.

Esempio:

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

loadBalancer.seesaw.vrid

1,30 e successive

Non consentito per i nuovi cluster
Obbligatorio se loadBalancer.kind = Seesaw
Immutabile
Numero intero
Valori possibili: 1 - 255
Precompilato: 0

Il VRID della tua VM Seesaw. Questo , che è un numero intero di tua scelta, deve essere univoco in una VLAN.

Esempio:

loadBalancer:
  seesaw:
    vrid: 125

1.29 e versioni precedenti

Obbligatorio se loadBalancer.kind = Seesaw
Impossibile da modificare
Numero intero
Valori possibili: 1-255
Precompilato: 0

Il VRID della tua VM Seesaw. Questo , che è un numero intero di tua scelta, deve essere univoco in una VLAN.

Esempio:

loadBalancer:
  seesaw:
    vrid: 125

loadBalancer.seesaw.masterIP

1.30 e successive

Non consentito per i nuovi cluster
Obbligatorio se loadBalancer.kind = Seesaw
Immutabile
Stringa

L'indirizzo IP virtuale configurato sulla VM Seesaw master.

Esempio:

loadBalancer:
  seesaw:
    masterIP: 172.16.20.21

1.29 e versioni precedenti

Obbligatorio se loadBalancer.kind = Seesaw
Stringa
non mutabile

L'indirizzo IP virtuale configurato sulla VM Seesaw master.

Esempio:

loadBalancer:
  seesaw:
    masterIP: 172.16.20.21

loadBalancer.seesaw.cpus

1.30 e successive

Non consentito per i nuovi cluster
Obbligatorio se loadBalancer.kind = Seesaw
Modificabile
Numero intero
Precompilati: 4

Il numero di CPU per ogni VM Seesaw.

Esempio:

loadBalancer:
  seesaw:
    cpus: 8

1.29 e versioni precedenti

Obbligatorio se loadBalancer.kind = Seesaw
Modificabile
Numero intero
Precompilati: 4

Il numero di CPU per ogni VM Seesaw.

Esempio:

loadBalancer:
  seesaw:
    cpus: 8

loadBalancer.seesaw.memoryMB

1.30 e successive

Non consentito per i nuovi cluster
Obbligatorio se loadBalancer.kind = Seesaw
Modificabile
Numero intero
Precompilato: 3072

Il numero di mebibyte di memoria per ciascuna delle VM di Seesaw.

Esempio:

loadBalancer:
  seesaw:
    memoryMB: 8192

Nota: questo campo specifica il numero di mebibyte di memoria, non il numero di megabyte. Un mebibyte corrisponde a 220 = 1.048.576 byte. Un megabyte corrisponde a 106 = 1.000.000 byte.

1.29 e versioni precedenti

Obbligatorio se loadBalancer.kind = Seesaw
Modificabile
Numero intero
Precompilato: 3072

Il numero di mebibyte di memoria per ogni VM Seesaw.

Esempio:

loadBalancer:
  seesaw:
    memoryMB: 8192

Nota: questo campo specifica il numero di mebibyte di memoria, non il di megabyte. Un mebibyte corrisponde a 220 = 1.048.576 byte. Uno. megabyte è 106 = 1.000.000 di byte.

loadBalancer.seesaw.vCenter.networkName

1,30 e successive

Non consentito per i nuovi cluster
Immutabile
Stringa
Valore predefinito: come i nodi del cluster

Il nome della rete vCenter che contiene le VM di Seesaw.

Esempio:

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

1,29 e inferiori

Stringa
non modificabile
Valore predefinito: uguale a quello dei nodi del cluster

Il nome della rete vCenter che contiene le VM di Seesaw.

Esempio:

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

loadBalancer.seesaw.enableHA

1,30 e successive

Non consentito per i nuovi cluster
Impossibile da modificare
Rilevante se loadBalancer.kind = Seesaw
Booleano
Precompilato: false
Valore predefinito: false

Se vuoi creare un bilanciatore del carico Seesaw ad alta disponibilità (HA), imposta questo valore su true. In caso contrario, imposta questo valore su false. Un bilanciatore del carico Seesaw ad alta disponibilità utilizza Una coppia(principale, di backup) delle VM.

Esempio:

loadBalancer:
  seesaw:
    enableHA: true

1.29 e versioni precedenti

Immutabile
Pertinente se loadBalancer.kind = Seesaw
Valore booleano
Precompilato: false
Valore predefinito: false

Se vuoi creare un bilanciatore del carico Seesaw ad alta disponibilità (HA), imposta questo valore su true. In caso contrario, impostalo su false. Un bilanciatore del carico Seesaw ad alta disponibilità utilizza Una coppia(principale, di backup) delle VM.

Esempio:

loadBalancer:
  seesaw:
    enableHA: true

loadBalancer.seesaw.disableVRRPMAC

1.30 e successive

Non consentito per i nuovi cluster
Impossibile modificare
Rilevante se loadBalancer.kind = Seesaw
Booleano
Precompilato: true
Valore predefinito: true

Se lo imposti su true, il bilanciatore del carico Seesaw non utilizza Apprendimento MAC per il failover. Utilizza invece ARP gratuito. Se imposti questo valore su false, il bilanciatore del carico Seesaw utilizza l'apprendimento MAC. Ti consigliamo di impostare questo valore su true. Se utilizzi vSphere 7 o versioni successive e hai un bilanciatore del carico Seesaw ad alta disponibilità, devi impostare questo valore su true.

Esempio:

loadBalancer:
  seesaw:
    disableVRRPMAC: true

1.29 e versioni precedenti

Immutabile
Pertinente se loadBalancer.kind = Seesaw
Valore booleano
Precompilato: true
Valore predefinito: true

Se imposti questo valore su true, il bilanciatore del carico Seesaw non utilizza l'apprendimento MAC per il failover. Utilizza invece il protocollo ARP gratuito. Se lo imposti su false, il bilanciatore del carico di Seesaw utilizza l'apprendimento MAC. Me ti consigliamo di impostarlo su true. Se utilizzi vSphere 7 o versioni successive, e hai un bilanciatore del carico Seesaw ad alta disponibilità, devi impostarlo su true.

Esempio:

loadBalancer:
  seesaw:
    disableVRRPMAC: true

loadBalancer.metalLB

Se imposti loadbalancer.kind su "MetalLB", compila questa sezione. In caso contrario,rimuovi questa sezione o lasciala commentata.

Per ulteriori informazioni, consulta la sezione Bilanciamento del carico in bundle con MetalLB.

loadBalancer.metalLB.addressPools

Obbligatorio se loadBalancer.kind = 'MetalLB'
Modificabile

Array di oggetti, ognuno dei quali contiene informazioni su un pool di indirizzi da utilizzare dal bilanciatore del carico MetalLB.

loadBalancer.metalLB.addressPools[i].name

Obbligatorio se loadBalancer.kind = MetalLB
Modificabile
Stringa

Un nome scelto da te per il pool di indirizzi.

Esempio:

loadBalancer:
  metalLB:
    addressPools:
    - name: "my-address-pool-1"
loadBalancer.metalLB.addressPools[i].addresses

Obbligatorio se loadBalancer.kind = MetalLB
Mutable

array di stringhe, ognuna delle quali è un intervallo di indirizzi. Ogni intervallo deve essere in formato CIDR o con trattini.

Esempio:

loadBalancer:
  metalLB:
    addressPools:
    - name: "my-address-pool-1"
      addresses:
      - "192.0.2.0/26"
      - "192.0.2.64-192.0.2.72"
loadBalancer.metalLB.addressPools[i].avoidBuggyIPs

Rilevante se loadBalancer.kind = MetalLB
Mutabile
Booleano
Precompilato: false
Valore predefinito: false

Se imposti questo valore su true, il controller MetalLB non assegnerà indirizzi IP ai servizi che terminano con .0 o .255. In questo modo si evitano il problema di eventuali bug dispositivi consumer che inviano erroneamente il traffico inviato a quegli indirizzi IP speciali.

Esempio:

loadBalancer:
  metalLB:
    addressPools:
    - name: "my-address-pool-1"
      - "192.0.2.0/26"
      - "192.0.2.64-192.0.2.72"
      avoidBuggyIPs: true
loadBalancer.metalLB.addressPools[i].manualAssign

Rilevante se loadBalancer.kind = MetalLB
Mutabile
Booleano
Precompilato: false
Valore predefinito: false

Se non vuoi che il controller MetalLB assegni automaticamente gli indirizzi IP da questo pool ai servizi, impostalo su true. Uno sviluppatore potrà quindi creare Servizio di tipo LoadBalancer e specifica manualmente uno degli indirizzi da in piscina.

In caso contrario, imposta questo valore su false.

Esempio:

loadBalancer:
  metalLB:
    addressPools:
    - name: "my-address-pool-1"
      manualAssign: true

enableDataplaneV2

1.30 e successive

Immutabile
Booleano
Precompilato: true
Valore predefinito: true

Nella versione 1.30 e successive, Dataplane V2 è obbligatorio per i nuovi cluster utente e deve essere impostato su true. Dataplane V2 è necessario per utilizzare Controlplane V2. I vantaggi di Dataplane V2 includono:

  • Dataplane V2 offre un'interfaccia CNI (Container Network Interface) più avanzata e capace rispetto all'opzione CNI precedente, Calico. Calico è in manutenzione che riceve solo correzioni di bug critici e aggiornamenti della sicurezza, ma non lo sviluppo di nuove funzionalità. Al contrario, Dataplane V2 viene sviluppato e migliorato attivamente, per garantirti l'accesso alle ultime innovazioni e funzionalità di rete.

  • Dataplane V2 è il CNI preferito per GKE e altri prodotti Google Distributed Cloud.

1,29 e inferiori

Invariabile
Booleano
Precompilato: true
Valore predefinito: false

Se vuoi abilitare Dataplane V2, o se vuoi usare Controlplane V2, impostato su true. In caso contrario, imposta questo valore su false.

Ti consigliamo di abilitare Dataplane V2.

Esempio:

  enableDataplaneV2: true

Per la procedura di risoluzione dei problemi, consulta la sezione Risoluzione dei problemi di Dataplane V2.

dataplaneV2.forwardMode

Stringa
non modificabile
Valori possibili: "snat", "dsr"
Precompilato: "snat"
Valore predefinito: "snat"

La modalità di forwarding per un cluster in cui è abilitata Dataplane V2.

Con la modalità Network Address Translation (SNAT) di origine, un pacchetto viene tradotto tramite SNAT quando viene inoltrato da un nodo del bilanciatore del carico a un pod di backend. Il pod non può vedere l'indirizzo IP di origine originale e il pacchetto di ritorno deve passare attraverso il nodo del bilanciatore del carico.

Con la modalità Direct Server Return (DSR), un pacchetto conserva l'IP di origine originale quando viene inoltrato da un nodo del bilanciatore del carico a un pod di backend. Il pod può vedere l'indirizzo IP di origine originale e il pacchetto di risposta va direttamente al client senza passare attraverso il nodo del bilanciatore del carico.

Esempio:

dataplaneV2:
  forwardMode: "dsr"

multipleNetworkInterfaces

Immutabile
Booleano
Precompilato: false
Valore predefinito: false

Se vuoi abilitare più interfacce di rete per i pod, imposta questo valore su true. In caso contrario, impostalo su false.

Per ulteriori informazioni, consulta la pagina Configurare più interfacce di rete per i pod.

Esempio:

multipleNetworkInterfaces: true

advancedNetworking

Immutabile
booleano
Precompilato: false
Valore predefinito: false

Se prevedi di creare un gateway NAT in uscita, impostalo su true. In caso contrario, impostala su false.

Se imposti questo campo su true, devi impostare anche enableDataplaneV2 su true.

Esempio:

advancedNetworking: true

disableBundledIngress

Imposta questo valore su true se vuoi disattivare l'ingresso in bundle per il cluster. In caso contrario, impostala su false.

Booleano
Mutabile
Precompilato: false
Valore predefinito: false

Esempio:

disableBundledIngress: true

storage.vSphereCSIDisabled

Se vuoi disattivare il deployment dei componenti vSphere CSI, imposta questo valore su true. In caso contrario, impostala su false.

Modificabile
Valore booleano
Precompilato: false
Valore predefinito: false

Esempio:

storage:
  vSphereCSIDisabled: false

masterNode

Questa sezione contiene informazioni sui nodi fungono da nodi del piano di controllo per questo cluster utente.

masterNode.cpus

Numerico
mutabile
Precompilato: 4
Valore predefinito: 4

Il numero di CPU per ogni nodo che funge da piano di controllo per questo cluster utente.

Esempio:

masterNode:
  cpus: 8

masterNode.memoryMB

Numerico
mutabile
Precompilato: 8192
Valore predefinito: 8192

I mebibyte di memoria per ogni nodo che funge da di controllo per questo cluster utente. Deve essere un multiplo di 4.

Esempio:

masterNode:
  memoryMB: 8192

Nota: questo campo specifica il numero di mebibyte di memoria, non il numero di megabyte. Un mebibyte corrisponde a 2^20 = 1.048.576 byte. Un megabyte corrisponde a 10^6 = 1.000.000 byte.

masterNode.replicas

Immutabile
Numero intero
Valori possibili: 1 o 3
Precompilato: 1
Valore predefinito: 1

Il numero di nodi del piano di controllo per questo cluster utente. Questo numero non può essere modificato dopo aver creato il cluster. Se vuoi aggiornare il numero di in un secondo momento, devi ricreare il cluster utente.

Esempio:

masterNode:
  replicas: 3

masterNode.autoResize.enabled

Mutevole
Booleano
Precompilato: false
Valore predefinito: false

Imposta questo valore su true per abilitare il ridimensionamento automatico del piano di controllo nodi per il cluster utente. In caso contrario, impostalo su false.

Per ulteriori informazioni, vedi Abilita il ridimensionamento dei nodi per i nodi del piano di controllo di un cluster utente.

Esempio:

masterNode:
  autoResize:
    enabled: true

masterNode.vsphere.datastore

Facoltativo
Stringa
invariabile
Valore predefinito: il valore di vCenter.datastore

Il datastore in cui verranno creati i nodi del piano di controllo per questo cluster utente.

Il valore specificato deve essere un nome, non un percorso. Non includere cartelle nel valore.

Esempio:

masterNode:
  vSphere:
    datastore: "control-plane-datastore"

Se specifichi un valore per questo campo, non specificare un valore per masterNode.vsphere.storagePolicyName. Il campo masterNode.vsphere.datastore è immutabile, tranne quando imposti il campo su una stringa vuota quando eseguire la migrazione di un datastore a Storage Policy Based Management (SPBM).

masterNode.vsphere.storagePolicyName

Facoltativo
Stringa
invariabile
Valore predefinito: il valore di vCenter.storagePolicyName

Il nome di un criterio di archiviazione VM per i nodi del piano di controllo.

Per ulteriori informazioni, vedi Configura un criterio di archiviazione.

Esempio:

masterNode:
  vSphere:
    storagePolicyName: "control-plane-storage-policy"

Se specifichi un valore per questo campo, non specificare un valore per masterNode.vsphere.datastore.

nodePools

Obbligatorio
Modificabile
Array di oggetti, ognuno dei quali descrive un pool di nodi.

Per scoprire di più, consulta la pagina Creare e gestire i pool di nodi.

nodePools[i].name

Obbligatorio
Immutabile
Stringa

Un nome scelto da te per il pool di nodi. Il nome deve:

  • Deve contenere al massimo 40 caratteri.
  • Deve contenere solo caratteri alfanumerici minuscoli o un trattino (-).
  • iniziano con un carattere alfabetico
  • Deve terminare con un carattere alfanumerico

Esempio:

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

nodePools[i].gkeOnPremVersion

Quando esegui l'upgrade di un cluster utente, puoi specificare che i pool di nodi selezionati devono rimanere nella versione precedente.

Se vuoi che questo pool di nodi rimanga alla versione precedente, impostalo su precedente. In caso contrario, rimuovi questo campo o impostalo sulla stringa vuota. Per ulteriori informazioni, consulta Eseguire l'upgrade di un cluster di utenti.

Modificabile
Stringa
Valore predefinito: il cluster gkeOnPremVersion

Esempio:

nodePools:
- name: "my-node-pool"
  gkeOnPremVersion: "1.13.0-gke.16"

nodePools[i].cpus

Obbligatorio
Numero
intero
modificabile
Precompilato: 4

Il numero di vCPU per ogni nodo nel pool.

Esempio:

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

nodePools[i].memoryMB

Obbligatorio
Modificabile
Numero intero
Precompilati: 8192

La quantità di mebibyte di memoria per ogni nodo nel pool. Deve essere un multiplo di 4.

Esempio:

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

Nota: questo campo specifica il numero di mebibyte di memoria, non il numero di megabyte. Un mebibyte corrisponde a 2^20 = 1.048.576 byte. Un megabyte corrisponde a 10^6 = 1.000.000 byte.

nodePools[i].replicas

Obbligatorio
Modificabile
Numero intero
Precompilato: 3
Valori possibili: il numero totale di nodi non infetti in tutti i pool di nodi in il cluster deve essere almeno tre.

Il numero di nodi nel pool.

Esempio:

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

nodePools[i].bootDiskSizeGB

Mutevole
Numero
Precompilato: 40
Valore predefinito: 40

La dimensione del disco di avvio in gibibyte per ogni nodo nel pool.

Esempio:

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

nodePools[i].osImageType

Modificabile
Stringa
Valori possibili: "ubuntu_containerd", "cos", "ubuntu_cgv2", "cos_cgv2", "windows"
Precompilato: "ubuntu_cgv2"
Valore predefinito: "ubuntu_containerd"

Il tipo di immagine del sistema operativo da eseguire sulle VM nel pool di nodi.

Esempio:

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

nodePools[i].osImage

Obbligatorio se nodePools[i].osImageType = windows
Modificabile
Stringa

Il nome di un modello di VM Windows. Il modello deve essere basato su un modello Windows ISO del server 2019 con il tag en-US per lingua/regione.

Per ulteriori informazioni, consulta la Guida dell'utente per i pool di nodi del sistema operativo Windows Server.

nodePools[i].labels

Modificabile
Mappatura

Etichette da applicare a ciascun oggetto Nodo Kubernetes nel pool.

Esempio:

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

Il kubelet non può applicare etichette a se stesso in determinati spazi dei nomi per per motivi di sicurezza.

Gli spazi dei nomi delle etichette dei nodi riservati sono: kubernetes.io, k8s.io, googleapis.com.

nodePools[i].taints

Mutabile
Array di oggetti, ognuno dei quali descrive un contaminante Kubernetes applicato a ogni nodo del pool. Le contaminazioni sono coppie chiave-valore associate a un effect. Incompatibilità con le tolleranze per la pianificazione dei pod. Specifica uno dei seguenti valori: seguire per effect: NoSchedule, PreferNoSchedule, NoExecute.

Esempio:

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

nodePools[i].vsphere.datastore


Stringa
modificabile
Valore predefinito: il valore di vCenter.datastore

Il nome del datastore vCenter in cui verranno creati i nodi.

Esempio:

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

Se specifichi un valore per questo campo, non specificare un valore per nodePools[i].vsphere.storagePolicyName.

nodePools[i].vsphere.storagePolicyName

Modificabile
Stringa
Valore predefinito: il valore di vCenter.storagePolicyName

Il nome di un Criterio di archiviazione delle VM per i nodi nel pool.

Per ulteriori informazioni, consulta Configurare un criterio di archiviazione.

Esempio:

nodePools:
- name: "my-node-pool"
  vsphere:
    storagePolicyName: "my-storage-policy"

Se specifichi un valore per questo campo, non specificare un valore per nodePools[i].vsphere.datastore.

nodePools[i].vsphere.hostgroups

Compila questa sezione se vuoi configurare il cluster in modo che utilizzi l'affinità VM-host.

Array di stringhe
immutabile, ognuna delle quali è il nome di un gruppo DRS host.

L'array può contenere un solo elemento.

Esempio:

nodePools:
- name: "my-node-pool"
  vsphere:
    hostgroups:
    - "my-hostgroup"

nodePools[i].vsphere.tags

Mutevole
Array di oggetti, ognuno dei quali descrive un tag vSphere da posizionare sulle VM nel pool di nodi.

Ogni tag ha una categoria e un nome.

Esempio:

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

Se vuoi associare tag a tutte le VM in un pool di nodi, il tuo account utente vCenter deve disporre di questi privilegi di tagging vSphere:

  • Tagging vSphere.Assegnazione o annullamento dell'assegnazione di tag vSphere
  • Tagging vSphere.Assegnazione o annullamento dell'assegnazione di tag vSphere sull'oggetto (vSphere 7)

nodePools[i].autoscaling

Modificabile

Se vuoi abilitare la scalabilità automatica per il pool di nodi, compila questa sezione. In caso contrario, rimuovi questa sezione o abbandona i commenti.

nodePools[i].autoscaling.minReplicas

Mutabile
Numero intero
Valori possibili: maggiore o uguale a 1
Precompilato: 0

Il numero minimo di nodi che il gestore della scalabilità automatica può impostare per il pool.

Esempio:

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

nodePools[i].autoscaling.maxReplicas

Mutevole
Numero intero
Precompilato: 0

Il numero massimo di nodi che il gestore della scalabilità automatica può impostare per il pool.

Esempio:

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

nodePools[i].enableLoadBalancer

Rilevante se loadBalancer.kind = "MetalLB"
Mutabile
Booleano
Precompilato: true
Valore predefinito: false

Imposta questo valore su true se vuoi che l'altoparlante MetalLB funzioni sui nodi in piscina. In caso contrario, impostalo su false.

Per ulteriori informazioni, consulta la sezione Bilanciamento del carico in bundle con MetalLB.

Esempio:

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

nodePools[i].updateStrategy.rollingUpdate.maxSurge

Anteprima
Numero
mutabile
Valore predefinito: 1

Il numero massimo di macchine nel pool di nodi che è possibile aggiornare durante un aggiornamento o un upgrade.

nodePools:
- name: "my-node-pool"
  updateStrategy:
    rollingUpdate:
      maxSurge: 3

antiAffinityGroups.enabled

Modificabile
Valore booleano
Precompilato: true
Valore predefinito: true

Se questo campo è true, Google Distributed Cloud crea VMware Strumento di pianificazione delle risorse distribuite (DRS) di regole di anti-affinità per i nodi del cluster utente, che vengono distribuiti su almeno tre host ESXi fisici nel tuo data center

Questa funzionalità richiede che l'ambiente vSphere soddisfi i seguenti requisiti condizioni:

  • VMware DRS è abilitato. VMware DRS richiede la versione della licenza vSphere Enterprise Plus.

  • Il tuo account utente vSphere ha la Host.Inventory.Modify cluster di accesso.

  • Sono disponibili almeno quattro host ESXi.

Anche se la regola richiede che i nodi del cluster siano distribuiti tra Host ESXi, consigliamo vivamente di avere almeno 4 host ESXi disponibili.

Ricorda che se disponi di licenza vSphere Standard, non puoi abilitare VMware DRS.

Se non hai attivato DRS o se non disponi di almeno quattro host su cui pianificare le VM vSphere, imposta antiAffinityGroups.enabled su false.

Esempio:

antiAffinityGroups:
  enabled: false

enableVMTracking

Anteprima
Immutabile
Precompilato: false

Impostalo su true per abilitare il monitoraggio delle VM con i tag vSphere. In caso contrario, impostalo su false.

Per ulteriori informazioni, vedi Abilita il monitoraggio delle VM.

Esempio:

enableVMTracking: true

nodePoolUpdatePolicy.maximumConcurrentNodePoolUpdate

Mutabile
Numero intero
Valori possibili: 0 o 1
Precompilato: 0 Valore predefinito: DA FARE: RECENSORI: QUESTO HA UN VALORE PREDEFINITO?

Il numero di pool di nodi da aggiornare contemporaneamente. Il valore 1 specifica che puoi aggiornare il pool di nodi contemporaneamente. Un valore 0 specifica che è possibile aggiornare un numero illimitato di pool di nodi alla volta.

Esempio:

nodePoolUpdatePolicy:
  maximumConcurrentNodePoolUpdate: 1

nodePoolUpdatePolicy.updateStrategy.rollingUpdate.maxSurge

Anteprima
Modificabile
Numero intero
Valore predefinito: 1

Il numero massimo di macchine in un pool di nodi che possono essere aggiornate contemporaneamente durante un aggiornamento o un upgrade. Si applica a qualsiasi pool di nodi che non specifica la propria strategia di aggiornamento.

nodePools:
- name: "my-node-pool"
  updateStrategy:
    rollingUpdate:
      maxSurge: 3

authentication

Questa sezione contiene informazioni su come gli utenti del cluster vengono autenticati autorizzati.

authentication.oidc

Non usare questa sezione. Dopo la creazione del cluster, modifica la risorsa personalizzata ClientConfig come descritto in Configurazione dei cluster per Anthos Identity Service con OIDC.

authentication.sni

Se vuoi fornire un certificato di pubblicazione aggiuntivo per il server API Kubernetes del cluster, compila questa sezione. In caso contrario, rimuovi questa sezione o lasciala commentata.

authentication.sni.certPath

Stringa

Il percorso di un certificato di pubblicazione per il server API Kubernetes.

Esempio:

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

authentication.sni.keyPath

Facoltativo
Stringa

Il percorso del file della chiave privata del certificato.

Esempio:

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

gkeConnect

Obbligatorio
Immutabile

Questa sezione contiene informazioni sul progetto Google Cloud e sull'account di servizio da utilizzare per registra il cluster a un parco risorse Google Cloud.

gkeConnect.projectID

Obbligatorio
Immutabile
Stringa

L'ID del progetto host del parco risorse. Per i nuovi cluster, questo ID progetto deve essere uguale all'ID impostato in stackdriver.projectID e cloudAuditLogging.projectID. Se gli ID progetto non corrispondono, la creazione del cluster ha esito negativo. Questo requisito non si applica ai cluster esistenti.

Esempio:

gkeConnect:
  projectID: "my-fleet-host-project"

gkeConnect.location


Stringa
non modificabile
Valore predefinito: globale

L'appartenenza al parco risorse di ogni cluster è gestita dal servizio del parco risorse (gkehub.googleapis.com) e il servizio Connect (gkeconnect.googleapis.com). La località dei servizi può essere globale o regionale. In 1.28 e versioni successive, puoi specificare facoltativamente la regione Google Cloud in cui vengono eseguiti i servizi Fleet e Connect. Se non specificato, vengono utilizzate le istanze globali dei servizi. Tieni presente quanto segue:

  • I cluster utente creati prima della versione 1.28 sono gestiti dal parco risorse globale e Connetti i servizi.

  • I nuovi cluster creati utilizzando i client dell'API GKE On-Prem (console Google Cloud, Google Cloud CLI o Terraform) utilizzano la stessa regione specificata per l'API GKE On-Prem.

  • Per i nuovi cluster, se includi questo campo, la regione specificata deve corrisponderà alla regione configurata in cloudAuditLogging.clusterLocation, stackdriver.clusterLocation e gkeOnPremAPI.location. Se le regioni non corrispondono, la creazione del cluster ha esito negativo.

Esempio:

gkeConnect:
  location: "us-central1"

gkeConnect.registerServiceAccountKeyPath

Obbligatorio
Modificabile
Stringa

Il percorso del file della chiave JSON per il tuo account di servizio connect-register.

Per aggiornare il valore di questo campo, utilizza gkectl update cluster.

Per informazioni su come modificare la chiave dell'account di servizio connect-register, consulta la sezione Ruotare le chiavi dell'account di servizio.

Esempio:

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

gkeConnect.registerServiceAccountKey.secretRef.version

Mutevole
Stringa
Valori possibili: una stringa di numeri interi o "latest"
Valore predefinito: "latest"

La versione di un Secret preparato nel cluster di amministrazione che contiene una chiave JSON per il servizio Connect-register .

Esempio:

gkeConnect:
  registerServiceAccountKey:
    secretRef:
      version: "1"

gkeOnPremAPI

Nella versione 1.16 e successive, se l'API GKE On-Prem è abilitata nel tuo progetto Google Cloud, tutti i cluster nel progetto vengono registrato nell'API GKE On-Prem automaticamente nella regione configurata in stackdriver.clusterLocation.

  • Se vuoi registrare tutti i cluster del progetto nell'API GKE On-Prem, assicurati di svolgere i passaggi descritti in Prima di iniziare per attivare e utilizzare l'API GKE On-Prem nel progetto.

  • Se non vuoi registrare il cluster nell'API GKE On-Prem, includi questa sezione e imposta gkeOnPremAPI.enabled su false. Se non vuoi registrare cluster nel progetto, disattiva gkeonprem.googleapis.com (il nome del servizio per l'API GKE On-Prem) nel progetto. Per le istruzioni, vedi Disattivare i servizi.

La registrazione del cluster utente nell'API GKE On-Prem consente di utilizzare gli strumenti standard, ovvero la console Google Cloud, Google Cloud CLI Terraform: per gestire ciclo di vita del cluster. Inoltre, la registrazione del cluster ti consente di utilizzare la console o l'interfaccia a riga di comando gcloud per visualizzarne i dettagli. Ad esempio, puoi eseguire i comandi gcloud per recuperare informazioni sul tuo cluster utente.

Dopo aver aggiunto questa sezione e creato o aggiornato il cluster, se successivamente rimuovi la sezione e aggiorni il cluster. L'aggiornamento non andrà a buon fine.

gkeOnPremAPI.enabled


Booleano mutabile
Valore predefinito: true

Per impostazione predefinita, il cluster è registrato nell'API GKE On-Prem se L'API GKE On-Prem è abilitata nel tuo progetto. Imposta su false se non vuoi registrare il cluster.

Dopo aver registrato il cluster nell'API GKE On-Prem, se devi annullarne la registrazione, apporta la seguente modifica e poi aggiorna il cluster:

gkeOnPremAPI:
  enabled: false

gkeOnPremAPI.location

Valore predefinito: stackdriver.clusterLocation

Stringa immutabile

La regione Google Cloud in cui viene eseguita l'API GKE On-Prem e in cui vengono archiviati i metadati del cluster. Scegli una delle regioni supportate. Devi utilizzare la stessa regione configurata in gkeConnect.location, stackdriver.clusterLocation e cloudAuditLogging.clusterLocation. Se gkeOnPremAPI.enabled è false, non includere questo campo.

stackdriver

Obbligatorio per impostazione predefinita
Mutabile

Se vuoi attivare Cloud Logging e Cloud Monitoring per il tuo cluster, compila questa sezione. In caso contrario rimuovi questa sezione o esci ha commentato.

Questa sezione è obbligatoria per impostazione predefinita. In altre parole, se non includi questa sezione, devi includere il flag --skip-validation-stackdriver quando esegui gkectl create cluster.

Questa sezione è obbligatoria se vuoi gestire il ciclo di vita di cluster utente con i client dell'API GKE On-Prem.

stackdriver.projectID

Obbligatorio per Logging e Monitoring
Stringa
non modificabile

L'ID del progetto host del parco risorse. Per i nuovi cluster, questo ID progetto deve essere uguale a quello impostato in gkeConnect.projectID e cloudAuditLogging.projectID. Se gli ID progetto non sono uguali, la creazione del cluster non va a buon fine. Questo requisito non si applica ai cluster esistenti.

Se necessario, puoi configurare un router dei log in questo progetto per instradare i log a in un altro progetto. Per informazioni su come configurare il log router, vedi Destinazioni supportate.

Esempio:

stackdriver:
  projectID: "my-fleet-host-project"

stackdriver.clusterLocation

Obbligatorio per il logging e il monitoraggio
Stringa
non modificabile
Precompilato: "us-central1"

La regione Google Cloud in cui vuoi archiviare i log. È buona idea scegliere una regione vicina al tuo data center on-premise.

Per i nuovi cluster, se includi le sezioni gkeOnPremAPI e cloudAuditLogging nel file di configurazione, la regione impostata qui deve essere la stessa impostata in gkeConnect.location, gkeOnPremAPI.location e cloudAuditLogging.clusterLocation. Se le regioni non sono uguali, la creazione del cluster non riesce.

Esempio:

stackdriver:
  clusterLocation: "us-central1"

stackdriver.enableVPC

Immutabile
Booleano
Precompilato: false

Se la rete del cluster è controllata da una VPC, imposta questo valore su true. Ciò garantisce che tutta la telemetria passi attraverso gli indirizzi IP limitati di Google. In caso contrario, imposta questo valore su false.

Esempio:

stackdriver:
  enableVPC: false

stackdriver.serviceAccountKeyPath

Obbligatorio per Logging e monitoraggio
Stringa
mutabile

Il percorso del file della chiave JSON per l'account di servizio di monitoraggio e generazione di log.

Per aggiornare il valore di questo campo, utilizza gkectl update cluster.

Per informazioni su come modificare la chiave dell'account di servizio per il monitoraggio e la registrazione, consulta la sezione Ruotare le chiavi dell'account di servizio.

Esempio:

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

stackdriver.serviceAccountKey.secretRef.version

Mutevole
Stringa
Valori possibili: una stringa di numeri interi o "latest"
Valore predefinito: "latest"

La versione di un Secret preparato nel cluster di amministrazione che contiene una chiave JSON per il servizio di monitoraggio dei log .

Esempio:

stackdriver:
  serviceAccountKey:
    secretRef:
      version: "1"

stackdriver.disableVsphereResourceMetrics

Modificabile
Valore booleano
Precompilato: false
Valore predefinito: false

Imposta questo valore su true per disattivare la raccolta delle metriche da vSphere. In caso contrario, impostalo su false.

Esempio:

stackdriver:
  disableVsphereResourceMetrics: true

usageMetering

Anteprima
Impossibile modificare

Se vuoi abilitare la misurazione dell'utilizzo per il tuo cluster, compila questo . In caso contrario, rimuovi questa sezione o abbandona i commenti.

usageMetering.bigQueryProjectID

Anteprima
Obbligatorio per la misurazione dell'utilizzo
Immutabile
Stringa

L'ID del progetto Google Cloud in cui vuoi archiviare i dati di misurazione dell'utilizzo.

Esempio:

usageMetering:
  bigQueryProjectID: "my-bq-project"

usageMetering.bigQueryDatasetID

Anteprima
Obbligatorio per la misurazione dell'utilizzo
Stringa
non modificabile

L'ID del set di dati BigQuery in cui vuoi archiviare i dati di misurazione dell'utilizzo. Esempio:

usageMetering:
  bigQueryDatasetID: "my-bq-dataset"

usageMetering.bigQueryServiceAccountKeyPath

Anteprima
Obbligatorio per la misurazione dell'utilizzo
Immutabile
Stringa.

Il percorso del file della chiave JSON per il tuo account di servizio BigQuery.

Per aggiornare il valore di questo campo, utilizza gkectl update cluster.

Per informazioni su come modificare la chiave dell'account di servizio BigQuery, consulta Rotazione delle chiavi degli account di servizio.

Esempio:

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

usageMetering.bigQueryServiceAccountKey.secretRef.version

Modificabile
Stringa
Valori possibili: una stringa intera o "più recente"
Valore predefinito: "più recente"

La versione di un Secret preparato nel cluster di amministrazione che contiene una chiave JSON per il tuo account di servizio BigQuery.

Esempio:

gkeConnect:
  bigQueryServiceAccountKey:
    secretRef:
      version: "1"

usageMetering.enableConsumptionMetering

Anteprima
Obbligatorio per la misurazione dell'utilizzo
Immutabile
Booleano
Precompilato: false

Imposta questo valore su true se vuoi attivare la misurazione in base al consumo. In caso contrario, imposta questo valore su false.

Esempio:

usageMetering:
  enableConsumptionMetering: true

cloudAuditLogging

Se vuoi integrare gli audit log del server API Kubernetes del tuo cluster con gli audit log di Cloud, compila questa sezione. In caso contrario, rimuovi questa sezione o lasciala commentata.

cloudAuditLogging.projectID

Obbligatorio per Cloud Audit Logs
Stringa
non modificabile

L'ID del progetto host del parco risorse. Per i nuovi cluster, questo ID progetto deve essere uguale all'ID impostato in gkeConnect.projecID e stackdriver.projectID. Se gli ID progetto non sono uguali, la creazione del cluster non va a buon fine. Questo requisito non si applica a per i cluster esistenti.

Se necessario, puoi configurare un router dei log in questo progetto per instradare i log a in un altro progetto. Per informazioni su come configurare il log router, vedi Destinazioni supportate.

Esempio:

cloudAuditLogging:
  projectID: "my-fleet-host-project"

cloudAuditLogging.clusterLocation

Obbligatorio per Cloud Audit Logs
Stringa
non modificabile

La regione Google Cloud in cui vuoi archiviare gli audit log. È consigliabile scegliere una regione vicina al tuo data center on-premise

Per i nuovi cluster, se includi le sezioni gkeOnPremAPI e stackdriver nel file di configurazione, la regione impostata qui deve essere la stessa impostata in gkeConnect.location, gkeOnPremAPI.location e stackdriver.clusterLocation. Se le regioni non corrispondono, la creazione del cluster ha esito negativo.

Esempio:

cloudAuditLogging:
  clusterLocation: "us-central1"

cloudAuditLogging.serviceAccountKeyPath

Obbligatorio per Cloud Audit Logs
Stringa
mutabile

Il percorso del file chiave JSON per il tuo account di servizio di audit logging.

Per aggiornare il valore di questo campo, utilizza gkectl update cluster.

Per informazioni sulla modifica della chiave dell'account di servizio di audit logging, consulta Rotazione delle chiavi degli account di servizio.

Esempio:

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

cloudAuditLogging.serviceAccountKey.secretRef.version

Modificabile
Stringa
Valori possibili: una stringa intera o "più recente"
Valore predefinito: "più recente"

La versione di un secret preparato nel cluster di amministrazione che contiene una chiave JSON per il tuo account servizio di registrazione dei log di controllo.

Esempio:

cloudAuditLogging:
  serviceAccountKey:
    secretRef:
      version: "1"

autoRepair.enabled

Facoltativo
Mutabile
Booleano
Precompilato: true

Imposta questo elemento su true per abilitare la riparazione automatica del nodo. In caso contrario, impostalo su false.

Esempio:

autoRepair:
  enabled: true

secretsEncryption

Se vuoi criptare i secret senza la necessità di un KMS (Key Management Service) esterno o altre dipendenze, compila questa sezione. In caso contrario, rimuovi questa sezione o abbandona i commenti.

secretsEncryption.mode

Obbligatorio per la crittografia dei secret
Immutabile
Stringa
Valore possibile: "GenerateKey"
Precompilato: "GeneratedKey"

La modalità di crittografia del secret.

secretsEncryption:
  mode: "GeneratedKey"

secretsEncryption.generatedKey.keyVersion

Obbligatorio per la crittografia dei secret
Mutabile
Intero
Precompilato: 1

Un numero intero di tua scelta da utilizzare per il numero di versione della chiave. È consigliabile inizi con 1.

Per informazioni su come aggiornare questo campo per un cluster esistente, consulta Crittografia dei secret sempre attivi.

Esempio:

secretsEncryption:
  generatedKey:
    keyVersion: 1

secretsEncryption.generatedKey.disabled

Mutevole
Booleano
Precompilato: false

Imposta questo valore su true per disattivare la crittografia dei secret. In caso contrario, impostala su false.

Per informazioni sull'aggiornamento di questo campo per un cluster esistente, consulta Crittografia dei secret sempre attivi.

Esempio:

secretsEncryption:
  generatedKey:
    disabled: false