Questo documento descrive i campi nel file di configurazione del cluster di amministrazione per la versione 1.29 di Google Distributed Cloud.
Generazione di 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 di amministrazione. Inoltre, gkeadm
ha compilato alcuni campi per te.
Se non hai utilizzato gkeadm
per creare la workstation di amministrazione, puoi utilizzare
gkectl
per generare un modello per il file di configurazione del cluster di amministrazione.
Per generare un modello per il file di configurazione del cluster di amministrazione:
gkectl create-config admin --config=OUTPUT_FILENAME --gke-on-prem-version=VERSION
Sostituisci OUTPUT_FILENAME
con il percorso che preferisci per il
modello generato. Se ometti questo flag, gkectl
assegna al file il nome
admin-cluster.yaml
e lo inserisce nella directory corrente.
Sostituisci VERSION
con la versione completa di una release di patch 1.29. Ad esempio:
gkectl create-config admin --gke-on-prem-version=1.29.800-gke.108
.
Questa versione deve essere uguale o precedente alla versione di gkectl
. Se ometti questo flag, il modello di configurazione generato viene compilato con i valori in base all'ultima patch 1.29.
Modello
Compilare il file di configurazione
Nel file di configurazione, inserisci i valori dei campi come descritto nelle sezioni seguenti.
name
(Facoltativo)
Stringa
Valore predefinito: un nome casuale con prefisso "gke-admin-"
Un nome scelto da te per il cluster.
Esempio:
name: "my-admin-cluster"
bundlePath
Stringa
mutabile obbligatoria
Il percorso del file del bundle di Google Distributed Cloud.
Il file del pacchetto completo di Google Distributed Cloud contiene tutti i componenti di una determinata release di Google Distributed Cloud. Quando crei una workstation amministrativo, viene fornito un pacchetto completo all'indirizzo:
/var/lib/gke/bundles/gke-onprem-vsphere-VERSION-full.tgz
Esempio:
bundlePath: "/var/lib/gke/bundles/gke-onprem-vsphere-1.10.0-gke.8.full.tgz"
preparedSecrets.enabled
Anteprima
Facoltativo
Immutabile
Booleano
Precompilato: false
Valore predefinito: false
Imposta questo valore su true
se vuoi utilizzare
credenziali preparate
nel cluster di amministrazione. In caso contrario, impostalo su false
.
Esempio:
preparedSecrets: enabled: true
vCenter
Obbligatorio
Immutabile
Questa sezione contiene informazioni sul tuo ambiente vSphere e sulla connessione a vCenter Server.
vCenter.address
Stringa
obbligatoria
non modificabile
L'indirizzo IP o il nome host del server vCenter.
Per ulteriori informazioni, consulta Trovare l'indirizzo del server vCenter.
Esempi:
vCenter: address: "203.0.113.100"
vCenter: address: "my-vcenter-server.my-domain.example"
vCenter.datacenter
Stringa
obbligatoria
non modificabile
Il percorso relativo di un data center vSphere.
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-data-center"
In caso contrario, il valore è un percorso relativo che include una o più cartelle insieme al nome del data center.
Esempio:
vCenter: datacenter: "data-centers/data-center-1"
vCenter.cluster
Stringa
obbligatoria
non modificabile
Il percorso relativo di un cluster vSphere che rappresenta gli host ESXi su cui verranno eseguite le VM del cluster di amministrazione. Questo cluster vSphere rappresenta un sottoinsieme degli host ESXi fisici nel tuo data center vCenter.
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-vsphere-cluster"
In caso contrario, il valore è un percorso relativo che include una o più cartelle insieme al nome del cluster vSphere.
Esempio:
vCenter: cluster: "clusters/vsphere-cluster-1"
vCenter.resourcePool
Stringa
obbligatoria
non modificabile
Un pool di risorse vCenter per le VM del cluster di amministrazione.
Se vuoi utilizzare il pool di risorse predefinito, impostalo su
VSPHERE_CLUSTER/Resources
.
Esempio:
vCenter: resourcePool: "my-vsphere-cluster/Resources"
Se vuoi utilizzare un pool di risorse già creato, impostalo sul percorso relativo del pool di risorse.
Il valore specificato è relativo a
/.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/
Se il pool di risorse è un elemento diretto di
/.../DATA_CENTER/host/.../VSPHERE_CLUSTER/Resources/
il valore è il nome del pool di risorse.
Esempio:
vCenter: resourcePool: "my-resource-pool"
In caso contrario, il valore è un percorso relativo con due o più pool di risorse.
Esempio:
vCenter: resourcePool: "resource-pool-1/resource-pool-2"
vCenter.datastore
Obbligatorio se vCenter.storagePolicyName
non è specificato
Stringa
invariabile
Il nome di un datastore vSphere per il cluster di amministrazione.
Il valore specificato deve essere un nome, non un percorso. Non includere cartelle nel valore.
Esempio:
vCenter: datastore: "my-datastore"
Devi specificare un valore per vCenter.datastore
o
vCenter.storagePolicyName
, ma non per entrambi. Se specifichi un valore per questo
campo, non specificare un valore per vCenter.storagePolicyName
. Il
vCenter.datastore
campo è immutabile, tranne quando lo imposti su una stringa vuota
quando
esegui la migrazione di un datastore a Storage Policy Based Management(SPBM).
vCenter.storagePolicyName
Obbligatorio se vCenter.datastore
non è specificato
Stringa
invariabile
Il nome di un criterio di archiviazione VM per i nodi del cluster.
Il cluster di amministrazione deve essere ad alta disponibilità (HA) per funzionare con il criterio di archiviazione.
Per ulteriori informazioni, consulta Configurare un criterio di archiviazione.
Devi specificare un valore per vCenter.datastore
o
vCenter.storagePolicyName
, ma non per entrambi. Se specifichi un valore per questo
campo, non specificare un valore per vCenter.datastore
.
vCenter.caCertPath
Stringa
mutabile obbligatoria
Il percorso del certificato CA per il server vCenter.
Per saperne di più, consulta Ottenere il certificato CA di vCenter.
Per informazioni su come aggiornare questo campo per un cluster esistente, consulta Aggiornare i riferimenti ai certificati vCenter.
Esempio:
vCenter: caCertPath: "/usr/local/google/home/me/certs/vcenter-ca-cert.pem"
vCenter.credentials.fileRef.path
Stringa obbligatoria
Il percorso di un file di configurazione delle credenziali che contiene il nome utente e la password del tuo account utente vCenter. L'account utente deve avere il ruolo Amministratore o privilegi equivalenti. Consulta i requisiti di vSphere.
Puoi utilizzare gkectl update
per aggiornare questo campo in un cluster esistente.
Per informazioni su come aggiornare le credenziali di vCenter, consulta Aggiornamento delle credenziali del cluster.
Esempio:
vCenter: credentials: fileRef: path: "my-config-folder/admin-creds.yaml"
vCenter.credentials.fileRef.entry
Stringa obbligatoria
Il nome del blocco delle credenziali nel file di configurazione delle credenziali, che contiene il nome utente e la password del tuo account utente vCenter.
Puoi utilizzare gkectl update
per aggiornare questo campo in un cluster esistente.
Per informazioni su come aggiornare le credenziali di vCenter, consulta Aggiornamento delle credenziali del cluster.
Esempio:
vCenter: credentials: fileRef: entry: "vcenter-creds"
vCenter.folder
(Facoltativo)
Stringa
invariabile
Valore predefinito: la cartella a livello di data center
Il percorso relativo di una cartella vSphere che hai già creato. Questa cartella conterrà le VM del cluster amministrativo.
Se non specifichi un valore, le VM del cluster di amministrazione 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-folder"
In alternativa, il valore può essere un percorso relativo che include più di una cartella.
Esempio:
vCenter: folder: "folders/folder-1"
vCenter.dataDisk
Non fornire un valore per questo campo. Elimina il campo o lascialo commentato.
network
Obbligatorio
Immutabile
Questa sezione contiene informazioni sulla rete del cluster amministrativo.
network.hostConfig
Obbligatorio
Immutabile
Questa sezione contiene informazioni su server NTP, server DNS e domini di ricerca DNS utilizzati dalle VM corrispondenti ai nodi del cluster.
network.hostConfig.dnsServers
Obbligatorio se la sezione network.hostConfig
è compilata.
Array di stringhe
immutabile.
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 se la sezione network.hostConfig
è compilata.
Array di stringhe
non modificabile
Gli indirizzi dei server di ora da utilizzare per le VM.
Esempio:
network: hostConfig: ntpServers: - "216.239.35.0"
network.hostConfig.searchDomainsForDNS
Facoltativo
Impossibile modificare
Array di stringhe
I domini di ricerca DNS utilizzabili dalle VM. Questi domini vengono utilizzati come parte di un elenco di ricerca di domini.
Esempio:
network: hostConfig: searchDomainsForDNS: - "my.local.com"
network.ipMode.type
Obbligatorio
Immutabile
Stringa
Precompilato: "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 questa opzione su "static"
.
Esempio:
network: ipMode: type: "static"
network.ipMode.ipBlockFilePath
Obbligatorio se network.ipMode.type
= static
Stringa
non mutabile
Il percorso del file di blocco IP per il cluster.
Esempio:
network: ipMode: ipBlockFilePath: "/my-config-folder/admin-cluster-ipblock.yaml"
network.serviceCIDR
Obbligatorio
Impossibile modificare
Stringa
Intervallo minimo possibile: /24
Intervallo massimo possibile: /12
Precompilato: "10.96.232.0/24"
Valore predefinito: "10.96.232.0/24"
Un intervallo di indirizzi IP, in formato CIDR, da utilizzare per i servizi nel cluster.
Esempio:
network: serviceCIDR: "10.96.232.0/24"
network.podCIDR
Obbligatorio
Impossibile modificare
Stringa
Intervallo minimo possibile: /18
Intervallo massimo possibile: /8
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.
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 a nessun indirizzo esterno al cluster che vuoi raggiungere dall'interno del cluster.
Ad esempio, supponiamo che l'intervallo del servizio sia 10.96.232.0/24 e l'intervallo del pod sia 192.168.0.0/16. Qualsiasi traffico inviato da un pod a un indirizzo in uno di questi intervalli verrà considerato all'interno del cluster e non raggiungerà alcuna destinazione al di fuori del 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 l'intervallo del pod o del servizio contenga indirizzi IP esterni. Qualsiasi traffico inviato da un pod a uno di questi indirizzi esterni verrà trattato come traffico all'interno del cluster e non raggiungerà la destinazione esterna.
network.vCenter.networkName
Stringa
obbligatoria
non modificabile
Il nome della rete vSphere per i nodi del cluster.
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: "/data-centers/data-center-1/network/my-network"
network.controlPlaneIPBlock
Obbligatorio
network.controlPlaneIPBlock.netmask
Stringa
obbligatoria
non modificabile
La maschera di rete per la rete che contiene i nodi del piano di controllo.
Esempio:
network: controlPlaneIPBlock: netmask: "255.255.255.0"
network.controlPlaneIPBlock.gateway
Stringa
obbligatoria
non modificabile
L'indirizzo IP del gateway predefinito per i nodi del piano di controllo.
Esempio:
network: controlPlaneIPBlock: gateway: "172.16.22.1"
network.controlPlaneIPBlock.ips
Obbligatorio
Immutabile
Array di tre oggetti, ciascuno con un indirizzo IP e un nome host facoltativo.
Questi sono gli indirizzi IP che verranno assegnati ai nodi del piano di controllo.
Esempio:
network: controlPlaneIPBlock: ips: - ip: "172.16.22.6" hostname: "admin-cp-vm-1" - ip: "172.16.22.7" hostname: "admin-cp-vm-2" - ip: "172.16.22.8" hostname: "admin-cp-vm-3"
loadBalancer
Questa sezione contiene informazioni sul bilanciatore del carico per il cluster di amministrazione.
loadBalancer.vips.controlPlaneVIP
Stringa
obbligatoria
non modificabile
L'indirizzo IP che hai scelto di configurare sul bilanciatore del carico per il server API Kubernetes del cluster di amministrazione.
Esempio:
loadBalancer: vips: controlplaneVIP: "203.0.113.3"
loadBalancer.kind
1.30 e successive
Obbligatoria
Stringa
non mutabile
Precompilata: "MetalLB"
Stringa. Imposta "ManualLB"
o "MetalLB"
Per attivare funzionalità nuove e avanzate, 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.
Tieni presente le seguenti differenze rispetto alle versioni precedenti:
In 1.30 e versioni successive, il valore
"F5BigIP"
non è consentito per i nuovi cluster di amministrazione.In 1.28 e versioni successive, il valore
"Seesaw"
non è consentito per i nuovi cluster di amministrazione.
Se hai già un cluster che utilizza questi bilanciatori del carico, consulta le seguenti guide alla migrazione:
- Eseguire la migrazione della configurazione per F5 BIG-IP integrato
- Eseguire la migrazione dal bilanciatore del carico Seesaw a MetalLB
Esempio:
loadBalancer:
kind: "MetalLB"
1.28 e 1.29
Obbligatoria
Stringa
non mutabile
Precompilata: "MetalLB"
Stringa. Imposta questo valore su "ManualLB"
, "F5BigIP"
o "MetalLB"
Per attivare funzionalità nuove e avanzate, 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.
In 1.28 e versioni successive, il valore "Seesaw"
non è consentito per i nuovi cluster di amministrazione.
Se hai già un cluster che utilizza il bilanciatore del carico Seesaw, consulta
Eseguire la migrazione dal bilanciatore del carico Seesaw a MetalLB.
Esempio:
loadBalancer:
kind: "MetalLB"
1.16 e versioni precedenti
Obbligatoria
Stringa
non mutabile
Precompilata: "MetalLB"
Stringa. Imposta questo valore su "ManualLB"
, "F5BigIP"
, "Seesaw"
o "MetalLB"
Se imposti adminMaster.replicas
su 3
, non puoi utilizzare il bilanciatore del carico Seesaw.
Esempio:
loadBalancer:
kind: "MetalLB"
loadBalancer.manualLB
Se imposti loadbalancer.kind
su "ManualLB"
, compila questa sezione. In caso contrario,rimuovi questa sezione.
Impossibile modificarli
loadBalancer.manualLB.ingressHTTPNodePort
Rimuovi questo campo dal file di configurazione. Non viene utilizzato in un cluster amministrativo.
loadBalancer.manualLB.ingressHTTPSNodePort
Rimuovi questo campo dal file di configurazione. Non viene utilizzato in un cluster amministrativo.
loadBalancer.manualLB.konnectivityServerNodePort
Rimuovi questo campo dal file di configurazione. Non viene utilizzato in un cluster amministrativo.
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 amministrazione. Se la sezione loadBalancer.f5BigIP
è presente nel file di configurazione, rimuovila o mettila in commento.
Puoi comunque utilizzare il bilanciatore del carico BIG-IP di F5 con i nuovi cluster di amministrazione, ma la configurazione è diversa. Per i dettagli sulla configurazione, 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 a 1.29 o versioni successive, ti consigliamo di eseguire la migrazione al bilanciamento del carico manuale.
1,29
Se imposti loadbalancer.kind
su "f5BigIP"
, compila questa sezione.
In caso contrario, rimuovi questa sezione.
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 a 1.29 o versioni successive, ti consigliamo di eseguire la migrazione al bilanciamento del carico manuale.
1.28 e versioni precedenti
Se imposti loadbalancer.kind
su "f5BigIP"
, compila questa sezione.
In caso contrario, rimuovi questa sezione.
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.
loadBalancer.f5BigIP.address
1.30 e successive
Non consentito per i nuovi cluster
Obbligatorio se loadBalancer.kind
= "f5BigIp"
Stringa
non modificabile
L'indirizzo del bilanciatore del carico F5 BIG-IP. Ad esempio:
loadBalancer:
f5BigIP:
address: "203.0.113.2"
1.29 e versioni precedenti
Obbligatorio se loadBalancer.kind
= "f5BigIp"
Stringa
non mutabile
L'indirizzo del bilanciatore del carico F5 BIG-IP. Ad 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
mutabile
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 connettersi al bilanciatore del carico F5 BIG-IP.
L'account utente deve avere un ruolo utente con autorizzazioni sufficienti per configurare e gestire il bilanciatore del carico. È sufficiente il ruolo Amministratore o Amministratore delle risorse.
Puoi utilizzare gkectl update
per aggiornare questo campo in un cluster esistente.
Per informazioni su come aggiornare le credenziali F5 BIG-IP, consulta Aggiornare le credenziali del cluster.
Esempio:
loadBalancer:
f5BigIP:
credentials:
fileRef:
path: "my-config-folder/admin-creds.yaml"
1.29 e versioni precedenti
Obbligatorio se loadBalancer.kind
= "f5BigIp"
Stringa
mutabile
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 connettersi al bilanciatore del carico F5 BIG-IP.
L'account utente deve avere un ruolo utente con autorizzazioni sufficienti per configurare e gestire il bilanciatore del carico. È sufficiente il ruolo Amministratore o Amministratore delle risorse.
Puoi utilizzare gkectl update
per aggiornare questo campo in un cluster esistente.
Per informazioni su come aggiornare le credenziali F5 BIG-IP, consulta Aggiornare le credenziali del cluster.
Esempio:
loadBalancer:
f5BigIP:
credentials:
fileRef:
path: "my-config-folder/admin-creds.yaml"
loadBalancer.f5BigIP.credentialsfileRef.entry
1.30 e successive
Non consentito per i nuovi cluster
Obbligatorio se loadBalancer.kind
= "f5BigIp"
Stringa
mutabile
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.
Puoi utilizzare gkectl update
per aggiornare questo campo in un cluster esistente.
Per informazioni su come aggiornare le credenziali F5 BIG-IP, consulta Aggiornare le credenziali del cluster.
Esempio:
loadBalancer:
f5BigIP:
credentials:
fileRef:
entry: "f5-creds"
1.29 e versioni precedenti
Obbligatorio se loadBalancer.kind
= "f5BigIp"
Stringa
mutabile
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.
Puoi utilizzare gkectl update
per aggiornare questo campo in un cluster esistente.
Per informazioni su come aggiornare le credenziali F5 BIG-IP, consulta Aggiornare le credenziali del cluster.
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
non modificabile
Il nome di una partizione BIG-IP che hai creato per il cluster di amministrazione.
Esempio:
loadBalancer:
f5BigIP:
partition: "my-f5-admin-partition"
1.29 e versioni precedenti
Obbligatorio se loadBalancer.kind
= "f5BigIp"
Stringa
non mutabile
Il nome di una partizione BIG-IP che hai creato per il cluster di amministrazione.
Esempio:
loadBalancer:
f5BigIP:
partition: "my-f5-admin-partition"
loadBalancer.f5BigIP.snatPoolName
1.30 e successive
Non consentito per i nuovi cluster
Facoltativo
Rilevante se loadBalancer.kind
= "f5BigIp"
Stringa
invariabile
Se utilizzi SNAT, il nome del pool SNAT. Se non utilizzi SNAT, rimuovi questo campo.
Esempio:
loadBalancer:
f5BigIP:
snatPoolName: "my-snat-pool"
1.29 e versioni precedenti
Facoltativo
Risultato pertinente se loadBalancer.kind
= "f5BigIp"
Stringa
invariabile
Se utilizzi SNAT, il nome del pool SNAT. Se non utilizzi SNAT, rimuovi questo campo.
Esempio:
loadBalancer:
f5BigIP:
snatPoolName: "my-snat-pool"
loadBalancer.seesaw
Non utilizzare questa sezione. Il bilanciatore del carico Seesaw non è supportato per i nuovi cluster di amministrazione nella versione 1.28 e successive. Ti consigliamo invece di configurare il bilanciatore del carico MetalLB per i nuovi cluster di amministrazione. Per ulteriori informazioni sulla configurazione di MetalLB, consulta Bilanciamento del carico in bundle con MetalLB.
Sebbene supportiamo ancora Seesaw per i cluster di amministrazione non HA di cui è stato eseguito l'upgrade, ti consigliamo di eseguire la migrazione a MetalLB.
antiAffinityGroups.enabled
Facoltativo
Mutabile
Booleano
Precompilato: true
Imposta questo valore su true
per attivare la creazione di regole DRS. In caso contrario, impostalo su
false
.
Esempio:
antiAffinityGroups: enabled: true
Se questo campo è true
, Google Distributed Cloud crea regole anti-affinità Distributed Resource Scheduler (DRS) di VMware per i nodi del cluster di amministrazione, in modo che vengano distribuiti su almeno tre host ESXi fisici nel data center.
Questa funzionalità richiede che l'ambiente vSphere soddisfi le seguenti condizioni:
VMware DRS è abilitato. VMware DRS richiede la versione della licenza vSphere Enterprise Plus.
Il tuo account utente vSphere dispone del privilegio
Host.Inventory.Modify cluster
.Sono disponibili almeno quattro host ESXi.
Anche se la regola richiede che i nodi del cluster siano distribuiti su tre host ESXi, ti consigliamo vivamente di avere almeno quattro host ESXi disponibile. In questo modo, eviti di perdere il control plane del cluster amministrativo. Ad esempio, supponiamo che tu abbia solo tre host ESXi e che il nodo del piano di controllo del cluster di amministrazione si trovi su un host ESXi che non funziona. La regola DRS impedisce di posizionare il nodo del control plane su uno dei due host ESXi rimanenti.
Ricorda che se hai una licenza vSphere Standard, non puoi attivare 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
.
adminMaster
Immutabile
Impostazioni di configurazione per i nodi del piano di controllo nel cluster di amministrazione.
adminMaster.cpus
Anteprima
Facoltativo
Impossibile da modificare
Numero intero
Precompilato: 4
Valore predefinito: 4
Il numero di vCPU per ogni nodo del control plane nel cluster di amministrazione.
Esempio:
adminMaster: cpus: 4
adminMaster.memoryMB
Anteprima
Facoltativo
Invariabile
Intero
Precompilato: 16384
Valore predefinito: 16384
Il numero di mebibyte di memoria per ogni nodo del control plane nel cluster di amministrazione.
Esempio:
adminMaster: memoryMB: 16384
adminMaster.replicas
1.28 e successive
Obbligatorio per i nuovi cluster
Immutabile
Intero
Possibili valori: 3
Il numero di nodi del control plane nel cluster di amministrazione. In 1.28 e versioni successive,
i nuovi cluster di amministrazione devono essere ad alta disponibilità (HA). Imposta questo campo su 3
per creare un cluster di amministrazione HA con 3 nodi del control plane.
Esempio:
adminMaster:
replicas: 3
1.16 e versioni precedenti
Facoltativo
Invariabile
Numero intero
Valori possibili: 1 o 3
Precompilato: 1
Valore predefinito: 1
Il numero di nodi del control plane nel cluster di amministrazione. Imposta questo valore su 3
se
vuoi creare un cluster di amministrazione ad alta disponibilità. In caso contrario, impostalo su 1
.
Se imposti questo valore su 3
, devi compilare anche la sezione network.controlPlaneIPBlock
e la sezione network.hostConfig
.
Se imposti questo valore su 3
, non puoi utilizzare il bilanciatore del carico Seesaw.
Esempio:
adminMaster:
replicas: 3
proxy
Se la tua rete si trova dietro un server proxy, compila questa sezione. In caso contrario,rimuovi questa sezione o lasciala commentata. Il server proxy specificato
qui viene utilizzato dai cluster utente gestiti da questo cluster di amministrazione.
Immutabile
proxy.url
Obbligatorio se la sezione proxy
è compilata.
Stringa
invariabile
L'indirizzo HTTP del server proxy. Includi il numero di porta anche se è uguale a quello predefinito dello schema.
Esempio:
proxy: url: "http://my-proxy.example.local:80"
Il server proxy specificato qui viene utilizzato dai tuoi cluster Google Distributed Cloud. Inoltre, la workstation di amministrazione è configurata automaticamente per utilizzare lo stesso server proxy, a meno che non imposti la variabile di ambiente HTTPS_PROXY
sulla workstation di amministrazione.
Se specifichi proxy.url
, devi specificare anche proxy.noProxy
.
Una volta impostata, la configurazione del proxy per il cluster di amministrazione non può essere modificata o eliminata, a meno che il cluster non venga ricostruito.
proxy.noProxy
Stringa
invariabile
facultativa
Un elenco di indirizzi IP, intervalli di indirizzi IP, nomi host e nomi di dominio separati da virgole che non devono passare attraverso il server proxy. Quando Google Distributed Cloud invia una richiesta a uno di questi indirizzi, host o domini, la richiesta viene inviata direttamente.
Esempio:
proxy: noProxy: "10.151.222.0/24,my-host.example.local,10.151.2.1"
privateRegistry
Se hai un Container Registry privato, compila questa sezione. In caso contrario, rimuovi questa sezione o lasciala commentata.
privateRegistry.address
Obbligatorio per il registry privato
Stringa
invariabile
L'indirizzo IP o il FQDN (nome di dominio completo) della macchina che esegue il tuo registry privato.
Esempi:
privateRegistry: address: "203.0.113.10"
privateRegistry: address: "fqdn.example.com"
privateRegistry.credentials.fileRef.path
Obbligatorio per la stringa
mutabile del registry privato
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 privato.
Esempio:
privateRegistry: credentials: fileRef: path: "my-config-folder/admin-creds.yaml"
privateRegistry.credentials.fileRef.entry
Obbligatorio per la stringa
mutabile del registry privato
Il nome del blocco delle credenziali nel file di configurazione delle credenziali che contiene il nome utente e la password del tuo account registry privato.
privateRegistry: credentials: fileRef: entry: "private-registry-creds"
privateRegistry.caCertPath
Obbligatorio per la stringa
mutabile del registry privato
Quando il runtime del container estrae un'immagine dal tuo registry privato, il registry deve dimostrare la propria identità presentando un certificato. Il certificato del registry è firmato da un'autorità di certificazione (CA). Il runtime del contenitore utilizza il certificato della CA per convalidare il certificato del registry.
Imposta questo campo sul percorso del certificato della CA.
Esempio:
privateRegistry: caCertPath: "my-cert-folder/registry-ca.crt"
componentAccessServiceAccountKeyPath
Stringa
mutabile obbligatoria
Il percorso del file della chiave JSON per l'account di servizio di accesso del componente.
Esempio:
componentAccessServiceAccountKeyPath: "my-key-folder/access-key.json"
gkeConnect
Obbligatorio
Modificabile
Quando compili la sezione gkeConnect
, il cluster amministrativo viene registrato automaticamente in un parco risorse dopo la sua creazione. Questa sezione contiene informazioni sul progetto e sull'account di servizio Google Cloud necessari per registrare il cluster.
Durante la creazione o l'aggiornamento del cluster, nel cluster di amministrazione vengono configurati diversi criteri RBAC. Questi criteri RBAC sono necessari per consentirti di creare cluster di utenti nella console Google Cloud.
gkeConnect.projectID
Stringa
obbligatoria
non modificabile
L'ID del
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 sono uguali, la creazione del cluster non va a buon fine. Questo requisito non si applica ai cluster esistenti.
Esempio:
gkeConnect: projectID: "my-fleet-host-project"
gkeConnect.location
Facoltativo
Stringa
invariabile
Valore predefinito: global
L'appartenenza al parco risorse di ogni cluster è gestita dal servizio Fleet
(gkehub.googleapis.com
) e dal servizio Connect
(gkeconnect.googleapis.com
). La posizione 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 di amministrazione creati prima della versione 1.28 sono gestiti dai servizi globali Fleet e Connect.
Per i nuovi cluster, se includi questo campo, la regione specificata deve essere uguale a quella configurata in
cloudAuditLogging.clusterLocation
,stackdriver.clusterLocation
egkeOnPremAPI.location
. Se le regioni non sono uguali, la creazione del cluster non va a buon fine.
Esempio:
gkeConnect: location: "us-central1"
gkeConnect.registerServiceAccountKeyPath
Stringa
mutabile obbligatoria
Il percorso del file della chiave JSON per il tuo account di servizio connect-register.
Esempio:
gkeConnect: registerServiceAccountKeyPath: "my-key-folder/connect-register-key.json"
gkeOnPremAPI
In 1.16 e versioni successive, se l'API GKE On-Prem è abilitata nel progetto Google Cloud, tutti i cluster del progetto vengono registrati 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 seguire 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
sufalse
. Se non vuoi registrare cluster nel progetto, disattivagkeonprem.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 di amministrazione all'API GKE On-Prem ti consente di utilizzare strumenti standard, come la console Google Cloud, Google Cloud CLI o Terraform, per eseguire l'upgrade dei cluster utente gestiti dal cluster di amministrazione. La registrazione del cluster ti consente inoltre di eseguire comandi gcloud
per ottenere informazioni sui tuoi cluster.
Dopo aver aggiunto questa sezione e creato o aggiornato il cluster di amministrazione, se successivamente rimuovi la sezione e aggiorni il cluster, l'aggiornamento non andrà a buon fine.
gkeOnPremAPI.enabled
Obbligatorio se è inclusa la sezione gkeOnPremAPI
.
Booleano
mutabile
Valore predefinito: true
Per impostazione predefinita, il cluster è registrato nell'API GKE On-Prem se l'API GKE On-Prem è abilitata nel progetto. Imposta 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
Stringa
non mutabile
Valore predefinito:stackdriver.clusterLocation
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 cloudAuditLogging.clusterLocation
, gkeConnect.location
e stackdriver.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.
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 admin
.
Questa sezione è obbligatoria nel cluster di amministrazione se vuoi gestire il ciclo di vita dei cluster utente che utilizzano 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 in bucket di log di un altro progetto. Per informazioni su come configurare il router dei log, consulta la sezione 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 cloudAuditLogging.clusterLocation
, gkeConnect.location
e gkeOnPremAPI.location
. Se le regioni non sono uguali, la creazione del cluster non riesce.
Esempio:
stackdriver: clusterLocation: "us-central1"
stackdriver.enableVPC
Facoltativo
Immutabile
Booleano
Precompilato: false
Se la rete del cluster è controllata da un VPC, imposta questa opzione sutrue
.
In questo modo, tutta la telemetria viene inoltrata tramite gli indirizzi IP soggetti a limitazioni di Google.
In caso contrario, impostalo 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 informazioni su come aggiornare questo campo in un cluster esistente, consulta Rotazione delle chiavi degli account di servizio.
Esempio:
stackdriver: serviceAccountKeyPath: "my-key-folder/log-mon-key.json"
stackdriver.disableVsphereResourceMetrics
Facoltativo
Mutabile
Rilevante per il logging e il monitoraggio
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
.
Questa sezione è obbligatoria nel cluster di amministrazione se vuoi gestire il ciclo di vita dei cluster utente nella console Google Cloud.
Esempio:
stackdriver: disableVsphereResourceMetrics: true
cloudAuditLogging
Se vuoi integrare gli audit log del server API Kubernetes del tuo cluster con Cloud Audit Logs, compila questa sezione. In caso contrario, rimuovi questa sezione o lasciala commentata.
Mutabile
Questa sezione è obbligatoria nel cluster di amministrazione se vuoi gestire il ciclo di vita dei cluster utente nell'utilizzo dei client dell'API GKE On-Prem.
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 a quello 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 ai cluster esistenti.
Se necessario, puoi configurare un router dei log in questo progetto per instradare i log in bucket di log di 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
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 sono uguali, la creazione del cluster non va a buon fine.
Esempio:
cloudAuditLogging: clusterLocation: "us-central1"
cloudAuditLogging.serviceAccountKeyPath
Obbligatorio per Cloud Audit Logs
Stringa
mutabile
Il percorso del file della chiave JSON per l'account di servizio di registrazione degli audit.
Per informazioni su come aggiornare questo campo in un cluster esistente, consulta Rotazione delle chiavi degli account di servizio.
Esempio:
cloudAuditLogging: serviceAccountKeyPath: "my-key-folder/audit-log-key.json"
clusterBackup.datastore
Anteprima
Facoltativo
Stringa
mutabile
Se vuoi attivare il backup del cluster di amministrazione, impostalo sul datastore vSphere in cui vuoi salvare i backup del cluster.
Esempio:
clusterBackup: datastore: "my-datastore"
autoRepair.enabled
Facoltativo
Mutabile
Booleano
Precompilato: true
Imposta questo valore su true
per attivare la riparazione automatica dei nodi.
In caso contrario, impostalo su false
.
Per aggiornare il valore di questo campo, utilizza gkectl update admin
.
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 lasciala commentata.
Immutabile
secretsEncryption.mode
Obbligatorio per la crittografia dei secret
Stringa
non modificabile
Valore possibile: "GeneratedKey"
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 a tua scelta da utilizzare per il numero di versione della chiave. Ti consigliamo di iniziare con 1
.
Esempio:
secretsEncryption: generatedKey: keyVersion: 1
secretsEncryption.generatedKey.disabled
Facoltativo per la crittografia dei secret
Mutabile
Booleano
Precompilato: false
Imposta questo valore su true
per disattivare la crittografia dei secret. In caso contrario, impostalo su false
.
Esempio:
secretsEncryption: generatedKey: disabled: false
osImageType
Facoltativo
Mutevole
Stringa
Valori possibili: "ubuntu_containerd", "cos", "ubuntu_cgv2", "cos_cgv2"
Precompilato: "ubuntu_cgv2"
Valore predefinito: "ubuntu_containerd"
Il tipo di immagine del sistema operativo da eseguire sui nodi del cluster amministrativo.
Esempio:
osImageType: "cos"