Questo documento descrive i campi nel file di configurazione del cluster di amministrazione per Google Distributed Cloud versione 1.30 e successive.
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 quanto segue:
OUTPUT_FILENAME
: un percorso a tua scelta per il template generato. Se ometti questo flag,gkectl
denomina il fileadmin-cluster.yaml
e lo inserisce nella directory corrente.VERSION
: il numero di versione di Google Distributed Cloud. Ad esempio:gkectl create-config admin --gke-on-prem-version=1.32.100-gke.106
. Questa versione deve essere uguale o inferiore alla versionegkectl
. Se ometti questo flag, il modello di configurazione generato viene compilato con valori basati sulla patch 1.32 più recente.
Modello
Campi obbligatori e valori predefiniti
Se un campo è contrassegnato come Obbligatorio, il file di configurazione completato deve avere un valore compilato per il campo.
Se per un campo viene specificato un valore Predefinito, il cluster utilizzerà quel valore se non inserisci nulla nel campo. Puoi eseguire l'override di un valore predefinito inserendo un valore.
Se un campo non è contrassegnato come obbligatorio, è facoltativo. Puoi compilarlo se è pertinente per te, ma non è obbligatorio.
Compilare il file di configurazione
Nel file di configurazione, inserisci i valori dei campi come descritto nelle sezioni seguenti.
enableAdvancedCluster
1.32 e successive
Facoltativo
Modificabile (è consentito da false
a true
)
Booleano
Precompilato: true
Valore predefinito: true
Imposta enableAdvancedCluster
su false
se non vuoi abilitare il cluster avanzato quando crei un nuovo cluster. Quando questo flag è impostato su true
(cluster avanzato abilitato), il software Google Distributed Cloud esegue il deployment di controller che consentono un'architettura più estensibile. L'attivazione del cluster avanzato ti consente di accedere a
nuove funzionalità e capacità, come
i domini di topologia.
Questo campo è obbligatorio se
infraConfigFilePath
è configurato.
Assicurati di esaminare le differenze quando esegui cluster avanzati prima di attivare il cluster avanzato.
Per aggiornare un cluster esistente a un cluster avanzato, vedi Aggiornare un cluster a un cluster avanzato. Dopo l'aggiornamento al cluster avanzato, la disattivazione non è consentita.
1,31
Disponibile solo per i nuovi cluster
Anteprima
Facoltativo
Immutabile
Booleano
Precompilato: false
Predefinito: false
Imposta enableAdvancedClusters
su true
per abilitare il cluster avanzato durante la creazione di un nuovo cluster. Quando questo flag è abilitato, il software
Google Distributed Cloud sottostante esegue il deployment di controller che consentono un'architettura più
estensibile. L'attivazione del cluster avanzato ti consente di accedere a nuove
funzionalità e capacità, come i
domini di topologia.
Questo campo è obbligatorio se
infraConfigFilePath
è configurato.
1,30 e inferiore
Non disponibile.
name
(Facoltativo)
Stringa
Valore predefinito: un nome casuale che inizia con il prefisso "gke-admin-"
Un nome scelto da te per il cluster.
Esempio:
name: "my-admin-cluster"
bundlePath
Obbligatorio
Modificabile
Stringa
Il percorso del file del bundle Google Distributed Cloud.
Il file del bundle completo di Google Distributed Cloud contiene tutti i componenti di una determinata release di Google Distributed Cloud. Quando crei una workstation amministrativa, viene fornito un bundle 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
Se infraConfigFilePath
è configurato, rimuovi
questo campo.
Anteprima
Facoltativo
Immutabile
Booleano
Precompilato: false
Predefinito: false
Imposta questo valore su true
se vuoi utilizzare
credenziali preparate
nel cluster di amministrazione. In caso contrario, impostalo su false
o ometti il campo.
Esempio:
preparedSecrets: enabled: true
vCenter
Questa sezione contiene informazioni sull'ambiente vSphere e sulla connessione a vCenter Server.
Se infraConfigFilePath
è configurato,
rimuovi l'intera sezione. Altrimenti, questa sezione è obbligatoria e immutabile.
vCenter.address
Obbligatorio
Immutabile
Stringa
L'indirizzo IP o il nome host del server vCenter.
Per ulteriori informazioni, vedi Trovare l'indirizzo del server vCenter.
Esempi:
vCenter: address: "203.0.113.100"
vCenter: address: "my-vcenter-server.my-domain.example"
vCenter.datacenter
Obbligatorio
Immutabile
Stringa
Il percorso relativo di un data center vSphere.
Il valore specificato è relativo alla cartella principale denominata /
.
Se il data center si trova nella cartella radice, 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
Obbligatorio
Immutabile
Stringa
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
Obbligatorio
Immutabile
Stringa
Un pool di risorse vCenter per le VM del cluster di amministrazione.
Se vuoi utilizzare il pool di risorse predefinito, imposta questo valore su
VSPHERE_CLUSTER/Resources
.
Esempio:
vCenter: resourcePool: "my-vsphere-cluster/Resources"
Se vuoi utilizzare un pool di risorse che hai già creato, imposta questo valore 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 secondario 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
Immutabile
Stringa
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 campo
vCenter.datastore
è immutabile, tranne quando lo imposti su una stringa
vuota quando
migri un datastore a Storage Policy Based Management (SPBM).
vCenter.storagePolicyName
Obbligatorio se vCenter.datastore
non è specificato
Immutabile
Stringa
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 le norme di archiviazione.
Per saperne di più, consulta Configurare una policy 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
Obbligatorio
Modificabile
Stringa
Il percorso del certificato CA per il server vCenter.
Per saperne di più, consulta Ottenere il certificato CA di vCenter.
Per informazioni sull'aggiornamento di 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
Obbligatorio
Stringa
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 disporre del ruolo Amministratore o di 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 vCenter, vedi Aggiornamento delle credenziali del cluster.
Esempio:
vCenter: credentials: fileRef: path: "my-config-folder/admin-creds.yaml"
vCenter.credentials.fileRef.entry
Obbligatorio
Stringa
Il nome del blocco delle credenziali nel tuo 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 vCenter, vedi Aggiornamento delle credenziali del cluster.
Esempio:
vCenter: credentials: fileRef: entry: "vcenter-creds"
vCenter.folder
(Facoltativo)
Immutabile
Stringa
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 di amministrazione.
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 di amministrazione.
network.hostConfig
Questa sezione contiene informazioni su server NTP, server DNS e domini di ricerca DNS utilizzati dalle VM corrispondenti ai nodi del cluster.
Se infraConfigFilePath
è configurato,
rimuovi l'intera sezione. In caso contrario, questa sezione è obbligatoria e
immutabile.
network.hostConfig.dnsServers
Obbligatorio se la sezione network.hostConfig
è compilata.
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 se la sezione network.hostConfig
è compilata.
Immutabile
Array di stringhe
Gli indirizzi dei server di sincronizzazione dell'ora da utilizzare per le VM.
Esempio:
network: hostConfig: ntpServers: - "216.239.35.0"
network.hostConfig.searchDomainsForDNS
Facoltativo
Immutabile
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
Immutabile
Stringa
Precompilato: "statico"
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 indirizzi IP statici scelti da un elenco che fornisci, imposta questo valore su "static"
.
Nella maggior parte dei casi devi specificare static
perché devi sempre fornire indirizzi IP per i nodi del control plane del cluster di amministrazione. Il DHCP viene utilizzato solo per
fornire indirizzi IP nei seguenti casi:
Se
enableControlplaneV2
non è abilitato nei cluster utente, puoi utilizzare DHCP per i nodi del control plane del cluster utente, che si trovano nel cluster di amministrazione.Nella versione 1.16 e precedenti, i nodi aggiuntivi per i cluster di amministrazione non HA possono ottenere i propri indirizzi IP da DHCP. Nella versione 1.28 e successive, i cluster di amministrazione devono essere HA e non hanno nodi aggiuntivi.
Esempio:
network: ipMode: type: "static"
network.ipMode.ipBlockFilePath
Il percorso assoluto o relativo del file di blocco IP per il tuo cluster.
Se infraConfigFilePath
è configurato,
questo campo è obbligatorio.
Questo campo è obbligatorio anche nei seguenti casi:
Cluster di amministrazione non HA 1.16 e versioni precedenti: elenca gli indirizzi IP per il nodo del control plane e i nodi aggiuntivi in un file di blocco IP.
Cluster di amministrazione HA 1.16 e versioni precedenti: elenca gli indirizzi IP per i nodi aggiuntivi in un file di blocco IP.
Cluster utente kubeception 1.29 e versioni precedenti: elenca gli indirizzi IP per i nodi del control plane del cluster utente nel file di blocco IP del cluster di amministrazione.
Immutabile
Stringa
Esempio:
network: ipMode: ipBlockFilePath: "/my-config-folder/admin-cluster-ipblock.yaml"
network.serviceCIDR
Obbligatorio
Immutabile
Stringa
Intervallo più piccolo possibile: /24
Intervallo più grande possibile: /12
Precompilato: "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
Immutabile
Stringa
Intervallo più piccolo possibile: /18
Intervallo più grande possibile: /8
Precompilato: "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 indirizzi esterni al cluster che vuoi raggiungere dall'interno del cluster.
Ad esempio, supponiamo che l'intervallo di servizio sia 10.96.232.0/24 e l'intervallo di pod sia 192.168.0.0/16. Qualsiasi traffico inviato da un pod a un indirizzo in uno di questi intervalli verrà trattato come traffico in-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, dei server DNS e dei server NTP
Ti consigliamo di utilizzare intervalli di servizi e pod nello spazio di indirizzi RFC 1918.
Ecco un motivo per cui è consigliabile utilizzare gli indirizzi RFC 1918. Supponiamo che l'intervallo di pod o servizi contenga indirizzi IP esterni. Il traffico inviato da un pod a uno di questi indirizzi esterni verrà trattato come traffico in-cluster e non raggiungerà la destinazione esterna.
network.vCenter.networkName
Il nome della rete vSphere per i nodi del cluster.
Se infraConfigFilePath
è configurato,
rimuovi questo campo. In caso contrario, questo campo è obbligatorio e immutabile.
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 data center, puoi specificare un percorso completo.
Esempio:
network: vCenter: networkName: "/data-centers/data-center-1/network/my-network"
network.controlPlaneIPBlock
Informazioni di rete per i nodi del control plane del cluster di amministrazione.
Se infraConfigFilePath
è configurato,
rimuovi l'intera sezione. In caso contrario, questa sezione è obbligatoria e
immutabile.
network.controlPlaneIPBlock.netmask
Obbligatorio
Immutabile
Stringa
La maschera di rete per la rete che contiene i nodi del control plane.
Esempio:
network: controlPlaneIPBlock: netmask: "255.255.255.0"
network.controlPlaneIPBlock.gateway
Obbligatorio
Immutabile
Stringa
L'indirizzo IP del gateway predefinito per i nodi del control plane.
Esempio:
network: controlPlaneIPBlock: gateway: "172.16.22.1"
network.controlPlaneIPBlock.ips
Obbligatorio
Immutabile
Array di tre oggetti, ognuno dei quali ha un indirizzo IP e un nome host facoltativo.
Questi sono gli indirizzi IP che verranno assegnati ai nodi del control plane.
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"
infraConfigFilePath
1,31
La specifica di un percorso in questo campo attiva i domini di topologia.
Anteprima
Facoltativo
Stringa
Modificabile
Specifica il percorso completo del file di configurazione dell'infrastruttura vSphere.
Esempio:
infraConfigFilePath: "/my-config-folder/vsphere-infrastructure.yaml"
Oltre ad aggiungere il percorso, copia il file di configurazione dell'infrastruttura vSphere nella directory applicabile.
Se aggiungi un percorso a infraConfigFilePath
, devi apportare le seguenti modifiche ai file di configurazione del cluster di amministrazione e del cluster utente.
Modifiche al file di configurazione del cluster di amministrazione
Rimuovi quanto segue dal file di configurazione del cluster di amministrazione. Queste informazioni vengono configurate nel file di configurazione dell'infrastruttura vSphere per ogni dominio di topologia.
vCenter
: rimuovi l'intera sezionevCenter
.network.hostConfig
: rimuovi l'intera sezionenetwork.hostConfig
.network.vCenter.networkName
: rimuovi questo campo.
Apporta le seguenti modifiche al file di configurazione del cluster di amministrazione:
network.controlPlaneIPBlock
: rimuovi l'intera sezione. Specifica invece gli indirizzi IP per i nodi del control plane del cluster di amministrazione in un file di blocchi IP.preparedSecrets
: rimuovi questo campo. Le credenziali preparate non sono supportate quando i domini della topologia sono abilitati. Rimuovi questo campo.
I seguenti campi sono obbligatori:
enableAdvancedCluster
: imposta sutrue
.network.ipMode.ipBlockFilePath
: impostato sul percorso completo o relativo del file del blocco IP del cluster di amministrazione.loadBalancer.kind
: imposta su"ManualLB"
."ManualLB"
è l'unica opzione di bilanciamento del carico multi-subnet (livello 3) disponibile offerta da Google Distributed Cloud.
Modifiche al file di configurazione del cluster utente
Rimuovi quanto segue dal file di configurazione del cluster utente. Queste informazioni vengono configurate nel file di configurazione dell'infrastruttura vSphere per ogni dominio di topologia.
vCenter
: rimuovi l'intera sezionevCenter
.network.hostConfig
: rimuovi l'intera sezionenetwork.hostConfig
.network.vCenter.networkName
: rimuovi questo campo.masterNode.vsphere
: rimuovi l'intera sezione.nodePools[i].vsphere.datastore
enodePools[i].vsphere.storagePolicyName
: rimuovi questi campi.
Apporta le seguenti modifiche al file di configurazione del cluster utente:
network.controlPlaneIPBlock
: rimuovi l'intera sezione. Specifica invece gli indirizzi IP per i nodi del control plane del cluster di amministrazione in un file di blocchi IP.preparedSecrets
: rimuovi questo campo. Le credenziali preparate non sono supportate quando i domini della topologia sono abilitati.nodePools[i].vsphere.hostgroups
: rimuovi questo campo. L'affinità VM-host non è supportata quando sono abilitati i domini di topologia.multipleNetworkInterfaces
: imposta questo campo sufalse
. Le interfacce di rete multiple per i pod non sono supportate quando i domini di topologia sono abilitati.storage.vSphereCSIDisabled
: imposta questo campo sutrue
per disattivare il deployment dei componenti CSI vSphere
I seguenti campi sono obbligatori:
enableAdvancedCluster
: impostato sutrue
nel file di configurazione del cluster utente.network.ipMode.ipBlockFilePath
: impostato sul percorso completo o relativo del file del blocco IP del cluster utente.loadBalancer.kind
: imposta su"ManualLB"
."ManualLB"
è l'unica opzione di bilanciamento del carico multi-subnet (livello 3) disponibile offerta da Google Distributed Cloud.
1,30 e inferiore
Non disponibile.
loadBalancer
Questa sezione contiene informazioni sul bilanciatore del carico per il cluster di amministrazione.
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 di amministrazione.
Esempio:
loadBalancer: vips: controlplaneVIP: "203.0.113.3"
loadBalancer.kind
Specifica il tipo di bilanciatore del carico da utilizzare.
1.32 e successive
Obbligatorio
Immutabile
Stringa
Precompilato: "MetalLB"
Il tipo di bilanciatore del carico che puoi utilizzare dipende dal fatto che configurerai il cluster per utilizzare i domini di topologia. Si presume che il cluster utilizzi domini di topologia se è configurato il campo infraConfigFilePath
.
Con i domini di topologia, imposta questo valore su
"ManualLB"
. Devi configurare un bilanciatore del carico di terze parti (ad esempio F5 BIG-IP o Citrix) se vuoi utilizzare i domini di topologia.Domini senza topologia: imposta questo valore su
"ManualLB"
o"MetalLB"
. Utilizza"ManualLB"
se hai un bilanciatore del carico di terze parti o"MetalLB"
per la nostra soluzione in bundle.
Se enableAdvancedCluster
è impostato su true
(cluster avanzato abilitato), il tipo di bilanciatore del carico per
i nodi del control plane è determinato da
adminMaster.controlPlaneLoadBalancer
.
Esempio:
loadBalancer:
kind: "MetalLB"
1,31
Obbligatorio
Immutabile
Stringa
Precompilato: "MetalLB"
Il tipo di bilanciatore del carico che puoi utilizzare dipende dal fatto che configurerai il cluster per utilizzare i domini di topologia. Si presume che il cluster utilizzi domini di topologia se è configurato il campo infraConfigFilePath
.
Con i domini di topologia, imposta questo valore su
"ManualLB"
. Devi configurare un bilanciatore del carico di terze parti (ad esempio F5 BIG-IP o Citrix) se vuoi utilizzare i domini di topologia.Domini senza topologia: imposta questo valore su
"ManualLB"
o"MetalLB"
. Utilizza"ManualLB"
se hai un bilanciatore del carico di terze parti o"MetalLB"
per la nostra soluzione in bundle.
Esempio:
loadBalancer:
kind: "MetalLB"
1,30
Obbligatorio
Immutabile
Stringa
Precompilato: "MetalLB"
Imposta questo valore su "ManualLB"
o "MetalLB"
. Utilizza "ManualLB"
se hai un
bilanciatore del carico di terze parti (come F5 BIG-IP o Citrix) o "MetalLB"
per la nostra
soluzione in bundle.
Tieni presente le seguenti differenze rispetto alle versioni precedenti:
Nelle versioni 1.30 e successive, il valore
"F5BigIP"
non è consentito per i nuovi cluster amministrativi.Nelle versioni 1.28 e successive, il valore
"Seesaw"
non è consentito per i nuovi cluster amministrativi.
Se hai un cluster esistente che utilizza questi bilanciatori del carico, consulta Pianificare la migrazione del cluster alle funzionalità consigliate.
Esempio:
loadBalancer:
kind: "MetalLB"
1.29 e 1.28
Obbligatorio
Immutabile
Stringa
Precompilato: "MetalLB"
Imposta questo valore su "ManualLB"
, "F5BigIP"
o "MetalLB"
Per attivare funzionalità nuove e avanzate, ti consigliamo di utilizzare "ManualLB"
se hai un bilanciamento del carico di terze parti (ad esempio F5 BIG-IP o Citrix) o
"MetalLB"
per la nostra soluzione integrata.
Nelle versioni 1.28 e successive, il valore "Seesaw"
non è consentito per i nuovi cluster di amministrazione.
Se hai un cluster esistente che utilizza il bilanciatore del carico di Seesaw, consulta
Migrazione dal bilanciatore del carico di Seesaw a MetalLB.
Esempio:
loadBalancer:
kind: "MetalLB"
1.16 e versioni precedenti
Obbligatorio
Immutabile
Stringa
Precompilato: "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"
Quando crei cluster utente utilizzando la console Google Cloud , gcloud CLI o Terraform, il tipo di bilanciatore del carico per il cluster di amministrazione e i relativi cluster utente deve essere lo stesso. L'unica eccezione è se il
cluster di amministrazione utilizza Seesaw, i cluster utente possono utilizzare MetalLB. Se vuoi che i cluster di amministrazione e utente utilizzino diversi tipi di bilanciatori del carico, devi creare i cluster utente utilizzando lo strumento a riga di comando gkectl
.
loadBalancer.manualLB
Se imposti loadbalancer.kind
su "ManualLB"
, compila questa sezione. In caso contrario, rimuovi questa sezione.
Immutabile
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
Nella versione 1.30 e 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 commentala.
Puoi comunque utilizzare il bilanciatore del carico F5 BIG-IP con i nuovi cluster di amministrazione, ma la configurazione è diversa. Per i dettagli della configurazione, vedi Attivazione della modalità di bilanciamento del carico manuale.
Se un cluster esistente ha questa sezione configurata, gli upgrade alla versione 1.32 vengono bloccati. Prima di eseguire l'upgrade alla versione 1.32, devi eseguire la migrazione dei cluster alle funzionalità consigliate.
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 abilitare il bilanciamento del carico manuale, imposta loadbalancer.kind
su"ManualLB"
e compila la sezione loadBalancer.manualLB
. Per ulteriori informazioni, consulta Attivazione della modalità di bilanciamento del carico manuale.
Se hai un bilanciatore del carico F5-BIG-IP esistente e la configurazione del cluster utilizza questa sezione, dopo l'upgrade alla versione 1.29 o 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 abilitare il bilanciamento del carico manuale, imposta loadbalancer.kind
su"ManualLB"
e compila la sezione loadBalancer.manualLB
. Per ulteriori informazioni, consulta Attivazione della modalità di bilanciamento del carico manuale.
loadBalancer.f5BigIP.address
1.30 e successive
Non consentito per i nuovi cluster
Obbligatorio se loadBalancer.kind
= "F5BigIp"
Immutabile
Stringa
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"
Immutabile
Stringa
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"
Modificabile
Stringa
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 disporre di un ruolo utente con autorizzazioni sufficienti per configurare e gestire il bilanciamento del carico. È sufficiente il ruolo di amministratore o amministratore risorse.
Puoi utilizzare gkectl update
per aggiornare questo campo in un cluster esistente.
Per informazioni su come aggiornare le credenziali F5 BIG-IP, vedi Aggiornamento delle 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"
Modificabile
Stringa
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 disporre di un ruolo utente con autorizzazioni sufficienti per configurare e gestire il bilanciamento del carico. È sufficiente il ruolo di amministratore o amministratore risorse.
Puoi utilizzare gkectl update
per aggiornare questo campo in un cluster esistente.
Per informazioni su come aggiornare le credenziali F5 BIG-IP, vedi Aggiornamento delle 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"
Modificabile
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.
Puoi utilizzare gkectl update
per aggiornare questo campo in un cluster esistente.
Per informazioni su come aggiornare le credenziali F5 BIG-IP, vedi Aggiornamento delle credenziali del cluster.
Esempio:
loadBalancer:
f5BigIP:
credentials:
fileRef:
entry: "f5-creds"
1,29 e versioni precedenti
Obbligatorio se loadBalancer.kind
= "F5BigIp"
Modificabile
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.
Puoi utilizzare gkectl update
per aggiornare questo campo in un cluster esistente.
Per informazioni su come aggiornare le credenziali F5 BIG-IP, vedi Aggiornamento delle 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"
Immutabile
Stringa
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"
Immutabile
Stringa
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
Pertinente se loadBalancer.kind
= "F5BigIp"
Immutabile
Stringa
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)
Pertinente se loadBalancer.kind
= "F5BigIp"
Immutabile
Stringa
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)
(Modificabile)
(Booleano)
(Precompilato: true)
Imposta questo valore su true
per attivare la creazione di regole DRS. In caso contrario, imposta questo valore su
false
.
Se questo campo è true
, Google Distributed Cloud crea regole anti-affinità VMware
Distributed Resource Scheduler
(DRS) per i nodi del cluster di amministrazione, in modo da distribuirli
in almeno tre host ESXi fisici del data center.
Questa funzionalità richiede che l'ambiente vSphere soddisfi le seguenti condizioni:
VMware DRS è abilitato. VMware DRS richiede la 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 a disposizione almeno quattro host ESXi. In questo modo, non perderai il control plane del cluster di amministrazione. Ad esempio, supponiamo che tu abbia solo tre host ESXi e che il nodo del control plane del cluster di amministrazione si trovi su un host ESXi che non funziona. La regola DRS impedirà il posizionamento del nodo del control plane su uno dei due host ESXi rimanenti.
Ricorda che se hai una licenza vSphere Standard, non puoi abilitare VMware DRS.
Se non hai abilitato DRS o se non hai almeno quattro host in cui
è possibile pianificare le VM vSphere, imposta antiAffinityGroups.enabled
su false
.
Tieni presente la seguente limitazione relativa ai cluster avanzati:
Versione 1.31: se il campo
enableAdvancedCluster
ètrue
, le regole di anti-affinità non sono supportate nei cluster avanzati e devi impostareantiAffinityGroups.enabled
sufalse
.Versione 1.32: le regole di anti-affinità sono supportate sui cluster avanzati.
Esempio:
antiAffinityGroups: enabled: true
adminMaster
Immutable
Impostazioni di configurazione per i nodi del control plane nel cluster di amministrazione.
adminMaster.controlPlaneLoadBalancer
1.32 e successive
(Facoltativo) Includi questa sezione per specificare il tipo di bilanciatore del carico da utilizzare
per il traffico del control plane nel cluster di amministrazione. Includi
adminMaster.controlPlaneLoadBalancer.mode
nel file di configurazione
se vuoi impostare esplicitamente il tipo di bilanciatore del carico da utilizzare anziché
affidarti al valore predefinito. Inoltre, devi impostare
loadBalancer.kind
nel file di configurazione
anche se il campo è un'operazione no-op nella versione 1.32 e successive.
adminMaster.controlPlaneLoadBalancer.mode
(Facoltativo)
(Immutabile)
(Stringa)
(Predefinito: dipende dal fatto che il cluster utilizzi domini di topologia)
Il tipo di bilanciatore del carico che puoi utilizzare dipende dal fatto che configurerai il cluster per utilizzare i domini di topologia. Si presume che il cluster utilizzi domini di topologia se è configurato il campo infraConfigFilePath
.
Con i domini di topologia: specifica
"manual"
, che è il valore predefinito. Se vuoi utilizzare i domini di topologia, devi configurare un bilanciatore del carico di terze parti (ad esempio F5 BIG-IP o Citrix).Senza domini di topologia: specifica
"manual"
o"bundled"
. Utilizza"manual"
se hai un bilanciatore del carico di terze parti o"bundled"
per la nostra soluzione in bundle, che utilizza keepalived + haproxy in esecuzione sui tre nodi del control plane del cluster di amministrazione. Il valore predefinito è "bundled"
.
Esempio:
adminMaster:
controlPlaneLoadBalancer:
mode: "manual"
1.31 e versioni precedenti
Questa sezione non è disponibile. Utilizza invece
loadBalancer.kind
per specificare il tipo di
bilanciatore del carico da utilizzare per il cluster di amministrazione.
adminMaster.cpus
Anteprima
Facoltativo
Immutabile
Numero intero
Precompilato: 4
Predefinito: 4
Il numero di vCPU per ciascun nodo del control plane nel cluster di amministrazione.
Esempio:
adminMaster: cpus: 4
adminMaster.memoryMB
Anteprima
Facoltativo
Immutabile
Numero intero
Precompilato: 16384
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
Numero intero
Valori possibili: 3
Il numero di nodi del control plane nel cluster di amministrazione. Nelle versioni 1.28 e 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)
(Immutabile)
(Numero intero)
(Valori possibili: 1 o 3)
(Precompilato: 1)
(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
adminMaster.topologyDomains
1.32 e successive
Anteprima
Facoltativo
Array di stringhe | Consente un elemento o tre elementi diversi
Immutabile
Predefinito: vSphereInfraConfig.defaultTopologyDomain
se specificato nel
file di configurazione dell'infrastruttura vSphere
Un array di domini di topologia. Se
infraConfigFilePath
è configurato
(il che indica che il cluster utilizzerà
domini di topologia), includi facoltativamente
questo campo. Il numero di domini di topologia nell'array determina
la modalità di deployment dei nodi del control plane del cluster di amministrazione, come segue:
- Un elemento: tutti e tre i nodi del control plane del cluster di amministrazione verranno implementati nel dominio di topologia specificato.
- Tre elementi: ogni nodo del control plane del cluster di amministrazione verrà sottoposto a deployment in un dominio di topologia diverso (ovvero un nodo per dominio di topologia).
1.31 e successive
Disponibile solo per i nuovi cluster
Anteprima
Array di stringhe | Consente un solo elemento
Facoltativo
Immutabile
Predefinito: vSphereInfraConfig.defaultTopologyDomain
se specificato nel
file di configurazione dell'infrastruttura vSphere
Un array di domini di topologia. Se
infraConfigFilePath
è configurato
(il che indica che il cluster utilizzerà
domini di topologia), includi facoltativamente
questo campo. I nodi del control plane del cluster di amministrazione verranno sottoposti a deployment nel dominio di topologia specificato.
1,30 e inferiore
Non disponibile.
addonNode.autoResize.enabled
1.28 e successive
Non includere questa impostazione nel file di configurazione quando crei un nuovo cluster. I cluster di amministrazione creati nella versione 1.28 e successive devono essere ad alta disponibilità (HA) con tre nodi del control plane. Nella versione 1.28 e successive, i cluster di amministrazione ad alta disponibilità non hanno nodi aggiuntivi.
1.16 e versioni precedenti
Facoltativo
Modificabile
Booleano
Precompilato: false
Valore predefinito: false
Imposta questo valore su true
per abilitare il ridimensionamento automatico dei nodi del componente aggiuntivo nel cluster di amministrazione. In caso contrario, impostalo su false
.
Per aggiornare il valore di questo campo, utilizza gkectl update admin
.
Esempio:
addonNode:
autoResize:
enabled: true
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.
Immutabile
Stringa
L'indirizzo HTTP del server proxy. Includi il numero di porta anche se è lo stesso della porta predefinita dello schema.
Esempio:
proxy: url: "http://my-proxy.example.local:80"
Il server proxy specificato qui viene utilizzato dai cluster Google Distributed Cloud. Inoltre, la workstation amministrativa viene configurata automaticamente per utilizzare questo
stesso server proxy, a meno che tu non imposti la variabile di ambiente HTTPS_PROXY
sulla
workstation amministrativa.
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 ricreato.
proxy.noProxy
(Facoltativo)
(Immutabile)
Stringa
Un elenco separato da virgole di indirizzi IP, intervalli di indirizzi IP, nomi host e nomi di dominio 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
Un registro di container
privato
è un registro in cui l'accesso alle immagini container è limitato agli
utenti autenticati. Compila questa sezione se i tuoi cluster utente devono
accedere alle immagini dei workload. Quando configuri la sezione privateRegistry
, tutti i cluster utente gestiti da questo cluster di amministrazione estraggono le immagini dei workload dal registro privato che configuri qui.
Se configuri la sezione privateRegistry
, quando esegui gkectl prepare
prima della creazione o dell'upgrade del cluster, gkectl
esegue il push delle immagini di sistema Google Distributed Cloud
nel registro privato. Durante la creazione o l'upgrade del cluster,
le immagini di sistema vengono estratte dal registro privato. Se non configuri la sezione
privateRegistry
, le immagini di sistema vengono estratte da
gcr.io/gke-on-prem-release
utilizzando l'account di servizio di accesso ai componenti.
Potresti voler configurare la sezione privateRegistry
in modo che i cluster estraggano
le immagini di sistema dal registro privato anziché da gcr.io/gke-on-prem-release
nei seguenti casi:
- Devi ridurre al minimo le connessioni a Google Cloud per motivi di sicurezza o requisiti normativi.
- La tua organizzazione richiede che il traffico in uscita passi attraverso un server proxy e la velocità di rete per connettersi a Google Cloud è lenta.
Se vuoi utilizzare Artifact Registry di Google come registro privato, consulta Utilizzare Artifact Registry come registro privato per le immagini dei workload per i passaggi di configurazione.
privateRegistry.address
Obbligatorio per il registro privato
Immutabile
Stringa
L'indirizzo IP o il nome di dominio completo (FQDN) della macchina che esegue il tuo registro privato.
Esempi:
privateRegistry: address: "203.0.113.10"
privateRegistry: address: "fqdn.example.com"
privateRegistry.credentials.fileRef.path
Obbligatorio per il registro privato
Modificabile
Stringa
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 registro privato.
Esempio:
privateRegistry: credentials: fileRef: path: "my-config-folder/admin-creds.yaml"
privateRegistry.credentials.fileRef.entry
Obbligatorio per il registro privato
Modificabile
Stringa
Il nome del blocco delle credenziali nel tuo file di configurazione delle credenziali, che contiene il nome utente e la password del tuo account del registro privato.
privateRegistry: credentials: fileRef: entry: "private-registry-creds"
privateRegistry.caCertPath
Obbligatorio per il registro privato
Modificabile
Stringa
Quando il runtime del container estrae un'immagine dal tuo registro privato, il registro deve dimostrare la sua identità presentando un certificato. Il certificato del registro è firmato da un'autorità di certificazione (CA). Il runtime del container utilizza il certificato della CA per convalidare il certificato del registro.
Imposta questo campo sul percorso del certificato della CA.
Esempio:
privateRegistry: caCertPath: "my-cert-folder/registry-ca.crt"
componentAccessServiceAccountKeyPath
Obbligatorio
Modificabile
Stringa
Il percorso del file della chiave JSON per l'account di servizio di accesso ai componenti.
Esempio:
componentAccessServiceAccountKeyPath: "my-key-folder/access-key.json"
gkeConnect
Obbligatorio
Modificabile
Quando compili la sezione gkeConnect
, il cluster di amministrazione viene registrato automaticamente in un parco risorse dopo la creazione. Questa sezione contiene informazioni sul progetto e sull'account di servizio necessari per registrare il cluster. Google Cloud
Durante la creazione o l'aggiornamento del cluster, nel cluster di amministrazione vengono configurati diversi criteri RBAC. Questi criteri RBAC sono necessari per poter creare cluster utente nella console Google Cloud .
gkeConnect.projectID
Obbligatorio
Immutabile
Stringa
L'ID del tuo
progetto host del parco risorse.
Per i nuovi cluster, questo ID progetto deve corrispondere all'ID impostato in
stackdriver.projectID
e cloudAuditLogging.projectID
. Se gli ID progetto
non sono uguali, la creazione del cluster non riesce. Questo requisito non viene applicato ai cluster esistenti.
Esempio:
gkeConnect: projectID: "my-fleet-host-project"
gkeConnect.location
Facoltativo
Immutabile
Stringa
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. Nella versione 1.28 e successive, puoi specificare facoltativamente la regione in cui vengono eseguiti i servizi Fleet e Connect. Google CloudSe 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 la stessa 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
Obbligatorio
Modificabile
Stringa
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
Facoltativo
Nelle versioni 1.16 e successive, se l'API GKE On-Prem è abilitata nel tuo progettoGoogle Cloud , tutti i cluster del progetto vengono registrati automaticamente nell'API GKE On-Prem nella regione configurata in stackdriver.clusterLocation
.
Se vuoi registrare tutti i cluster del progetto nell'API GKE On-Prem, assicurati di eseguire 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, disabilitagkeonprem.googleapis.com
(il nome del servizio per l'API GKE On-Prem) nel progetto. Per istruzioni, vedi Disattivare i servizi.
La registrazione del cluster di amministrazione all'API GKE On-Prem ti consente di utilizzare strumenti standard, ovvero la console, Google Cloud CLI o Terraform, per eseguire l'upgrade dei cluster utente gestiti dal cluster di amministrazione. Google Cloud La registrazione del cluster ti consente anche 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
.
Mutable
Boolean
Predefinito: true
Per impostazione predefinita, il cluster viene registrato nell'API GKE On-Prem se questa è abilitata nel tuo progetto. Imposta false
se non vuoi registrare il cluster.
Dopo aver registrato il cluster nell'API GKE On-Prem, se devi annullare la registrazione, apporta la seguente modifica e poi aggiorna il cluster:
gkeOnPremAPI: enabled: false
gkeOnPremAPI.location
Immutabile
Stringa
Predefinito:stackdriver.clusterLocation
La regione Google Cloud in cui l'API GKE On-Prem viene eseguita e archivia
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
Modificabile
Se vuoi abilitare Cloud Logging e Cloud Monitoring per il tuo cluster, compila questa sezione. In caso contrario, rimuovi questa sezione.
Questa sezione è obbligatoria per impostazione predefinita. ovvero, 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 utilizzando i client API GKE On-Prem.
stackdriver.projectID
Obbligatorio per Logging e Monitoring
Immutabile
Stringa
L'ID del tuo
progetto host del parco risorse.
Per i nuovi cluster, questo ID progetto deve corrispondere all'ID impostato in
gkeConnect.projectID
e cloudAuditLogging.projectID
. Se gli ID progetto
non sono uguali, la creazione del cluster non riesce. Questo requisito non viene applicato ai cluster esistenti.
Se necessario, puoi configurare un router dei log in questo progetto per instradare i log nei bucket di log di un altro progetto. Per informazioni su come configurare il router di log, vedi Destinazioni supportate.
Esempio:
stackdriver: projectID: "my-fleet-host-project"
stackdriver.clusterLocation
Obbligatorio per Logging e Monitoring
Immutabile
Stringa
Precompilato: "us-central1"
La regione Google Cloud in cui vuoi instradare e archiviare le metriche di Cloud Monitoring. Ti consigliamo di scegliere una regione vicina al tuo data center on-premise.
Specifichi il routing e la posizione di archiviazione dei log di Cloud Logging nella configurazione del router dei log. Per saperne di più sul routing dei log, consulta la panoramica su routing e archiviazione.
L'operatore Stackdriver (stackdriver-operator
) associa il valore di questo
campo a ogni voce di log e metrica prima che vengano indirizzate a Google Cloud. Queste
etichette allegate possono essere utili per filtrare i log e le metriche rispettivamente in
Esplora log eMetrics Explorerhe.
Per i nuovi cluster, se includi le sezioni gkeOnPremAPI
e cloudAuditLogging
nel file di configurazione, la regione che imposti qui deve essere
la stessa che imposti in cloudAuditLogging.clusterLocation
,
gkeConnect.location
e gkeOnPremAPI.location
. Se le regioni non sono
le stesse, la creazione del cluster non va a buon fine.
Esempio:
stackdriver: clusterLocation: "us-central1"
stackdriver.enableVPC
(Facoltativo)
(Immutabile)
(Booleano)
(Precompilato: false)
Se la rete del cluster è controllata da un VPC, imposta questo valore sutrue
.
In questo modo, tutti i dati di telemetria vengono trasmessi tramite gli indirizzi IP con limitazioni di Google.
In caso contrario, imposta questo valore su false
.
Esempio:
stackdriver: enableVPC: false
stackdriver.serviceAccountKeyPath
Obbligatorio per logging e monitoraggio
Modificabile
Stringa
Il percorso del file della chiave JSON per l'account di servizio di logging e monitoraggio.
Se creerai il cluster con
enableAdvancedCluster
impostato su true
(obbligatorio per
configurare i domini di topologia),
stackdriver.serviceAccountKeyPath
deve essere uguale a
cloudAuditLogging.serviceAccountKeyPath
.
Per informazioni su come aggiornare questo campo in un cluster esistente, consulta Rotazione account di servizio account.
Esempio:
stackdriver: serviceAccountKeyPath: "my-key-folder/log-mon-key.json"
stackdriver.disableVsphereResourceMetrics
Facoltativo
Modificabile
Pertinente per il logging e il monitoraggio
Booleano
Precompilato: false
Predefinito: false
Imposta questo valore su true
per disabilitare la raccolta di metriche da vSphere.
In caso contrario, impostalo su false
.
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.
Modificabile
Questa sezione è obbligatoria nel cluster di amministrazione se vuoi gestire il ciclo di vita dei cluster utente utilizzando i client API GKE On-Prem.
cloudAuditLogging.projectID
Obbligatorio per Cloud Audit Logs
Immutabile
Stringa
L'ID del tuo progetto host del parco risorse.
Per i nuovi cluster, questo ID progetto deve corrispondere all'ID impostato in
gkeConnect.projecID
e stackdriver.projectID
. Se gli ID progetto
non sono uguali, la creazione del cluster non riesce. Questo requisito non viene applicato ai cluster esistenti.
Se necessario, puoi configurare un router dei log in questo progetto per instradare i log nei bucket di log di un altro progetto. Per informazioni su come configurare il router di log, vedi 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. È 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 che imposti qui deve essere
la stessa che imposti in gkeConnect.location
, gkeOnPremAPI.location
e stackdriver.clusterLocation
. Se le regioni non sono le stesse, la creazione del cluster non va a buon fine.
Esempio:
cloudAuditLogging: clusterLocation: "us-central1"
cloudAuditLogging.serviceAccountKeyPath
Obbligatorio per Cloud Audit Logs
Modificabile
Stringa
Il percorso del file della chiave JSON per l'account di servizio di audit logging.
Se creerai il cluster con
enableAdvancedCluster
impostato su true
(obbligatorio per
configurare i domini di topologia),
cloudAuditLogging.serviceAccountKeyPath
deve essere uguale a
stackdriver.serviceAccountKeyPath
.
Per informazioni su come aggiornare questo campo in un cluster esistente, consulta Rotazione account di servizio account.
Esempio:
cloudAuditLogging: serviceAccountKeyPath: "my-key-folder/audit-log-key.json"
clusterBackup.datastore
Anteprima
Facoltativo
Modificabile
Stringa
Se vuoi abilitare il backup del cluster di amministrazione, imposta questo valore sul datastore vSphere in cui vuoi salvare i backup del cluster.
Se creerai il cluster con
enableAdvancedCluster
impostato su true
(obbligatorio per
configurare i domini di topologia),
rimuovi questa sezione. Il backup del cluster di amministrazione in un
datastore vSphere non è supportato.
Esempio:
clusterBackup: datastore: "my-datastore"
autoRepair.enabled
(Facoltativo)
(Modificabile)
(Booleano)
(Precompilato: true)
Imposta questo valore su true
per abilitare la riparazione automatica dei nodi.
In caso contrario, imposta questo valore 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 di altre dipendenze, compila questa sezione.
In caso contrario, rimuovi questa sezione o lasciala commentata.
Immutabile
Se creerai il cluster con
enableAdvancedCluster
impostato su true
(obbligatorio per
configurare i domini di topologia),
rimuovi questa sezione. Questa funzionalità non è supportata con i cluster avanzati.
secretsEncryption.mode
Obbligatorio per la crittografia dei secret
Immutabile
Stringa
Valore possibile: "GeneratedKey"
Precompilato: "GeneratedKey"
La modalità di crittografia Secret.
secretsEncryption: mode: "GeneratedKey"
secretsEncryption.generatedKey.keyVersion
Obbligatorio per la crittografia dei secret
Modificabile
Numero 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
Modificabile
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
Modificabile
Stringa
Valori possibili: "ubuntu_containerd", "cos", "ubuntu_cgv2", "cos_cgv2"
Precompilato: "ubuntu_cgv2"
Predefinito: "ubuntu_containerd"
Il tipo di immagine del sistema operativo da eseguire sui nodi del cluster di amministrazione.
Tieni presente la seguente limitazione relativa ai cluster avanzati:
Versione 1.31: se il campo
enableAdvancedCluster
ètrue
, sono supportati soloubuntu-cgroupv2
eubuntu_containerd
sui cluster avanzati.Versione 1.32: tutti i tipi di immagini del sistema operativo sono supportati nei cluster avanzati.
Esempio:
osImageType: "cos"