In questa pagina vengono descritti i campi nell'utente Google Distributed Cloud di configurazione del cluster.
Generare un modello per il file di configurazione
Se hai utilizzato gkeadm
per creare la tua workstation di amministrazione, è stato generato gkeadm
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 Default, il cluster utilizzerà quel valore se non inserisci nulla per questo 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
Obbligatorio
Stringa
Un nome a tua scelta per il cluster utente. Il nome deve:
- Deve contenere al massimo 40 caratteri
- Contenere solo caratteri alfanumerici minuscoli o un trattino (
-
) - iniziano con un carattere alfabetico
- terminare con un carattere alfanumerico
Esempio:
name: "my-user-cluster"
gkeOnPremVersion
Obbligatorio
Modificabile
Stringa
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.
Immutabile
Stringa
Valori possibili: una stringa che inizia con "gke-onprem-secrets-"
Il nome di uno spazio dei nomi Kubernetes nel cluster di amministrazione in cui sono stati preparati i secret vengono conservati per questo cluster utente.
Esempio:
preparedSecrets: namespace: "gke-onprem-secrets-alice"
enableControlplaneV2
1,30 e successive
Immutabile
Booleano
Precompilato: true
Valore predefinito: true
Nella versione 1.30 e successive, Controlplane V2 è obbligatorio per i nuovi cluster di utenti. Se includi questo campo nel file di configurazione, è necessario
essere impostato su true
. Con Controlplane V2, il piano di controllo 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 per errore. L'errore di un cluster di amministrazione non influisce sui cluster utente.
Separazione operativa. L'upgrade del cluster di amministrazione non causa tempi di inattività per cluster utente.
Separazione dei deployment. Puoi collocare i cluster di amministrazione e utente domini o siti geografici in errore. Ad esempio, un cluster utente in un ambiente potrebbe trovarsi in un sito geografico diverso da quello del cluster di amministrazione.
1,29 e inferiori
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 abilitare il piano di controllo 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
di archiviazione, compilalo qui. Tutti i campi che compili qui in vCenter
sostituisce i campi corrispondenti nella configurazione del cluster di amministrazione
.
vCenter.address
Immutabile
Stringa
Impostazione predefinita: eredita dal cluster di amministrazione
L'indirizzo IP o il nome host dell'istanza del server vCenter che vuoi da utilizzare per questo cluster utente.
Per ulteriori informazioni, vedi Ricerca dell'indirizzo del server vCenter.
Se specifichi un valore diverso dall'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
ovCenter.storagePolicyName
vCenter.cluster
ovCenter.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
Immutabile
Stringa
Impostazione predefinita: 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. Questa vSphere rappresenta un sottoinsieme degli host ESXi fisici nel data center vCenter.
Se specifichi un valore per questo campo, devi specificare anche:
vCenter.networkName
vCenter.datacenter
vCenter.datastore
ovCenter.storagePolicyName
Il valore specificato è relativo a /.../DATA_CENTER/vm/
.
Se il cluster vSphere si trova nella cartella /.../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
R 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
/.../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
Immutabile
Stringa
Impostazione predefinita: 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, ad eccezione
quando imposti il campo su una stringa vuota
eseguire la migrazione di un datastore a Storage Policy Based Management (SPBM).
vCenter.storagePolicyName
Facoltativo
Immutabile
Stringa
Il nome di un Criterio di archiviazione delle VM per i nodi del cluster.
Puoi anche specificare un criterio di archiviazione delle VM per i nodi in un determinato nodo piscina. Tuttavia, il criterio specificato qui si applica a qualsiasi pool di nodi che non ha norme proprie.
Per ulteriori informazioni, vedi Configura un criterio di archiviazione.
Se specifichi un valore per questo campo, non specificare un valore per
vCenter.datastore
.
vCenter.caCertPath
Mutable
String
Valore predefinito: 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
Modificabile
Stringa
Impostazione predefinita: eredita dal cluster di amministrazione
Se fornisci un valore per preparedSecrets.namespace, non forniscono un valore per questo campo. Fornisci invece un valore per vCenter.credentials.secretRef.version.
Il percorso di un file di configurazione delle credenziali che contiene il nome utente e la password del tuo account utente vCenter. L'utente L'account Google deve avere il ruolo di amministratore o privilegi equivalenti. Consulta Requisiti di vSphere.
Puoi utilizzare gkectl update credentials
per aggiornare questo campo in una
in un cluster Kubernetes. Per ulteriori informazioni, vedi
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
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 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 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:
vCenter: credentials: secretRef: version: "1"
vCenter.folder
Immutabile
Stringa
Impostazione predefinita: eredita dal cluster di amministrazione
Il percorso relativo di una cartella vSphere che hai già creato. Questa cartella le VM del cluster utente.
Se non specifichi un valore, le VM del cluster utente verranno inserite
/.../DATA_CENTER/vm/
.
Se specifichi un valore, è 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
Modificabile
Stringa
Impostazione predefinita: 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
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 servizio di accesso ai componenti. .
Esempio:
componentAccessServiceAccountKey: secretRef: version: "1"
privateRegistry
Compila questa sezione solo se il cluster di amministrazione utilizza un registro privato e vuoi che il cluster utente utilizzi un registro privato diverso. In caso contrario,rimuovi questa sezione o lasciala commentata.
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 selezionate
durante la creazione e l'aggiornamento del cluster.
privateRegistry.address
Immutabile
Stringa
Impostazione predefinita: 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 secret preparato per il registro privato, inserisci 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 secret preparato per un registro privato, 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 di 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 esegue il pull di un'immagine dal tuo registro privato, quest'ultimo deve dimostrare la sua identità presentando un certificato. Il certificato del registry è firmato da un'autorità di certificazione (CA). Docker utilizza il certificato della CA convalidare 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 sustatic
.enableControlplaneV2
è impostato sutrue
o può essere impostato sutrue
per impostazione predefinita. Tieni presente che Conrolplane V2 è obbligatorio per i nuovi cluster utente.
1,29 e inferiori
Questa sezione contiene informazioni sui server NTP, sui server DNS e sulla ricerca DNS. i domini utilizzati dalle VM che sono i nodi del cluster. Se utilizzi al 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 sustatic
.enableControlplaneV2
è impostato sutrue
o può essere impostato sutrue
per impostazione predefinita. Il bilanciatore del carico Seesaw non è supportato sui cluster con Piano di controllo V2 abilitato.loadBalancer.kind
impostata su"Seesaw"
.
network.hostConfig.dnsServers
Obbligatorio
Immutabile
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 tempo che le VM devono utilizzare.
Esempio:
network: hostConfig: ntpServers: - "216.239.35.0"
network.hostConfig.searchDomainsForDNS
Immutabile
Array di stringhe
I domini di ricerca DNS utilizzabili dagli host. Questi domini sono utilizzati come parte di un di ricerca dei domini.
Esempio:
network: hostConfig: searchDomainsForDNS: - "my.local.com"
network.ipMode.type
Immutabile
Stringa
Precompilato: "statico"
Valore predefinito: "dhcp"
Se vuoi che i nodi del cluster ricevano l'indirizzo IP da un server DHCP,
imposta questo valore su "dhcp"
. Se vuoi che i nodi del cluster abbiano un IP statico
indirizzi scelti da un elenco da te fornito, impostalo su "static"
.
Esempio:
network: ipMode: type: "static"
network.ipMode.ipBlockFilePath
Obbligatorio se network.ipMode.type
= static
Immutabile
Stringa
Il percorso del file del blocco IP per il cluster.
Esempio:
network: ipMode: ipBlockFilePath: "/my-config-folder/user-cluster-ipblock.yaml"
network.serviceCIDR
Stringa
precompilata immutabile: "10.96.0.0/20"
>
Un intervallo di indirizzi IP, in formato CIDR, da utilizzare per i servizi nel tuo in un cluster Kubernetes. Deve essere un intervallo di almeno /24.
Esempio:
network: serviceCIDR: "10.96.0.0/20"
network.podCIDR
Immutabile
Stringa
Precompilato: "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 cluster. 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 dei bilanciatori del carico
VIP utilizzati dai nodi del control plane e dai bilanciatori del carico
Indirizzo IP di server vCenter, server DNS e server NTP
Ti consigliamo di far rientrare gli intervalli di servizi e pod RFC 1918 uno spazio di indirizzi IP.
Ecco uno dei motivi per cui si consiglia di utilizzare 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.
Immutabile
Stringa
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 di percentuale (% ) |
%25 |
Se il nome della rete non è univoco nel tuo data center, puoi specificare del tuo percorso di apprendimento.
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 abbandona i commenti.
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
Immutabile
Stringa
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
Immutabile
Stringa
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 del blocco IP contenente gli indirizzi IP da utilizzare per questa rete sui nodi che hanno 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
Immutabile
Stringa
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
Immutabile
Array di oggetti, ognuno dei quali ha un indirizzo IP e un nome host facoltativo.
Per un cluster utente ad alta disponibilità, l'array ha tre elementi. Per un non ad alta disponibilità, 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
Obbligatorio
Immutabile
Stringa
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 questo elemento su "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.
Sebbene tu possa eseguire l'upgrade di un cluster in cui kind
è impostato su "F5BigIP"
o
"Seesaw"
, non puoi utilizzare Dataplane V2 o Controlplane V2 su
cluster esistenti con una di queste configurazioni del bilanciatore del carico. Per informazioni
sulla migrazione delle configurazioni di bilanciamento del carico, consulta quanto segue:
- Esegui la migrazione della configurazione per l'integrazione di F5 BIG-IP
- Eseguire la migrazione dal bilanciatore del carico Seesaw a MetalLB
Esempio:
loadBalancer:
kind: "MetalLB"
1.29 e precedenti
Obbligatorio
Immutabile
Stringa
Precompilato: "MetalLB"
Imposta l'opzione su "ManualLB"
, "F5BigIP"
, "Seesaw"
o "MetalLB"
.
Per abilitare Dataplane V2 e Controlplane V2, consigliamo di usare
"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. Altrimenti,
rimuovi questa sezione o abbandona i commenti.
loadBalancer.manualLB.ingressHTTPNodePort
Obbligatorio se loadBalancer.kind
= ManualLB
Immutabile
Numero intero
Precompilato: 30243
Il proxy in entrata in un cluster utente è esposto da un
Servizi Kubernetes di tipo LoadBalancer
.
Il Servizio ha un
ServicePort
per HTTP. Devi scegliere un valore nodePort
per HTTP ServicePort.
Imposta questo campo sul valore nodePort
.
Esempio:
loadBalancer: manualLB: ingressHTTPNodePort: 32527
loadBalancer.manualLB.ingressHTTPSNodePort
Obbligatorio se loadBalancer.kind
= ManualLB
Immutabile
Numero intero
Precompilato: 30879
Il proxy in entrata in un cluster utente è esposto da un servizio
di tipo LoadBalancer. Il servizio ha un ServicePort per HTTPS. Devi scegliere uno
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 di configurazione, vedi Attivazione della modalità di bilanciamento del carico manuale.
1,29 e inferiori
Se imposti loadbalancer.kind
su "f5BigIP"
, compila questa sezione. Altrimenti,
rimuovi questa sezione o abbandona i commenti.
Per attivare funzionalità nuove e avanzate, ti consigliamo di configurare manualmente
per il tuo 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 maggiori informazioni
le informazioni, vedi
Attivazione della 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 BIG-IP di F5.
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 che disponga di autorizzazioni sufficienti per configurare e gestire il bilanciatore del carico. È sufficiente il ruolo Amministratore o Amministratore delle 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"
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 Google Distributed Cloud per la connessione al bilanciatore del carico BIG-IP di F5.
L'account utente deve avere un ruolo utente che disponga di autorizzazioni sufficienti per configurare e gestire il bilanciatore del carico. Entrambi sia il ruolo Amministratore che il ruolo 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 file di configurazione delle 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 un Partizione BIG-IP creato per il 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
Nei valori 1.30 e successivi, il valore "Seesaw"
non è consentito
loadbalancer.kind
per i nuovi cluster utente perché questo bilanciatore del carico non è
supportate 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 il
loadBalancer.metalLB
. Per maggiori informazioni
le informazioni, vedi
Bilanciamento del carico in bundle con MetalLB.
1,29 e inferiori
Se imposti loadbalancer.kind
su "Seesaw"
, compila questa sezione. Altrimenti,
rimuovi questa sezione o abbandona i commenti.
Tieni presente le seguenti limitazioni del bilanciatore del carico SeeSaw:
- Se cluster di amministrazione ad alta disponibilità gestisce questo cluster utente, questo cluster utente non può utilizzare il carico Seesaw con il bilanciatore del carico di rete passthrough esterno regionale.
- Cluster utente con Controlplane V2 abilitato non può utilizzare il bilanciatore del carico Seesaw.
Per utilizzare queste funzionalità, ti consigliamo di configurare il metodo MetalLB
con il bilanciatore del carico di rete
passthrough esterno regionale. Per abilitare il bilanciatore del carico MetalLB, imposta loadbalancer.kind
a "MetalLB"
e compilare il
loadBalancer.metalLB
. Per ulteriori informazioni, consulta 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 di blocco IP per le VM Seesaw.
Esempio:
loadBalancer:
seesaw:
ipBlockFilePath: "config-folder/user-seesaw-ipblock.yaml"
1,29 e inferiori
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"
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
La identificatore router virtuale della VM Seesaw. Questo , che è un numero intero di tua scelta, deve essere univoco in una VLAN.
Esempio:
loadBalancer:
seesaw:
vrid: 125
1,29 e inferiori
Obbligatorio se loadBalancer.kind
= Seesaw
Impossibile da modificare
Numero intero
Valori possibili: 1-255
Precompilato: 0
La identificatore router virtuale della 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 VM Master Seesaw.
Esempio:
loadBalancer:
seesaw:
masterIP: 172.16.20.21
1,29 e inferiori
Obbligatorio se loadBalancer.kind
= Seesaw
Immutabile
Stringa
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 ciascuna delle tue VM di Seesaw.
Esempio:
loadBalancer:
seesaw:
cpus: 8
1,29 e inferiori
Obbligatorio se loadBalancer.kind
= Seesaw
Modificabile
Numero intero
Precompilati: 4
Il numero di CPU per ciascuna delle tue VM di 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 di megabyte. Un mebibyte corrisponde a 220 = 1.048.576 byte. Uno. megabyte è 106 = 1.000.000 di byte.
1,29 e inferiori
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 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
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"
loadBalancer.seesaw.enableHA
1.30 e successive
Non consentito per i nuovi cluster
Immutabile
Pertinente se loadBalancer.kind
= Seesaw
Booleano
Precompilato: false
Valore predefinito: false
Se vuoi creare un bilanciatore del carico Seesaw ad alta disponibilità, imposta questo
a 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 inferiori
Immutabile
Pertinente se loadBalancer.kind
= Seesaw
Booleano
Precompilato: false
Valore predefinito: false
Se vuoi creare un bilanciatore del carico Seesaw ad alta disponibilità, imposta questo
a 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
loadBalancer.seesaw.disableVRRPMAC
1,30 e successive
Non consentito per i nuovi cluster
Immutabile
Pertinente 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 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
1,29 e inferiori
Immutabile
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 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. Altrimenti,
rimuovi questa sezione o abbandona i commenti.
Per ulteriori informazioni, vedi 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 per essere usato dal bilanciatore del carico MetalLB.
loadBalancer.metalLB.addressPools[i].name
Obbligatorio se loadBalancer.kind
= MetalLB
Modificabile
Stringa
Un nome a tua scelta per il pool di indirizzi.
Esempio:
loadBalancer: metalLB: addressPools: - name: "my-address-pool-1"
loadBalancer.metalLB.addressPools[i].addresses
Obbligatorio se loadBalancer.kind
= MetalLB
Modificabile
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
Pertinente se loadBalancer.kind
= MetalLB
Modificabile
Booleano
Precompilato: false
Valore predefinito: false
Se imposti l'opzione su true
, il controller MetalLB non assegnerà l'IP
che terminano con .0 o .255 ai Services. 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
Pertinente se loadBalancer.kind
= MetalLB
Modificabile
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. Se includi questo campo nel file di configurazione,
deve essere impostato su true
. Per utilizzare il piano di controllo V2 è necessario Dataplane V2.
Ecco i vantaggi di Dataplane V2:
Dataplane V2 fornisce una rete di container più avanzata e potente dell'interfaccia (CNI) rispetto alla precedente opzione CNI, Calico. Calico è in modalità di manutenzione, il che significa che riceve solo correzioni di bug e aggiornamenti della sicurezza critici, ma non lo sviluppo di nuove funzionalità. Al contrario, Dataplane V2 sta attivamente sviluppati e migliorati, garantendoti l'accesso alle innovazioni e capacità di networking.
Dataplane V2 è la CNI preferita per GKE e altre prodotti Google Distributed Cloud.
1,29 e inferiori
Immutabile
Booleano
Precompilato: true
Valore predefinito: false
Se vuoi attivare Dataplane V2 o se vuoi utilizzare Control plane V2, imposta questo valore su true
. In caso contrario, impostalo su false
.
Ti consigliamo di abilitare Dataplane V2.
Esempio:
enableDataplaneV2: true
```
See [Dataplane V2 Troubleshooting](/kubernetes-engine/docs/how-to/dataplane-v2#troubleshooting)
for troubleshooting steps.
dataplaneV2.forwardMode
Immutabile
Stringa
Valori possibili: "snat", "dsr"
Precompilato: "snat"
Valore predefinito: "snat"
La modalità di inoltro per un cluster in cui è abilitato 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 restituito deve passare attraverso 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. La Il pod può vedere l'indirizzo IP di origine originale e il pacchetto restituito 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
a true
. In caso contrario, imposta questo valore 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'istanza
gateway NAT, impostalo su
true
. In caso contrario, impostalo su false
.
Se imposti questo campo su true
, devi impostare anche enableDataplaneV2
su
true
.
Esempio:
advancedNetworking: true
disableBundledIngress
Imposta questo elemento su true
se vuoi
disattiva il traffico in entrata in bundle
per il cluster. In caso contrario, impostala su false
.
Booleano
Modificabile
Precompilato: false
Valore predefinito: false
Esempio:
disableBundledIngress: true
storage.vSphereCSIDisabled
Se vuoi disabilitare il deployment dei componenti CSI vSphere, impostalo su
true
. In caso contrario, impostala su false
.
Modificabile
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
Modificabile
Numero intero
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
Modificabile
Numero intero
Precompilati: 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 la creazione del cluster. Se vuoi aggiornare il numero di in un secondo momento, devi ricreare il cluster utente.
Esempio:
masterNode: replicas: 3
masterNode.autoResize.enabled
Modificabile
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, imposta questo valore 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
Immutabile
Stringa
Valore predefinito: il valore di vCenter.storagePolicyName
Il nome di un Criterio di archiviazione delle 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
- Contenere solo caratteri alfanumerici minuscoli o un trattino (
-
) - iniziano con un carattere alfabetico
- 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, vedi Esegui l'upgrade dei pool di nodi.
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 ciascun nodo nel pool.
Esempio:
nodePools" - name: "my-node-pool" cpus: 8
nodePools[i].memoryMB
Obbligatorio
Modificabile
Numero intero
Precompilati: 8192
I 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 intero
Precompilato: 40
Valore predefinito: 40
Le dimensioni 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.
Se specifichi ubuntu_cgv2
o cos_cgv2
, devi eseguire
gkectl prepare --extra-os-image-types=cgroupv2
prima di creare/aggiornare il cluster.
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, vedi Guida dell'utente per i pool di nodi del sistema operativo Windows Server.
nodePools[i].labels
Mappatura
modificabile
Etichette da applicare a ogni oggetto Node Kubernetes nel pool.
Esempio:
nodePools: - name: "my-node-pool" labels: environment: "production" tier: "cache"
Per motivi di sicurezza, kubelet non può applicare etichette a se stesso in determinati spazi dei nomi.
Gli spazi dei nomi riservati delle etichette del nodo sono : kubernetes.io
, k8s.io
e googleapis.com
.
nodePools[i].taints
Mutabile
Array di oggetti, ognuno dei quali descrive un
contaminante Kubernetes applicato a ogni
nodo del pool. Le incompatibilità sono coppie chiave/valore associate a un effect
. Le incompatibilità vengono utilizzate 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
Modificabile
Stringa
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
Stringa
modificabile
Valore predefinito: il valore di vCenter.storagePolicyName
Il nome di un Criterio di archiviazione delle VM per i nodi nel pool.
Per ulteriori informazioni, vedi Configura 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 per utilizzare Affinità host VM.
Modificabile di
Un array di stringhe, ognuna delle quali è il nome di una
gruppo DRS dell'host.
L'array può contenere un solo elemento.
Esempio:
nodePools: - name: "my-node-pool" vsphere: hostgroups: - "my-hostgroup"
nodePools[i].vsphere.tags
Modificabile
Un 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 collegare tag a tutte le VM in un pool di nodi, il tuo account utente vCenter devono avere 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 questo . In caso contrario, rimuovi questa sezione o abbandona i commenti.
nodePools[i].autoscaling.minReplicas
Modificabile
Numero intero
Valori possibili: maggiore di o uguale a 1
Precompilati: 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
Modificabile
Numero intero
Precompilati: 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
Pertinente se loadBalancer.kind
= "MetalLB"
Modificabile
Booleano
Precompilato: true
Valore predefinito: false
Imposta questo valore su true
se vuoi consentire allo speaker MetalLB di funzionare sui nodi
in piscina. In caso contrario, impostala 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
Modificabile
Numero intero
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
Booleano
Precompilato: true
Valore predefinito: RECENSIONI: QUESTO HA UN VALORE PREDEFINITO?
Imposta l'opzione su true
per abilitare la creazione di regole DRS. In caso contrario, impostalo su
false
.
Esempio:
antiAffinityGroups: enabled: 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 licenza vSphere Enterprise Plus completamente gestita.
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 abilitato DRS o se non hai almeno quattro host dove
Le VM vSphere possono essere pianificate. Imposta antiAffinityGroups.enabled
su false
.
enableVMTracking
Anteprima
Immutabile
Precompilato: false
Impostalo su true
per abilitare il monitoraggio delle VM con i tag vSphere. Altrimenti, impostala
a false
.
Per ulteriori informazioni, vedi Abilita il monitoraggio delle VM.
Esempio:
enableVMTracking: true
nodePoolUpdatePolicy.maximumConcurrentNodePoolUpdate
Modificabile
Numero intero
Valori possibili: 0 o 1
Precompilati: 0
Impostazione predefinita: DA FARE: RECENSIONI: HA UN VALORE PREDEFINITO?
Il numero di pool di nodi da aggiornare contemporaneamente. Un valore 1
specifica che è possibile aggiornare un solo pool di nodi alla volta. 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 vengono autenticati e autorizzati gli utenti del cluster.
authentication.oidc
Non usare questa sezione. Dopo la creazione del cluster, modifica invece ClientConfig risorsa personalizzata come descritto in Configurazione di cluster per Anthos Identity Service con OIDC .
authentication.sni
Se vuoi fornire un certificato di servizio aggiuntivo per del server API Kubernetes, compila questa sezione. In caso contrario, rimuovi questa sezione o escludi i commenti.
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
Stringa
obbligatoria
non modificabile
L'ID del tuo
progetto host del parco risorse.
Per i nuovi cluster, questo ID progetto deve essere uguale a quello 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 a
esistenti.
Esempio:
gkeConnect: projectID: "my-fleet-host-project"
gkeConnect.location
Immutabile
Stringa
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. Nella versione 1.28 e successive, puoi specificare facoltativamente Google Cloud
regione in cui vengono eseguiti i servizi Fleet e Connect. Se non specificato,
delle 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.
Nuovi cluster creati utilizzando i client dell'API GKE On-Prem: nella console Google Cloud, in Google Cloud CLI o in Terraform, utilizza lo stesso della regione specificata per l'API GKE On-Prem.
Per i nuovi cluster, se includi questo campo, la regione specificata deve corrisponde alla regione configurata in
cloudAuditLogging.clusterLocation
,stackdriver.clusterLocation
egkeOnPremAPI.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 chiave JSON per il tuo connect-register service account.
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
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 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, segui i passaggi 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
sufalse
. In caso contrario registrare eventuali cluster nel progetto, disabilitagkeonprem.googleapis.com
(il nome del servizio per l'API GKE On-Prem) nel progetto. Per istruzioni, vedi Disattivazione dei 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
utilizza la console o gcloud CLI per visualizzare
nei dettagli del cluster. 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 successivamenterimuovi la sezione e aggiorni il cluster, l'aggiornamento non andrà a buon fine.
gkeOnPremAPI.enabled
Modificabile
Valore booleano
Predefinita: true
Per impostazione predefinita, il cluster è registrato nell'API GKE On-Prem se
L'API GKE On-Prem è abilitata nel tuo progetto. Imposta false
se non vuoi registrare il cluster.
Dopo che il cluster è stato registrato nell'API GKE On-Prem, se devi annulla la registrazione del cluster, apporta la modifica seguente e aggiorna il cluster:
gkeOnPremAPI: enabled: false
gkeOnPremAPI.location
Immutabile
Stringa
Predefinita: stackdriver.clusterLocation
La regione Google Cloud in cui viene eseguita e archivia l'API GKE On-Prem
nei 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
Modificabile
Se vuoi abilitare Cloud Logging e Cloud Monitoring per il cluster, compila questa sezione. In caso contrario rimuovi questa sezione o esci ha commentato.
Questa sezione è obbligatoria per impostazione predefinita. Vale a dire che se non includi questa sezione,
devi includere il flag --skip-validation-stackdriver
quando esegui
gkectl create cluster
.
Questa sezione è obbligatoria nel cluster utente se vuoi gestire del ciclo di vita nella console Google Cloud.
stackdriver.projectID
Obbligatorio per il logging e il monitoraggio
Immutabile
Stringa
L'ID del tuo
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 a
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
Immutabile
Stringa
Precompilato: "us-central1"
La regione Google Cloud in cui vuoi archiviare i log. È una buona l'idea di scegliere una regione vicina al tuo data center on-premise.
Per i nuovi cluster, se includi gkeOnPremAPI
e cloudAuditLogging
sezioni del file di configurazione, la regione impostata qui deve essere
la stessa regione impostata in gkeConnect.location
, gkeOnPremAPI.location
,
e cloudAuditLogging.clusterLocation
. Se le regioni non corrispondono,
la creazione del cluster non va a buon fine.
Esempio:
stackdriver: clusterLocation: "us-central1"
stackdriver.enableVPC
Immutabile
Booleano
Precompilato: false
Se la rete del cluster è controllata da un 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 il logging e il monitoraggio
Modificabile
Stringa
Il percorso del file della chiave JSON per l'account di servizio di monitoraggio dei log.
Per aggiornare il valore di questo campo, utilizza gkectl update cluster
.
Per informazioni sulla modifica della chiave dell'account di servizio di monitoraggio dei log, consulta Rotazione delle chiavi degli account di servizio.
Esempio:
stackdriver: serviceAccountKeyPath: "my-key-folder/log-mon-key.json"
stackdriver.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 servizio di monitoraggio dei log .
Esempio:
stackdriver: serviceAccountKey: secretRef: version: "1"
stackdriver.disableVsphereResourceMetrics
Modificabile
Booleano
Precompilato: false
Valore predefinito: false
Impostalo su true
per disattivare la raccolta di metriche da vSphere.
In caso contrario, impostala su false
.
Esempio:
stackdriver: disableVsphereResourceMetrics: true
usageMetering
Anteprima
Immutabile
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 la misurazione dell'utilizzo e i dati di Google Cloud.
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 abilitare la misurazione basata sul consumo.
In caso contrario, imposta questo valore su false.
Esempio:
usageMetering: enableConsumptionMetering: true
cloudAuditLogging
Se vuoi integrare gli audit log dall'API Kubernetes del cluster server con Cloud Audit Logs, compila questa sezione. In caso contrario, rimuovi questo o lasciarla senza commenti.
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 corrispondono, la creazione del cluster ha esito negativo. 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 router dei log, consulta la sezione Destinazioni supportate.
Esempio:
cloudAuditLogging: projectID: "my-fleet-host-project"
cloudAuditLogging.clusterLocation
Obbligatorio per Cloud Audit Logs
Immutabile
Stringa
La regione Google Cloud in cui vuoi archiviare gli audit log. È una buona idea scegliere una regione vicina al tuo data center on-premise
Per i nuovi cluster, se includi gkeOnPremAPI
e stackdriver
sezioni del file di configurazione, la regione impostata qui deve essere
la stessa regione 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
Modificabile
Stringa
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 su come modificare la chiave dell'account di servizio per la registrazione di controllo, consulta Eseguire la 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 servizio di audit logging .
Esempio:
cloudAuditLogging: serviceAccountKey: secretRef: version: "1"
autoRepair.enabled
Facoltativo
Modificabile
Booleano
Precompilato: true
Imposta questo elemento su true
per abilitare la riparazione automatica dei nodi. In caso contrario, impostala su false
.
Esempio:
autoRepair: enabled: true
secretsEncryption
Se vuoi criptare i secret senza la necessità di un KMS esterno (Key Management Service) o qualsiasi altra dipendenza, 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: "GenerateKey"
La modalità di crittografia dei secret.
secretsEncryption: mode: "GeneratedKey"
secretsEncryption.generatedKey.keyVersion
Obbligatorio per la crittografia dei secret
Modificabile
Numero intero
Precompilato: 1
Un numero intero di tua scelta da utilizzare per il numero di versione della chiave. È consigliabile
inizi con 1
.
Per informazioni sull'aggiornamento di questo campo per un cluster esistente, consulta Crittografia dei secret sempre attivi.
Esempio:
secretsEncryption: generatedKey: keyVersion: 1
secretsEncryption.generatedKey.disabled
Modificabile
Booleano
Precompilato: false
Imposta questo valore su true
per disabilitare 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