File di configurazione del cluster di amministrazione 1.30 e versioni successive

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 file admin-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 versione gkectl. 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 sezione vCenter.
    • network.hostConfig: rimuovi l'intera sezione network.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 su true.

    • 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 sezione vCenter.
    • network.hostConfig: rimuovi l'intera sezione network.hostConfig.
    • network.vCenter.networkName: rimuovi questo campo.
    • masterNode.vsphere: rimuovi l'intera sezione.
    • nodePools[i].vsphere.datastore e nodePools[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 su false. Le interfacce di rete multiple per i pod non sono supportate quando i domini di topologia sono abilitati.

    • storage.vSphereCSIDisabled: imposta questo campo su true per disattivare il deployment dei componenti CSI vSphere

  • I seguenti campi sono obbligatori:

    • enableAdvancedCluster: impostato su true 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 impostare antiAffinityGroups.enabled su false.

  • 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 e gkeOnPremAPI.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 su false. Se non vuoi registrare cluster nel progetto, disabilita gkeonprem.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.

Questa sezione è obbligatoria nel cluster di amministrazione se vuoi gestire il ciclo di vita dei cluster utente nella console Google Cloud .

Esempio:

stackdriver:
  disableVsphereResourceMetrics: true

cloudAuditLogging

Se vuoi integrare gli audit log del server API Kubernetes del tuo cluster con Cloud Audit Logs, compila questa sezione. In caso contrario, rimuovi questa sezione o lasciala commentata.
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 solo ubuntu-cgroupv2 e ubuntu_containerd sui cluster avanzati.

  • Versione 1.32: tutti i tipi di immagini del sistema operativo sono supportati nei cluster avanzati.

Esempio:

osImageType: "cos"