Questo documento descrive i campi del file di configurazione del cluster di amministrazione per la versione 1.29 di Google Distributed Cloud.
Generare un modello per il file di configurazione
Se hai utilizzato gkeadm
per creare la workstation di amministrazione, gkeadm
ha generato un modello per il file di configurazione del cluster di amministrazione. Inoltre, gkeadm
ha compilato
alcuni campi per te.
Se non hai utilizzato gkeadm
per creare la tua workstation di amministrazione, puoi utilizzare gkectl
per generare un modello per il file di configurazione del cluster 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 un percorso a tua scelta per
il modello generato. Se ometti questo flag, gkectl
assegna il nome admin-cluster.yaml
al file e lo inserisce nella directory attuale.
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.100-gke.248
.
Questa versione deve essere uguale o inferiore alla tua versione di gkectl
. Se ometti questo flag, il modello di configurazione generato viene compilato con valori basati sulla patch 1.29 più recente.
Modello
Compilazione del file di configurazione in corso...
Nel file di configurazione, inserisci i valori dei campi come descritto nelle sezioni seguenti.
name
Facoltativo
Stringa
Predefinito: un nome casuale con prefisso "gke-admin-"
Un nome a tua scelta per il cluster.
Esempio:
name: "my-admin-cluster"
bundlePath
Stringa
Modificabile
Obbligatoria
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 di amministrazione, questa viene fornita con 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
Anteprima
Facoltativo
Immutabile
Booleano
Precompilato: false
Predefinito: false
Imposta questa opzione su true
se vuoi utilizzare le credenziali preparate nel cluster di amministrazione. In caso contrario, impostala su false
.
Esempio:
preparedSecrets: enabled: true
vCenter
Obbligatorio
Immutabile
Questa sezione contiene informazioni sull'ambiente vSphere e sulla connessione a vCenter Server.
vCenter.address
Stringa
immutabile
obbligatoria
L'indirizzo IP o il nome host del tuo server vCenter.
Per ulteriori informazioni, consulta Ricerca dell'indirizzo del server vCenter.
Esempi:
vCenter: address: "203.0.113.100"
vCenter: address: "my-vcenter-server.my-domain.example"
vCenter.datacenter
Stringa
immutabile
obbligatoria
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
immutabile
obbligatoria
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 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
immutabile
obbligatoria
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 che hai 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 figlio 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
Stringa
immutabile
obbligatoria
Il nome di un datastore vSphere per il tuo cluster di amministrazione.
Il valore specificato deve essere un nome, non un percorso. Non includere cartelle nel valore.
Esempio:
vCenter: datastore: "my-datastore"
Se specifichi un valore per questo campo, non specificare un valore per vCenter.storagePolicyName
.
vCenter.storagePolicyName
Stringa
facoltativa
Il nome di un criterio di archiviazione VM per i nodi del cluster.
Il cluster di amministrazione deve essere ad alta disponibilità per funzionare con il criterio di archiviazione.
Per ulteriori informazioni, consulta Configurare un criterio di archiviazione.
Se specifichi un valore per questo campo, non specificare un valore per vCenter.datastore
.
vCenter.caCertPath
Stringa
Modificabile
Obbligatoria
Il percorso del certificato CA per il server vCenter.
Per ulteriori informazioni, vedi Ottenere il certificato CA vCenter.
Per informazioni sull'aggiornamento di questo campo per un cluster esistente, consulta Aggiornamento dei riferimenti dei 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 di 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 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 vCenter, consulta Aggiornamento delle credenziali del cluster.
Esempio:
vCenter: credentials: fileRef: entry: "vcenter-creds"
vCenter.folder
Facoltativo
Immutabile
Stringa
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 specificare un valore per questo campo. Elimina il campo o lascialo senza commenti.
network
Obbligatorio
Immutabile
Questa sezione contiene informazioni sulla rete del cluster di amministrazione.
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 viene compilata la sezione network.hostConfig
.
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 viene compilata la sezione network.hostConfig
.
Immutabile
Array di stringhe
Gli indirizzi dei server di tempo che le VM devono utilizzare.
Esempio:
network: hostConfig: ntpServers: - "216.239.35.0"
network.hostConfig.searchDomainsForDNS
Facoltativo
Immutabile
Array di stringhe
Domini di ricerca DNS che le VM possono utilizzare. 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: "statico"
Predefinito: "dhcp"
Se vuoi che i nodi del cluster ricevano l'indirizzo IP da un server DHCP, impostalo su "dhcp"
. Se vuoi che i nodi del cluster abbiano indirizzi IP statici scelti da un elenco da te fornito, impostalo su "static"
.
Esempio:
network: ipMode: type: "static"
network.ipMode.ipBlockFilePath
Obbligatorio se network.ipMode.type
= static
immutabile
Stringa
Il percorso del file dei blocchi IP per il tuo cluster.
Esempio:
network: ipMode: ipBlockFilePath: "/my-config-folder/admin-cluster-ipblock.yaml"
network.serviceCIDR
Obbligatorio
Immutabile
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
Immutabile
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 ad alcun indirizzo esterno al cluster che vuoi raggiungere dall'interno del cluster.
Ad esempio, supponiamo che l'intervallo di servizi sia 10.96.232.0/24 e l'intervallo di pod sia 192.168.0.0/16. Tutto il traffico inviato da un pod a un indirizzo in uno di questi intervalli verrà considerato nel cluster e non raggiungerà alcuna destinazione esterna al cluster.
In particolare, gli intervalli di servizi e pod non devono sovrapporsi a:
Indirizzi IP dei nodi in qualsiasi cluster
Indirizzi IP utilizzati dalle macchine dei bilanciatori del carico
VIP utilizzati dai nodi del piano di controllo e dai bilanciatori del carico
Indirizzo IP di server vCenter, server DNS e server NTP
Ti consigliamo di inserire gli intervalli di servizi e pod nello spazio di indirizzi RFC 1918.
Ecco uno dei motivi per cui si consiglia di utilizzare indirizzi RFC 1918. Supponiamo che il tuo intervallo di pod o servizi contenga indirizzi IP esterni. Tutto il traffico inviato da un pod a uno di questi indirizzi esterni verrà trattato come traffico nel cluster e non raggiungerà la destinazione esterna.
network.vCenter.networkName
Stringa
immutabile
obbligatoria
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 di 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
immutabile
obbligatoria
La netmask per la rete che contiene i nodi del piano di controllo.
Esempio:
network: controlPlaneIPBlock: netmask: "255.255.255.0"
network.controlPlaneIPBlock.gateway
Stringa
immutabile
obbligatoria
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, ognuno dei quali ha un indirizzo IP e un 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
immutabile
obbligatoria
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
Obbligatorio
Immutabile
Stringa
Precompilato: "MetalLB"
Stringa. Imposta questo elemento 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 (come F5 BIG-IP o Citrix) o
"MetalLB"
per la nostra soluzione in bundle.
Esempio:
loadBalancer: kind: "MetalLB"
loadBalancer.manualLB
Se imposti loadbalancer.kind
su "ManualLB"
, compila questa sezione. In caso contrario, rimuovi questa sezione.
Immutabile
loadBalancer.manualLB.ingressHTTPNodePort
Rimuovi questo campo dal file di configurazione. Non viene utilizzato in un cluster di amministrazione.
loadBalancer.manualLB.ingressHTTPSNodePort
Rimuovi questo campo dal file di configurazione. Non viene utilizzato in un cluster di amministrazione.
loadBalancer.manualLB.konnectivityServerNodePort
Rimuovi questo campo dal file di configurazione. Non viene utilizzato in un cluster di amministrazione.
loadBalancer.f5BigIP
Se imposti loadbalancer.kind
su "f5BigIP"
, compila questa sezione. In caso contrario, rimuovi questa sezione.
Per abilitare 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 maggiori
informazioni, consulta
Attivazione della modalità di bilanciamento del carico manuale.
Se disponi già di un bilanciatore del carico F5-BIG-IP e la configurazione del cluster utilizza questa sezione, dopo aver eseguito l'upgrade alla versione 1.29 o successiva, ti consigliamo di eseguire la migrazione al bilanciamento del carico manuale.
loadBalancer.f5BigIP.address
Obbligatorio se loadBalancer.kind
= "f5BigIp"
immutabile
Stringa
L'indirizzo del bilanciatore del carico BIG-IP di F5. Ad esempio:
loadBalancer: f5BigIP: address: "203.0.113.2"
loadBalancer.f5BigIP.credentials.fileRef.path
Obbligatorio se loadBalancer.kind
= "f5BigIp"
Modificabile
Stringa
Il percorso di un file di configurazione delle credenziali contenente il nome utente e la password di un account che Google Distributed Cloud può utilizzare per connettersi al tuo 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 di risorse.
Puoi utilizzare gkectl update
per aggiornare questo campo in un cluster esistente.
Per informazioni su come aggiornare le credenziali BIG-IP di F5, consulta Aggiornare le credenziali del cluster.
Esempio:
loadBalancer: f5BigIP: credentials: fileRef: path: ""my-config-folder/admin-creds.yaml"
loadBalancer.f5BigIP.credentialsfileRef.entry
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 BIG-IP di F5, consulta Aggiornare le credenziali del cluster.
Esempio:
loadBalancer: f5BigIP: credentials: fileRef: entry: "f5-creds"
loadBalancer.f5BigIP.partition
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
Facoltativo
Rilevante 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 usare 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 ad alta disponibilità di cui è stato eseguito l'upgrade, ti consigliamo di eseguire la migrazione a MetalLB.
antiAffinityGroups.enabled
Facoltativo
Modificabile
Booleano
Precompilato: true
Imposta l'opzione su true
per abilitare la creazione di regole DRS. In caso contrario, imposta questo valore su
false
.
Esempio:
antiAffinityGroups: enabled: true
Se questo campo è true
, Google Distributed Cloud crea regole di anti-affinità del Distributed Resource Scheduler (DRS) di VMware per i nodi del cluster di amministrazione, distribuendole su almeno tre host ESXi fisici nel tuo data center.
Questa funzionalità richiede che l'ambiente vSphere soddisfi le seguenti condizioni:
VMware DRS è abilitato. VMware DRS richiede la versione di licenza vSphere Enterprise Plus.
Il tuo account utente vSphere ha il 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 mettere a disposizione almeno quattro host ESXi. In questo modo, non perderai il piano di controllo del cluster di amministrazione. 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 in cui si verificano errori. La regola DRS impedirà al nodo del piano di controllo di essere posizionato su uno dei due host ESXi rimanenti.
Ricorda che se disponi di una licenza vSphere Standard, non puoi abilitare VMware DRS.
Se non hai abilitato DRS o se non hai almeno quattro host in cui
puoi 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
Immutabile
Numero intero
Precompilato: 4
Predefinito: 4
Il numero di vCPU per ciascun nodo del piano di controllo 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 ciascun nodo del piano di controllo nel cluster di amministrazione.
Esempio:
adminMaster: memoryMB: 16384
adminMaster.replicas
Obbligatorio per i nuovi cluster
Immutabile
Numero intero
Valori possibili: 3
Il numero di nodi del piano di controllo nel cluster di amministrazione. Quando crei un nuovo cluster di amministrazione, imposta questo campo su 3
per creare un cluster di amministrazione ad alta disponibilità.
Esempio:
adminMaster: replicas: 3
proxy
Se la tua rete è protetta da un server proxy, compila questa sezione. In caso contrario, rimuovi questa sezione o lascia senza commenti. Il server proxy specificato qui viene utilizzato dai cluster utente gestiti da questo cluster di amministrazione.
Immutabile
proxy.url
Obbligatorio se viene compilata la sezione proxy
.
Immutabile
Stringa
L'indirizzo HTTP del tuo server proxy. Includi il numero di porta anche se è uguale alla 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 di amministrazione viene configurata automaticamente per l'utilizzo di questo 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
.
Dopo aver impostato 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
Se disponi di un Container Registry privato, compila questa sezione. In caso contrario, rimuovi la sezione o abbandona i commenti.
privateRegistry.address
Obbligatorio per il registro privato
Immutabile
Stringa
L'indirizzo IP o il nome di dominio completo (FQDN) della macchina che esegue il registro privato.
Esempi:
privateRegistry: address: "203.0.113.10"
privateRegistry: address: "fqdn.example.com"
privateRegistry.credentials.fileRef.path
Obbligatorio per il registro privato
Meditabile
Stringa
Il percorso di un file di configurazione delle credenziali contenente 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
Meditabile
Stringa
Il nome del blocco delle credenziali, nel file di configurazione delle credenziali, che contiene il nome utente e la password del tuo account del registry privato.
privateRegistry: credentials: fileRef: entry: "private-registry-creds"
privateRegistry.caCertPath
Obbligatorio per il registro privato
Meditabile
Stringa
Quando il runtime del container esegue il pull di un'immagine dal registro privato, il registro deve dimostrare la sua identità presentando un certificato. Il certificato del registry è firmato da un'autorità di certificazione (CA). Il runtime del container 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
Modificabile
Obbligatoria
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 Google Cloud e sull'account di servizio 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 creare cluster utente nella console Google Cloud.
gkeConnect.projectID
Stringa
immutabile
obbligatoria
L'ID del tuo progetto host del parco risorse.
Per i nuovi cluster, questo ID progetto deve essere uguale all'ID impostato in stackdriver.projectID
e cloudAuditLogging.projectID
. Se gli ID progetto non sono uguali, la creazione del cluster ha esito negativo. Questo requisito non si applica ai cluster esistenti.
Esempio:
gkeConnect: projectID: "my-fleet-host-project"
gkeConnect.location
Facoltativo
Immutabile
Stringa
Predefinito: globale
L'appartenenza al parco risorse di ogni cluster è gestita dal servizio Fleet
(gkehub.googleapis.com
) e dal servizio Connect
(gkeconnect.googleapis.com
). La località dei servizi può essere globale o
a livello di regione. Dalla versione 1.28 in poi, puoi specificare facoltativamente la regione Google Cloud in cui vengono eseguiti il parco risorse e i servizi Connect. Se non specificato, vengono usate
le istanze globali dei servizi. Tieni presente quanto segue:
I cluster di amministrazione creati prima della versione 1.28 sono gestiti dai servizi Fleet e Connect globali.
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 le stesse, la creazione del cluster non riesce.
Esempio:
gkeConnect: location: "us-central1"
gkeConnect.registerServiceAccountKeyPath
Stringa
Modificabile
Obbligatoria
Il percorso del file della chiave JSON per il tuo account di servizioconnect-register.
Esempio:
gkeConnect: registerServiceAccountKeyPath: "my-key-folder/connect-register-key.json"
gkeOnPremAPI
Facoltativo
Nella versione 1.16 e successive, se l'API GKE On-Prem è abilitata nel tuo progetto Google Cloud, tutti i cluster nel 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 alcun cluster nel progetto, disabilitagkeonprem.googleapis.com
(il nome del servizio per l'API GKE On-Prem) nel progetto. Per le istruzioni, vedi Disabilitare i servizi.
La registrazione del cluster di amministrazione nell'API GKE On-Prem consente di utilizzare strumenti standard (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 consente anche di eseguire i comandi gcloud
per ricevere informazioni sui cluster.
Dopo aver aggiunto questa sezione e creato o aggiornato il cluster di amministrazione, se in seguito rimuovi la sezione e aggiorni il cluster, l'aggiornamento non andrà a buon fine.
gkeOnPremAPI.enabled
Obbligatorio se è inclusa la sezione gkeOnPremAPI
.
Modificabile
Booleano
Predefinito: true
Per impostazione predefinita, il cluster è registrato nell'API GKE On-Prem se
l'API GKE On-Prem è abilitata nel tuo progetto. Imposta su false
se non vuoi registrare il cluster.
Dopo che il cluster è stato registrato nell'API GKE On-Prem, se devi annullare la registrazione del cluster, apporta la seguente modifica e aggiorna il cluster:
gkeOnPremAPI: enabled: false
gkeOnPremAPI.location
Immutabile
Stringa
Predefinito:stackdriver.clusterLocation
La regione Google Cloud in cui viene eseguita l'API GKE On-Prem 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. Vale a dire che, 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 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 essere uguale all'ID impostato in gkeConnect.projectID
e cloudAuditLogging.projectID
. Se gli ID progetto non sono uguali, la creazione del cluster ha esito negativo. Questo requisito non si applica ai cluster esistenti.
Se necessario, puoi configurare un router dei log in questo progetto per instradare i log in bucket di log di un altro progetto. Per informazioni su come configurare il router dei log, vedi Destinazioni supportate.
Esempio:
stackdriver: projectID: "my-fleet-host-project"
stackdriver.clusterLocation
Obbligatorio per il logging e il monitoraggio
Immutabile
Stringa
Precompilato: "us-central1"
La regione Google Cloud in cui vuoi archiviare i log. È consigliabile scegliere una regione vicina al 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 corrispondono, la creazione del cluster ha esito negativo.
Esempio:
stackdriver: clusterLocation: "us-central1"
stackdriver.enableVPC
Facoltativo
Immutabile
Booleano
Precompilato: false
Se la rete del cluster è controllata da un VPC, imposta questo valore su true
.
Ciò garantisce che tutta la telemetria passi attraverso gli indirizzi IP limitati di Google.
In caso contrario, imposta questo valore su false
.
Esempio:
stackdriver: enableVPC: false
stackdriver.serviceAccountKeyPath
Obbligatorio per Logging e Monitoring
Mutable
String
Il percorso del file della chiave JSON per l'account di servizio di monitoraggio dei 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
Modificabile
Pertinente per Logging e Monitoring
Booleano
Precompilato: false
Predefinito: false
Impostalo su true
per disattivare la raccolta di metriche da vSphere.
In caso contrario, impostala 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 cluster con Cloud Audit Logs, compila questa sezione. In caso contrario, rimuovi questa
sezione o abbandona i commenti.
Modificabile
Questa sezione è obbligatoria nel cluster di amministrazione se vuoi gestire il ciclo di vita dei cluster utente nell'utilizzo dei client API GKE On-Prem.
cloudAuditLogging.projectID
Obbligatorio per Cloud Audit Logs
Immutabile
Stringa
L'ID del progetto host del parco risorse.
Per i nuovi cluster, questo ID progetto deve essere uguale all'ID impostato in gkeConnect.projecID
e stackdriver.projectID
. Se gli ID progetto non sono uguali, la creazione del cluster ha esito negativo. Questo requisito non si applica ai cluster esistenti.
Se necessario, puoi configurare un router dei log in questo progetto per instradare i log in bucket di log di un altro progetto. Per informazioni su come configurare il router dei 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 data center on-premise
Per i nuovi cluster, se includi le sezioni gkeOnPremAPI
e stackdriver
nel file di configurazione, la regione impostata qui deve essere la stessa impostata in gkeConnect.location
, gkeOnPremAPI.location
e stackdriver.clusterLocation
. Se le regioni non corrispondono, la creazione
del cluster non riesce.
Esempio:
cloudAuditLogging: clusterLocation: "us-central1"
cloudAuditLogging.serviceAccountKeyPath
Obbligatorio per Cloud Audit Logs
Mutable
String
Il percorso del file chiave JSON per il tuo account di servizio di audit logging.
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
Modificabile
Stringa
Se vuoi abilitare 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
Modificabile
Booleano
Precompilato: true
Imposta questo valore su true
per attivare 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 qualsiasi altra dipendenza, compila questa sezione.
In caso contrario, rimuovi questa sezione o abbandona i commenti.
Immutabile
secretsEncryption.mode
Obbligatorio per la crittografia dei secret
Immutabile
String
Valore possibile: "GeneratedKey"
Precompilato: "GeneratedKey"
La modalità di crittografia dei secret.
secretsEncryption: mode: "GeneratedKey"
secretsEncryption.generatedKey.keyVersion
Obbligatorio per la crittografia dei secret
Meditabile
Numero intero
Precompilato: 1
Un numero intero di 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
Meditabile
Booleano
Precompilato: false
Imposta questo valore su true
per disabilitare la crittografia dei secret. In caso contrario, impostala su false
.
Esempio:
secretsEncryption: generatedKey: disabled: false
osImageType
Facoltativo
Modificabile
String
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.
Se specifichi ubuntu_cgv2
o cos_cgv2
, devi eseguire gkectl prepare --extra-os-image-types=cgroupv2
prima di creare/aggiornare il cluster.
Esempio:
osImageType: "cos"