In questa pagina vengono descritti i campi nel file di configurazione del cluster utente VMware Cluster (GKE on-prem).
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 utente. Inoltre, gkeadm
ha compilato alcuni dei campi.
Se non hai usato gkeadm
per creare la workstation di amministrazione, puoi utilizzare
gkectl
per generare un modello per il file di configurazione del cluster utente.
Per generare un modello per il file di configurazione del cluster utente:
gkectl create-config cluster --config=OUTPUT_FILENAME --gke-on-prem-version=VERSION
Sostituisci quanto segue:
OUTPUT_FILENAME
: un percorso a tua scelta per il
modello generato. Se ometti questo flag, gkectl
assegna al file il nome user-cluster.yaml
e lo inserisce nella directory corrente.
VERSION
: il numero di versione desiderato. Ad esempio:
gkectl create-config cluster --gke-on-prem-version=1.9.0-gke.8
.
Modello
Compilazione del file di configurazione
Nel file di configurazione, inserisci i valori dei campi come descritto nelle seguenti sezioni.
name
Stringa. Un nome scelto da te per il cluster utente. Il nome deve:
- contengono al massimo 40 caratteri
- contengono solo caratteri alfanumerici minuscoli o un trattino (
-
) - iniziano con un carattere alfabetico
- terminano con un carattere alfanumerico
Ad esempio:
name: "my-user-cluster"
gkeOnPremVersion
Stringa. La versione di Cluster Anthos su VMware per il tuo cluster utente. Ad esempio:
gkeOnPremVersion: "1.9.0-gke.1"
vCenter
Se vuoi che tutti gli aspetti del tuo ambiente vCenter siano gli stessi che hai specificato per il cluster di amministrazione, rimuovi questa sezione o lasciala commentato.
Se vuoi che alcuni aspetti del tuo ambiente vCenter siano diversi da quelli
specificati per il cluster di amministrazione, compila i campi pertinenti in questa
sezione. Tutti i campi impostati qui nella sezione vCenter
sostituiscono i campi corrispondenti nel file di configurazione del cluster di amministrazione.
vCenter.datacenter
Stringa. Il nome del data center vCenter per il tuo cluster utente. Se non è specificato, il cluster viene creato nel data center del cluster di amministrazione.
Ad esempio:
vCenter: datascenter: "MY-USER-DATACENTER"
Se specificato, devi includere anche i campi vCenter.datastore
e
vCenter.networkName
e devi specificare vCenter.cluster
o
vCenter.resourcePool
. Vedi Creare un cluster utente in un data center separato.
vCenter.resourcePool
Stringa. Il nome del pool di risorse vCenter per il tuo cluster utente. Se utilizzi un pool di risorse non predefinito, fornisci il nome del pool di risorse vCenter. Ad esempio:
vCenter: resourcePool: "MY-USER-POOL"
Se utilizzi il pool di risorse predefinito, fornisci il seguente valore:
vCenter: resourcePool: "VSPHERE_CLUSTER/Resources"
Sostituisci VSPHERE_CLUSTER
con il nome del cluster vSphere.
Consulta Specificare il pool di risorse root per un host autonomo.
Se non specificato e se hai specificato vCenter.datacenter
, devi fornire un valore per vCenter.cluster
.
vCenter.datastore
Stringa. Il nome del datastore vCenter per il tuo cluster utente. Ad esempio:
vCenter: datastore: "MY-USER-DATASTORE"
vCenter.cluster
Stringa. Il nome del cluster vSphere.
Ad esempio:
vCenter: cluster: USER_VSPHERE_CLUSTER
Se vCenter.cluster
non è specificato, devi specificare un valore per vCenter.resourcePool
.
vCenter.folder
Stringa. Il nome della cartella in vCenter.datacenter`.
Ad esempio:
vCenter: folder: USER_FOLDER
vCenter.caCertPath
Stringa. Quando un client, come GKE On-Prem, invia una richiesta al tuo server vCenter, quest'ultimo deve dimostrare la propria identità al client presentando un certificato o un bundle di certificati. Per verificare il certificato o il bundle, GKE on-prem deve avere il certificato radice nella catena di attendibilità.
Imposta vCenter.caCertPath
sul percorso del certificato radice. Ad esempio:
vCenter: caCertPath: "/usr/local/google/home/me/certs/user-vcenter-ca-cert.pem"
L'installazione di VMware ha un'autorità di certificazione (CA) che emette un certificato per il server vCenter. Il certificato radice nella catena di attendibilità è un certificato autofirmato creato da VMware.
Se non vuoi utilizzare VMWare, che è l'impostazione predefinita, puoi configurare VMware in modo che utilizzi un'autorità di certificazione diversa.
Se il server vCenter utilizza un certificato emesso dall'autorità di certificazione di VMware predefinita, scaricalo come segue:
curl -k "https://SERVER_ADDRESS/certs/download.zip" > download.zip
Sostituisci SERVER_ADDRESS
con l'indirizzo del server vCenter.
Installa il comando unzip
e decomprimi il file del certificato:
sudo apt-get install unzip unzip downloads.zip
Se il comando unzip
non funziona per la prima volta, inseriscilo di nuovo.
Cerca il file del certificato in certs/lin
.
Se il certificato cambia, puoi aggiornare il riferimento al nuovo certificato.
vCenter.credentials.fileRef.path
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 avere il ruolo Amministratore o privilegi equivalenti. Consulta i requisiti di vSphere. Ad esempio:
vCenter: credentials: fileRef: path: "my-config-directory/user-creds.yaml"
vCenter.credentials.fileRef.entry
Stringa. Il nome del blocco delle credenziali, nel tuo file di configurazione delle credenziali, contenente il nome utente e la password del tuo account utente vCenter. Ad esempio:
vCenter: credentials: fileRef: entry: "vcenter-creds"
vCenter.folder
Stringa. Il nome della cartella vCenter in cui si troveranno le VM del cluster. Ad esempio:
vCenter: folder: "MY-FOLDER"
network
Questa sezione contiene informazioni sulla rete del cluster utente.
network.hostConfig
In questa sezione sono riportate le informazioni sui server NTP, sui server DNS e sui domini di ricerca DNS utilizzati dal cluster.
Se hai fornito un valore per uno o entrambi i campi seguenti, compila questa sezione. Altrimenti, rimuovi questa sezione.
loadBalancer.seesaw.ipBlockFilePath
network.ipMode.ipBlockFilePath
network.hostConfig.dnsServers
Array di stringhe. Gli indirizzi dei server DNS che gli host devono utilizzare. Ad esempio:
network: hostConfig: dnsServers: - "172.16.255.1" - "172.16.255.2"
network.hostConfig.ntpServers
Array di stringhe. Gli indirizzi dei server di tempo che gli host devono utilizzare. Ad esempio:
network: hostConfig: ntpServers: - "216.239.35.0"
network.hostConfig.searchDomainsForDNS
Array di stringhe. I domini di ricerca DNS utilizzabili dagli host. Questi domini vengono utilizzati come parte di un elenco di ricerca dei domini. Ad esempio:
network: hostConfig: searchDomainsForDNS: - "my.local.com"
network.ipMode.type
Stringa. Se vuoi che i nodi del cluster acquisiscano l'indirizzo IP da un server DHCP, imposta questo valore su "dhcp"
. Se vuoi che gli indirizzi IP statici dei nodi del cluster vengano scelti da un elenco da te fornito, imposta questo valore su "static"
. Ad esempio:
network: ipMode: type: "static"
network.ipMode.ipBlockFilePath
Se imposti ipMode.type
su "static"
, compila questo campo. Se imposti
ipMode.type
su "dhcp"
, rimuovi questo campo.
Stringa. Il percorso del file di blocco IP per il tuo cluster. Ad esempio:
network: ipMode: ipBlockFilePath: "/my-config-folder/user-cluster-ipblock.yaml"
network.serviceCIDR
e network.podCIDR
Stringhe. Il cluster utente deve avere un intervallo di indirizzi IP da utilizzare per i servizi e un intervallo di indirizzi IP da utilizzare per i pod. Questi intervalli sono specificati dai campi
network.serviceCIDR
e network.podCIDR
. Questi campi vengono compilati con valori predefiniti. Se vuoi, puoi modificare i valori completati in valori
di tua scelta.
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 il tuo intervallo di servizi sia 10.96.232.0/24 e l'intervallo del pod sia 192.168.0.0/16. Tutto il traffico inviato da un pod a un indirizzo in uno di questi intervalli sarà considerato 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 bilanciatori del carico e dai nodi del piano di controllo
Indirizzo IP dei server vCenter, dei server DNS e dei server NTP
Ti consigliamo di inserire gli intervalli di servizi e pod nello spazio degli indirizzi RFC 1918.
Di seguito è riportato un motivo per cui il consiglio consiglia di utilizzare indirizzi RFC 1918. Supponiamo che il tuo pod o intervallo di servizi contenga indirizzi IP esterni. Tutto il traffico inviato da un pod a uno di questi indirizzi esterni sarà considerato come traffico in-cluster e non raggiungerà la destinazione esterna.
Esempio:
network: serviceCIDR: "10.96.0.0/20" podCIDR: "192.168.0.0/16"
network.vCenter.networkName
Stringa. Il nome della rete vSphere per i nodi del cluster utente.
Se il nome contiene un carattere speciale, devi utilizzare una sequenza di escape.
Caratteri speciali | Sequenza di escape |
---|---|
Barra (/ ) |
%2f |
Barra rovesciata (\ ) |
%5c |
Simbolo percentuale (% ) |
%25 |
Se il nome della rete non è univoco, è possibile specificare un percorso di rete, ad esempio /DATACenter/network/NETWORK_NAME.
Ad esempio:
network: vCenter: networkName: "MY-USER-CLUSTER-NETWORK"
loadBalancer
Questa sezione contiene informazioni sul bilanciatore del carico per il cluster utente.
loadBalancer.vips.controlPlaneVIP
L'indirizzo IP che hai scelto di configurare sul bilanciatore del carico per il server API Kubernetes del cluster utente. Ad esempio:
loadBalancer: vips: controlplaneVIP: "203.0.113.3"
loadBalancer.vips.ingressVIP
L'indirizzo IP che hai scelto di configurare sul bilanciatore del carico per il traffico in entrata. Ad esempio:
loadBalancer: vips: ingressVIP: "203.0.113.4"
loadBalancer.kind
Stringa. Imposta questo valore su "Seesaw"
, "F5BigIP"
o "ManualLB"
. Ad esempio:
loadBalancer: kind: "Seesaw"
loadBalancer.manualLB
Se imposti loadbalancer.kind
su "manualLB"
, compila questa sezione. Altrimenti, rimuovi questa sezione o lasciala
commentata.
loadBalancer.manualLB.ingressHTTPNodePort
Numero intero. Il servizio in entrata in un cluster utente viene implementato come
servizi Kubernetes di tipo LoadBalancer
.
Il servizio ha un servizio ServicePort per HTTP. Devi scegliere un valore nodePort
per le ServicePort HTTP.
Imposta il valore di questo campo sul valore nodePort
. Ad esempio:
loadBalancer: manualLB: ingressHTTPNodePort: 32527
loadBalancer.manualLB.ingressHTTPSNodePort
Numero intero. Il servizio in entrata in un cluster utente è implementato come servizio di tipo LoadBalancer. Il servizio ha un ServicePort per HTTPS. Devi scegliere un valore nodePort
per la porta servizio HTTPS.
Imposta il valore di questo campo sul valore nodePort
. Ad esempio:
loadBalancer: manualLB: ingressHTTPSNodePort: 30139
loadBalancer.manualLB.controlPlaneNodePort
Numero intero. Il server API Kubernetes nel cluster di amministrazione è implementato come servizio di tipo NodePort
. Devi scegliere un valore nodePort
per il servizio.
Imposta il valore di questo campo sul valore nodePort
. Ad esempio:
loadBalancer: manualLB: controlPlaneNodePort: 30968
loadBalancer.manualLB.addonsNodePort
Rimuovi questo campo. Non viene utilizzato in un cluster utente.
loadBalancer.f5BigIP
Se imposti loadbalancer.kind
su "f5BigIP"
, compila questa sezione. Altrimenti, rimuovi questa sezione o lasciala
commentata.
loadBalancer.f5BigIP.address
Stringa. L'indirizzo del bilanciatore del carico BIG-IP di F5. Ad esempio:
loadBalancer: f5BigIP: address: "203.0.113.2"
loadBalancer.f5BigIP.fileRef.path
Stringa. Il percorso di un file di configurazione delle credenziali che contiene il nome utente e la password di un account che i cluster Anthos su VMware possono utilizzare per connettersi al bilanciatore del carico BIG-IP di F5.
L'account utente deve avere un ruolo utente che disponga di autorizzazioni sufficienti per configurare e gestire il bilanciatore del carico. È sufficiente il ruolo Amministratore o Amministratore risorsa.
Esempio:
loadBalancer: f5BigIP: fileRef: path: ""my-config-folder/user-creds.yaml"
loadBalancer.f5BigIP.fileRef.entry
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 BIG-IP di F5. Ad esempio:
loadBalancer: f5BigIP: fileRef: entry: "f5-creds"
loadBalancer.f5BigIP.partition
Stringa. Il nome di una partizione BIG-IP che hai creato per il cluster di amministrazione. Ad esempio:
loadBalancer: f5BigIP: partition: "my-f5-admin-partition"
loadBalancer.f5BigIP.snatPoolName
Stringa. Se utilizzi SNAT, il nome del pool SNAT. Se non usi SNAT, rimuovi questo campo o lascialo commentato. Ad esempio:
loadBalancer: f5BigIP: snatPoolName: "my-snat-pool"
loadBalancer.seesaw
Se imposti loadbalancer.kind
su "Seesaw"
, compila questa sezione. Altrimenti, rimuovi questa sezione.
Per informazioni sulla configurazione del bilanciatore del carico di Seesaw, consulta la guida rapida al bilanciatore del carico di Seesaw e la pagina relativa al bilanciamento del carico incluso con Seesaw.
loadBalancer.seesaw.ipBlockFilePath
Stringa. Impostalo sul percorso del file di blocco IP per le tue VM di Seesaw. Ad esempio:
loadBalancer: seesaw: ipBlockFilePath: "config-folder/admin-seesaw-ipblock.yaml"
loadBalancer.seesaw.vrid
Numero intero. L'identificatore del router virtuale della tua VM di Seesaw. Questo identificatore, che è un numero intero a tua scelta, deve essere univoco in una VLAN. L'intervallo valido è 1-255. Ad esempio:
loadBalancer: seesaw: vrid: 125
loadBalancer.seesaw.masterIP
Stringa. L'indirizzo IP virtuale configurato nella tua VM Seesaw master. Ad esempio:
loadBalancer: seesaw: masterIP: 172.16.20.21
loadBalancer.seesaw.cpus
Numero intero. Il numero di CPU per ciascuna delle tue VM Seesaw. Ad esempio:
loadBalancer: seesaw: cpus: 8
loadBalancer.seesaw.memoryMB
Numero intero. Il numero di mebibyte di memoria per ciascuna delle tue VM di Seesaw. Ad esempio:
loadBalancer: seesaw: memoryMB: 8192
Nota: questo campo specifica il numero di mebibyte di memoria, non il numero di megabyte. Un mebibyte è 2^20 = 1.048.576 byte. Un megabyte è 10^6 = 1.000.000 byte.
loadBalancer.seesaw.vCenter.networkName
Stringa. Il nome della rete vCenter che contiene le VM di Seesaw. Ad esempio:
loadBalancer: seesaw: vCenter: networkName: "my-seesaw-network"
loadBalancer.seesaw.enableHA
Valore booleano. Se vuoi creare un bilanciatore del carico Seesaw ad alta disponibilità, impostalo su true
. Altrimenti, imposta questa opzione su false
. Un bilanciatore del carico di Seesaw ad alta disponibilità utilizza una coppia(principale, di backup) di VM. Ad esempio:
loadBalancer: seesaw: enableHA: true
loadBalancer.seesaw.disableVRRPMAC
Valore booleano. Se imposti il valore true
, il bilanciatore del carico di Seesaw non utilizza l'apprendimento MAC per il failover. Utilizza invece
l'ARP gratuito.
Se imposti il valore false
, il bilanciatore del carico di Seesaw utilizza il machine learning. Ti consigliamo di impostarlo su true
. Se utilizzi vSphere 7 o versioni successive e hai un bilanciatore del carico di Seesaw ad alta disponibilità, devi impostarlo su true
.
Ad esempio:
loadBalancer: seesaw: disableVRRPMAC: true
enableDataplaneV2
Valore booleano. Se vuoi abilitare Dataplane V2, impostalo su true
. Altrimenti, imposta questa opzione su false
. Ad esempio:
enableDataplaneV2: true
Dataplane V2 è disponibile solo nei cluster utente.
Consulta la sezione Risoluzione dei problemi di Dataplane V2 per conoscere la procedura di risoluzione dei problemi.
enableWindowsDataplaneV2
Valore booleano. Anteprima.
Se vuoi abilitare Windows Dataplane V2 per un cluster con nodi Windows, impostalo su true
. Altrimenti, imposta questa opzione su false
. Ad esempio:
enableWindowsDataplaneV2: true
Windows Dataplane V2 è disponibile solo nei cluster utente.
Consulta la sezione Risoluzione dei problemi di Dataplane V2 per conoscere la procedura di risoluzione dei problemi. Consulta la Guida dell'utente per i pool di nodi del sistema operativo Windows Server per configurare i pool di nodi contenenti i nodi del sistema operativo Windows Server.
enableAnthosNetworkGateway
Valore booleano. Anteprima.
Se vuoi abilitare il gateway di rete Anthos, imposta questa opzione su true
. In caso contrario,
impostalo su false
. Imposta questo valore su true
se vuoi configurare un
gateway NAT in uscita.
Ad esempio:
enableAnthosNetworkGateway: true
masterNode
Questa sezione contiene informazioni sui nodi, nel cluster di amministrazione, che fungono da nodi del piano di controllo per il cluster utente.
masterNode.vSphere.datastore
Stringa. Il datastore per il nodo del piano di controllo utente per questo cluster utente. Ad esempio:
masterNode: vsphere: datastore: USER_MASTER_DATASTORE
Per impostazione predefinita, se non è specificato, il valore predefinito sarà il datastore del cluster utente quando il cluster utente utilizzerà il data center del cluster di amministrazione.
Se il cluster utente utilizza un data center diverso, questo campo è obbligatorio e non viene applicato alcun valore predefinito.
masterNode.cpus
Numero intero. Il numero di CPU per ciascun nodo del cluster di amministrazione che funge da piano di controllo per questo cluster utente. Ad esempio:
masterNode: cpus: 8
masterNode.memoryMB
Numero intero. I mebibyte di memoria per ciascun nodo del cluster di amministrazione che funge da piano di controllo per questo cluster utente. Deve essere un multiplo di 4. Ad esempio:
masterNode: memoryMB: 8192
Nota: questo campo specifica il numero di mebibyte di memoria, non il numero di megabyte. Un mebibyte è 2^20 = 1.048.576 byte. Un megabyte è 10^6 = 1.000.000 byte.
masterNode.replicas
Numero intero. Il numero di nodi del piano di controllo per questo cluster utente. Imposta questo campo su 1 o 3. Ad esempio:
masterNode: replicas: 3
masterNode.autoResize.enabled
Valore booleano. Imposta questo valore su true
per consentire il ridimensionamento automatico dei nodi del piano di controllo
per il cluster utente. Tieni presente che i nodi del piano di controllo per il cluster utente
si trovano nel cluster di amministrazione. Ad esempio:
masterNode: autoResize: enabled: true
masterNode.vsphere.datastore
Stringa. Il datastore in cui verranno creati i nodi master. Ad esempio:
masterNode: vSphere: datastore: "MY-DATASTORE"
nodePools
Array di oggetti, ciascuno dei quali descrive un pool di nodi.
nodePools[i].name
Stringa. Un nome scelto da te per il pool di nodi. Il nome deve:
- contengono al massimo 40 caratteri
- contengono solo caratteri alfanumerici minuscoli o un trattino (
-
) - iniziano con un carattere alfabetico
- terminano con un carattere alfanumerico
Ad esempio:
nodePools: - name: "my-node-pool"
nodePools[i].cpus
Numero intero. Il numero di CPU per ogni nodo nel pool. Ad esempio:
nodePools" - name: "my-node-pool" cpus: 8
nodePools[i].memoryMB
Numero intero. I mebibyte di memoria per ogni nodo nel pool. Deve essere un multiplo di 4. Ad esempio:
nodePools" - name: "my-node-pool" memoryMB: 8192
Nota: questo campo specifica il numero di mebibyte di memoria, non il numero di megabyte. Un mebibyte è 2^20 = 1.048.576 byte. Un megabyte è 10^6 = 1.000.000 byte.
nodePools[i].replicas
Numero intero. Il numero di nodi nel pool. Ad esempio:
nodePools: - name: "my-node-pool" replicas: 5
nodePools[i].bootDiskSizeGB
Numero intero. La dimensione del disco di avvio in gigabyte per ogni nodo nel pool. Questa configurazione è disponibile a partire dai cluster Anthos su VMware versione 1.5.0. Ad esempio:
nodePools - name: "my-node-pool" bootDiskSizeGB: 40
nodePools[i].osImageType
Stringa. Il tipo di immagine del sistema operativo da eseguire sulle VM nel pool di nodi. I valori possibili sono "ubuntu_containerd", "ubuntu" e "cos". Ad esempio:
nodePools - name: "my-node-pool" osImageType: "ubuntu_containerd"
nodePools[i].labels
Mappatura. Etichette da applicare a ogni nodo nel pool. Ad esempio:
nodePools: - name: "my-node-pool" labels: environment: "production" tier: "cache"
nodePools[i].taints
Array di oggetti, ognuno dei quali descrive un'incompatibilità. Ad esempio:
nodePools: - name: "my-node-pool" taints: - key: "staging" value: "true" effect: "NoSchedule"
nodePools[i].vsphere.datastore
Stringa. Nome del datastore vCenter su cui verrà creato ciascun nodo del pool. Ad esempio:
nodePools: - name: "my-node-pool" vsphere: datastore: "my-datastore"
nodePools[i].vsphere.tags
Array di oggetti, ognuno dei quali descrive un tag vSphere da posizionare sulle VM nel pool di nodi. Ogni tag ha una categoria e un nome. Ad esempio:
nodePools: - name: "my-node-pool" vsphere: tags: - category: "purpose" name: "testing"
Se vuoi collegare i tag a tutte le VM in un pool di nodi, il tuo account utente vCenter deve avere questi privilegi di codifica vSphere:
- Tag vSphere.Assegna o annulla l'assegnazione del tag vSphere
- Codifica vSphere.Assegna o annulla l'assegnazione di tag vSphere sull'oggetto (vSphere 7)
nodePools[i].autoscaling
Anteprima.
Se vuoi abilitare la scalabilità automatica per il pool di nodi, compila questa sezione. Altrimenti, rimuovi questa sezione.
nodePools[i].autoscaling.minReplicas
Numero intero. Il numero minimo di nodi che il gestore della scalabilità automatica può impostare per il pool. Deve essere almeno 1. Ad esempio:
nodePools: - name: "my-node-pool" autoscaling: minReplicas: 5
nodePools.autoscaling.maxReplicas
Numero intero. Il numero massimo di nodi che il gestore della scalabilità automatica può impostare per il pool.
nodePools: - name: "my-node-pool" autoscaling: maxReplicas: 10
antiAffinityGroups.enabled
Valore booleano. Imposta questo valore su true
per attivare la creazione della regola DRS. In caso contrario, imposta
su false
. Ad esempio:
antiAffinityGroups: enabled true
I cluster Anthos su VMware creano automaticamente regole di anti-affinità Distributed Resource Scheduler (DRS) per i nodi del cluster utente, determinando la loro distribuzione in almeno tre host fisici del 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 tre host fisici.
Ricorda che, se hai una licenza vSphere Standard, non puoi abilitare VMware DRS.
Se non hai abilitato DRS o se non hai almeno tre host in cui è possibile pianificare le VM vSphere, imposta antiAffinityGroups.enabled
su false
.
enableVMTracking
enableVMTracking: true
authentication
Questa sezione contiene informazioni sulla modalità di autenticazione e autorizzazione degli utenti del cluster.
authentication.oidc
Non utilizzare questa sezione. Dopo la creazione del cluster, modifica la risorsa personalizzata ClientConfig come descritto in Configurare i cluster per Anthos Identity Service con OIDC.
authentication.sni
Se vuoi fornire un certificato di pubblicazione aggiuntivo per il server API Kubernetes del cluster, compila questa sezione. Altrimenti, rimuovi questa sezione o aggiungila come commento.
authentication.sni.certPath
Stringa. Il percorso di un certificato di gestione per il server API Kubernetes. Ad esempio:
authentication: sni: certPath: "my-cert-folder/example.com.crt"
authentication.sni.keyPath
Stringa. Percorso del file della chiave privata del certificato. Ad esempio:
authentication: sni: keyPath: "my-cert-folder/example.com.key"
stackdriver
Se vuoi abilitare Cloud Logging e Cloud Monitoring per il tuo cluster, compila questa sezione. Altrimenti, eliminalo o omettilo sul commento.
stackdriver.projectID
Stringa. L'ID del progetto Google Cloud in cui vuoi visualizzare i log. Ad esempio:
stackdriver: projectID: "my-logs-project"
stackdriver.clusterLocation
Stringa. L'area geografica di Google Cloud in cui vuoi archiviare i log. È buona norma scegliere un'area geografica vicina al data center on-premise. Ad esempio:
stackdriver: clusterLocation: "us-central1"
stackdriver.enableVPC
Valore booleano. Se la tua rete del cluster è controllata da un VPC, impostalo su questo campo sutrue
. Ciò garantisce che tutto il servizio di telemetria passi attraverso gli indirizzi IP con restrizioni di Google. In caso contrario, imposta questo campo su false
. Ad esempio:
stackdriver: enableVPC: false
stackdriver.serviceAccountKeyPath
Stringa. Il percorso del file della chiave JSON per il tuo account di servizio di monitoraggio dei log. Ad esempio:
stackdriver: serviceAccountKeyPath: "my-key-folder/log-mon-key.json"
stackdriver.disableVsphereResourceMetrics
Valore booleano. Imposta questo valore su true
per disattivare la raccolta delle metriche da vSphere.
In caso contrario, impostala su false
. Ad esempio:
stackdriver: disableVsphereResourceMetrics: true
gkeConnect
Questa sezione contiene informazioni sul progetto Google Cloud e sull'account di servizio che vuoi utilizzare per registrare il cluster in un parco risorse Google Cloud.
Questa sezione è obbligatoria.
gkeConnect.projectID
Stringa. L'ID del progetto host della flotta. Ad esempio:
gkeConnect: projectID: "my-connect-project-123"
gkeConnect.registerServiceAccountKeyPath
Stringa. Il percorso del file della chiave JSON per il tuo account di servizio Connect-register. Ad esempio:
gkeConnect: registerServiceAccountKeyPath: "my-key-folder/connect-register-key.json"
usageMetering
Se vuoi abilitare la misurazione dell'utilizzo per il cluster, compila questa sezione. Altrimenti, rimuovi questa sezione o lasciala eliminata.
usageMetering.bigQueryProjectID
Stringa. L'ID del progetto Google Cloud in cui vuoi archiviare i dati di misurazione dell'utilizzo. Ad esempio:
usageMetering: bigQueryProjectID: "my-bq-project"
usageMetering.bigQueryDatasetID
Stringa. L'ID del set di dati BigQuery in cui vuoi archiviare i dati di misurazione dell'utilizzo. Ad esempio:
usageMetering: bigQueryDatasetID: "my-bq-dataset"
usageMetering.bigQueryServiceAccountKeyPath
Stringa. Il percorso del file della chiave JSON per il tuo account di servizio BigQuery. Ad esempio:
usageMetering: bigQueryServiceAccountKeyPath: "my-key-folder/bq-key.json"
usageMetering.enableConsumptionMetering
Valore booleano. Imposta questo valore su true
se vuoi attivare la misurazione basata sul consumo.
In caso contrario, imposta questo valore su false. Ad esempio:
usageMetering: enableConsumptionMetering: true
cloudAuditLogging
Se vuoi integrare gli audit log del tuo server API Kubernetes nel cluster con gli audit log di Cloud, compila questa sezione. Altrimenti, rimuovi questa sezione o lasciala commentato.
cloudAuditLogging.projectID
Stringa. L'ID del progetto Google Cloud in cui vuoi archiviare i log di controllo. Ad esempio:
cloudAuditLogging: projectID: "my-audit-project"
cloudAuditLogging.clusterLocation
Stringa. L'area geografica di Google Cloud in cui vuoi archiviare gli audit log. È buona norma scegliere un'area geografica vicina al data center on-premise. Ad esempio:
cloudAuditLogging: clusterLocation: "us-central1"
cloudAuditLogging.serviceAccountKeyPath
Stringa. Il percorso del file della chiave JSON per il tuo account di servizio di audit logging. Ad esempio:
cloudAuditLogging: serviceAccountKeyPath: "my-key-folder/audit-log-key.json"
autoRepair.enabled
Valore booleano. Imposta true
per abilitare la riparazione automatica dei nodi. In caso contrario, impostala su
false
. Ad esempio:
autoRepair: enabled: true
secretsEncryption
Se vuoi criptare i secret senza bisogno di un KMS esterno (Key Management Service) o di qualsiasi altra dipendenza, assicurati di aver compilato questa sezione. Altrimenti, rimuovi o commenta questa sezione.
secretsEncryption.mode
Stringa. Modalità di crittografia del secret. Imposta questo valore su "GeneratedKey"
.
secretsEncryption: mode: "GeneratedKey"
secretsEncryption.generatedKey.keyVersion
Numero intero. Un numero intero di tua scelta da utilizzare per il numero di versione della chiave. Ti consigliamo di iniziare con 1
. Ad esempio:
secretsEncryption: generatedKey: keyVersion: 1