Version 1.11 keyboard_arrow_down
Questo documento mostra come creare cluster di base per una piccola installazione proof of concept di cluster Anthos su VMware (GKE On-Prem).
Di seguito sono riportati i passaggi principali:
Creare una workstation di amministrazione.
Dalla workstation di amministrazione, crea un cluster di amministrazione.
Dalla workstation di amministrazione, crea un cluster utente.
Prima di iniziare
Configura gli ambienti vSphere e Google Cloud come descritto in Configurare l'infrastruttura minima .
Per prepararti a compilare un file di configurazione della workstation di amministrazione, raccogli le seguenti informazioni:
Accedi
Lo strumento a riga di comando gkeadm
utilizza la proprietà account
dell'SDK per creare gli account di servizio. Per questo è importante impostare la proprietà SDK account
prima di eseguire gkeadm
per creare una workstation di amministrazione.
Accedi con qualsiasi Account Google. Questa imposta la proprietà SDK account
:
Verifica che la proprietà SDK account
sia impostata correttamente:
L'output mostra il valore della proprietà SDK account
.
Ad esempio:
[core]
account = my-name@google.com
disable_usage_reporting = False
Your active configuration is: [default]
Concedi i ruoli al tuo account SDK
L'Account Google impostato come tua proprietà SDK account
deve avere questi
ruoli IAM affinché gkeadm
possa creare e gestire
gli account di servizio per te:
resourcemanager.projectIamAdmin
serviceusage.serviceUsageAdmin
iam.serviceAccountCreator
iam.serviceAccountKeyAdmin
Per concedere i ruoli, devi disporre di determinate autorizzazioni per il tuo progetto Cloud. Per maggiori dettagli, consulta la pagina Concedere, modificare e revocare l'accesso alle risorse .
Se disponi delle autorizzazioni necessarie, puoi concedere personalmente i ruoli.
In caso contrario, un altro membro dell'organizzazione deve concederti i ruoli.
Per concedere i ruoli:
Linux e macOS
gcloud projects add-iam-policy-binding PROJECT_ID \
--member="user:ACCOUNT " \
--role="roles/resourcemanager.projectIamAdmin"
gcloud projects add-iam-policy-binding PROJECT_ID \
--member="user:ACCOUNT " \
--role="roles/serviceusage.serviceUsageAdmin"
gcloud projects add-iam-policy-binding PROJECT_ID \
--member="user:ACCOUNT " \
--role="roles/iam.serviceAccountCreator"
gcloud projects add-iam-policy-binding PROJECT_ID \
--member="user:ACCOUNT " \
--role="roles/iam.serviceAccountKeyAdmin"
Windows
gcloud projects add-iam-policy-binding PROJECT_ID ^
--member="user:ACCOUNT " ^
--role="roles/resourcemanager.projectIamAdmin"
gcloud projects add-iam-policy-binding PROJECT_ID ^
--member="user:ACCOUNT " ^
--role="roles/serviceusage.serviceUsageAdmin"
gcloud projects add-iam-policy-binding PROJECT_ID ^
--member="user:ACCOUNT " ^
--role="roles/iam.serviceAccountCreator"
gcloud projects add-iam-policy-binding PROJECT_ID ^
--member="user:ACCOUNT " ^
--role="roles/iam.serviceAccountKeyAdmin"
Sostituisci quanto segue:
PROJECT_ID
: l'ID del tuo progetto Cloud
ACCOUNT
: il valore della proprietà account
dell'SDK
Creare una workstation di amministrazione.
I passaggi in questa sezione utilizzano lo strumento a riga di comando gkeadm
, disponibile per Linux a 64 bit, Windows 10, Windows Server 2019 e macOS 10.15 e versioni successive.
Scarica gkeadm
nella directory attuale.
Genera modelli
Il comando precedente ha creato i file nella directory attuale:
credential.yaml
admin-ws-config.yaml
Inserisci credential.yaml
In credential.yaml
, inserisci il tuo nome utente e la password vCenter. Ad esempio:
kind: CredentialFile
items:
- name: vCenter
username: "my-account-name"
password: "AadmpqGPqq!a"
Acquisire familiarità con il file di configurazione della workstation di amministrazione
Analizza la documentazione per il file di configurazione della workstation di amministrazione per avere un'idea generale del contenuto del file. Puoi anche tenere la pagina aperta in una scheda o in una finestra separata, in modo da potervi fare riferimento mentre compili i valori per i campi.
Inserisci admin-ws-config.yaml
Apri admin-ws-config.yaml
per la modifica.
I seguenti campi vengono compilati con i valori predefiniti o generati:
vCenter:
credentials:
fileRef:
credentials:
entry:
adminWorkstation:
name:
cpus:
memoryMB:
diskGB:
dataDiskName:
dataDiskMB:
ntpServer:
Compila il campo gcp.componentAccessServiceAccountKeyPath .
Compila i seguenti campi nella sezione vCenter .
credentials:
address:
datacenter:
datastore:
cluster:
network:
caCertPath:
Imposta vCenter.resourcePool
su CLUSTER_NAME /Resources. Sostituisci CLUSTER_NAME con il
nome del tuo cluster vSphere.
Se necessario, compila il campo proxyURL .
Se necessario, compila il campo adminWorkstation.proxyURL .
Imposta adminWorkstation.network.ipAllocationMode su "static"
.
Compila i seguenti campi nella sezione
adminWorkstation.network.hostConfig :
ip:
gateway:
netmask:
dns:
Esempio di file di configurazione della workstation di amministrazione
Ecco un esempio di un file di configurazione della workstation di amministrazione compilato:
gcp:
componentAccessServiceAccountKeyPath: "/usr/local/google/home/me/keys/component-access-key.json"
vCenter:
credentials:
address: "vc01.example"
fileRef:
path: "credential.yaml"
entry: "vCenter"
datacenter: "vc01"
datastore: "vc01-datastore-1"
cluster: "vc01-workloads-1"
network: "vc01-net-1"
resourcePool: "vc01-workloads-1/Resources"
caCertPath: "/usr/local/google/home/stevepe/certs/vc01-cert.pem"
proxyUrl: ""
adminWorkstation:
name: gke-admin-ws-220304-014925
cpus: 4
memoryMB: 8192
diskGB: 50
dataDiskName: gke-on-prem-admin-workstation-data-disk/gke-admin-ws-220304-014925-data-disk.vmdk
dataDiskMB: 512
network:
ipAllocationMode: "static"
hostConfig:
ip: "172.16.20.49"
gateway: "172.16.20.1"
netmask: "255.255.255.0"
dns:
- "203.0.113.1"
proxyUrl: ""
ntpServer: ntp.ubuntu.com
Crea la tua workstation di amministrazione
Crea la workstation di amministrazione e crea automaticamente gli account di servizio:
./gkeadm create admin-workstation --auto-create-service-accounts
L'output fornisce informazioni dettagliate sulla creazione della workstation di amministrazione e fornisce un comando che puoi utilizzare per ottenere una connessione SSH alla workstation di amministrazione:
...
Admin workstation is ready to use.
Admin workstation information saved to /usr/local/google/home/me/my-admin-workstation
This file is required for future upgrades
SSH into the admin workstation with the following command:
ssh -i /usr/local/google/home/me/.ssh/gke-admin-workstation ubuntu@172.16.20.49
********************************************************************
Per informazioni più dettagliate sulla creazione di una workstation di amministrazione, vedi Creare una workstation di amministrazione .
Visualizzare i file sulla workstation di amministrazione
Utilizza il comando visualizzato nell'output precedente per ottenere una connessione SSH alla workstation di amministrazione. Ad esempio:
ssh -i /usr/local/google/home/me/.ssh/gke-admin-workstation ubuntu@172.16.20.49
Elenca i file nella home directory:
L'output include i file della chiave JSON di due account di servizio che gkeadm
ha creato per te: un account di servizio Connect-register e un account di servizio di monitoraggio del logging. Prendi nota del nome dei file della chiave JSON per il tuo account di servizio Connect-register. Ti servirà in un secondo momento durante la creazione dei cluster. Ad esempio:
admin-cluster.yaml
admin-ws-config.yaml
sa-key.json
connect-register-sa-2203040617.json
credential.yaml
log-mon-sa-2203040617.json
logs
vc01-cert.pem
user-cluster.yaml
Creazione di un cluster di amministrazione
Stabilisci una connessione SSH alla tua workstation di amministrazione.
Nota: se utilizzi nomi DNS interni o la tua workstation non può accedere agli indirizzi DNS pubblici di Google (8.8.8.8 o 8.8.4.4), devi specificare il server dei nomi interno in /etc/resolv.conf
.
Specifica gli indirizzi IP statici per il cluster di amministrazione
Per specificare gli indirizzi IP statici da utilizzare per i nodi del cluster di amministrazione, crea un file di blocco IP denominato admin-cluster-ipblock.yaml
.
Sono necessari cinque indirizzi IP per i seguenti nodi nel cluster di amministrazione:
Tre nodi per eseguire il piano di controllo e i componenti aggiuntivi del cluster di amministrazione
Un nodo aggiuntivo da utilizzare temporaneamente durante gli upgrade
Un nodo per eseguire il piano di controllo per il cluster utente che creerai
in seguito
Di seguito è riportato un esempio di file di blocco IP con indirizzi per cinque nodi:
blocks:
- netmask: 255.255.255.0
gateway: 172.16.20.1
ips:
- ip: 172.16.20.50
hostname: admin-vm-1
- ip: 172.16.20.51
hostname: admin-vm-2
- ip: 172.16.20.52
hostname: admin-vm-3
- ip: 172.16.20.53
hostname: admin-vm-4
- ip: 172.16.20.54
hostname: admin-vm-5
Il campo ips
è un array di indirizzi IP e nomi host. Questi sono gli indirizzi e i nomi host IP che i cluster Anthos su VMware assegneranno ai nodi del cluster di amministrazione.
Nel file di blocco IP, devi specificare anche una subnet mask e un gateway predefinito per i nodi del cluster di amministrazione.
Acquisire familiarità con il file di configurazione del cluster di amministrazione
Analizza la documentazione per il file di configurazione del cluster di amministrazione per avere un'idea generale dei contenuti del file. Puoi anche tenere la pagina aperta in una scheda o in una finestra separata, in modo da potervi fare riferimento mentre compili i valori per i campi.
Compila il file di configurazione del cluster di amministrazione
Quando gkeadm
ha creato la workstation di amministrazione, ha generato un file di configurazione denominato admin-cluster.yaml
. Questo file di configurazione consente di creare il cluster di amministrazione.
Apri admin-cluster.yaml
per la modifica.
Molti campi del file di configurazione del cluster di amministrazione sono già compilati con i valori predefiniti, i valori generati o i valori che hai fornito al momento della creazione della workstation di amministrazione. Puoi lasciare invariati i campi.
Compila il campo vCenter.dataDisk .
Compila i seguenti campi nella sezione network.hostConfig :
Imposta network.ipMode.type su "static"
.
Imposta network.ipMode.ipBlockFilePath su "admin-cluster-ipblock.yaml"
Inserisci o mantieni i
valori predefiniti
per
network.serviceCIDR
e
network.podCIDR .
Compila i seguenti campi nella sezione
loadBalancer.vips :
controlPlaneVIP:
addonsVIP:
Imposta loadBalancer.kind su "MetalLB"
.
Imposta antiAffinityGroups.enabled su false
.
Imposta gkeConnect.projectID sull'ID del tuo progetto Cloud.
Imposta gkeConnect.registerServiceAccountKeyPath sul percorso del file della chiave JSON per l'account di servizio Connect-register.
Esempio di file di configurazione del cluster di amministrazione
Ecco un esempio di file di configurazione del cluster di amministrazione compilato:
apiVersion: v1
kind: AdminCluster
name: "gke-admin-01"
bundlePath: "/var/lib/gke/bundles/gke-onprem-vsphere-1.11.0-gke.543-full.tgz"
vCenter:
address: "vc01.example"
datacenter: "vc-01"
cluster: "vc01-workloads-1"
resourcePool: "my-cluster/Resources"
datastore: "vc01-datastore-1"
caCertPath: "/usr/local/google/home/me/certs/vc01-cert.pem""
credentials:
fileRef:
path: "credential.yaml"
entry: "vCenter"
dataDisk: "vc01-admin-disk.vmdk"
network:
hostConfig:
dnsServers:
- "203.0.113.1"
- "198.51.100.1"
ntpServers:
- "216.239.35.4"
ipMode:
type: "static"
serviceCIDR: "10.96.232.0/24"
podCIDR: "192.168.0.0/16"
vCenter:
networkName: "vc01-net-1"
loadBalancer:
vips:
controlPlaneVIP: "172.16.20.59"
addonsVIP: "172.16.20.60"
kind: "MetalLB"
antiAffinityGroups:
enabled: false
componentAccessServiceAccountKeyPath: "sa-key.json"
gkeConnect:
projectID: "my-project-123"
registerServiceAccountKeyPath: "connect-register-sa-2203040617.json"
stackdriver:
projectID: "my-project-123"
clusterLocation: "us-central1"
enableVPC: false
serviceAccountKeyPath: "log-mon-sa-2203040617.json"
disableVsphereResourceMetrics: false
Convalida il file di configurazione del cluster di amministrazione
Verifica che il file di configurazione del cluster di amministrazione sia valido e possa essere utilizzato per la creazione del cluster:
gkectl check-config --config admin-cluster.yaml
Prepara l'ambiente vSphere
Esegui gkectl prepare
per inizializzare l'ambiente vSphere:
gkectl prepare --config admin-cluster.yaml --skip-validation-all
Crea il cluster di amministrazione
Crea il cluster di amministrazione:
gkectl create admin --config admin-cluster.yaml
Riprendi la creazione del cluster di amministrazione dopo un errore
Se la creazione del cluster di amministrazione non riesce o viene annullata, puoi eseguire di nuovo il comando create
:
gkectl create admin --config admin-cluster.yaml
Individua il file kubeconfig del cluster di amministrazione
Il comando gkectl create admin
crea un file kubeconfig denominato
kubeconfig
nella directory corrente. Avrai bisogno di questo file kubeconfig in un secondo momento per interagire con il cluster di amministrazione.
Verifica che il cluster di amministrazione sia in esecuzione
Verifica che il cluster di amministrazione sia in esecuzione:
kubectl get nodes --kubeconfig kubeconfig
L'output mostra i nodi del cluster di amministrazione. Ad esempio:
gke-admin-master-hdn4z Ready control-plane,master ...
gke-admin-node-7f46cc8c47-g7w2c Ready ...
gke-admin-node-7f46cc8c47-kwlrs Ready ...
Creazione di un cluster utente
Puoi creare un cluster utente nella console Google Cloud o dalla riga di comando nella workstation di amministrazione.
Console Questa sezione mostra come creare un cluster utente configurato per l'infrastruttura minima con MetalLB come bilanciatore del carico.
Quando crei un cluster utente, Google Cloud Console abilita automaticamente l'API GKE On-Prem nel progetto Google Cloud che selezioni per la creazione del cluster. L'API GKE On-Prem viene eseguita nell'infrastruttura di Google Cloud e la console Google Cloud utilizza questa API per creare il cluster nel tuo data center vSphere. Per gestire i tuoi cluster, l'API GKE-On-Prem deve archiviare i metadati sullo stato del tuo cluster nell'area geografica di Google Cloud specificata da te durante la creazione del cluster. Questi metadati consentono all'API GKE On-Prem di gestire il ciclo di vita dei cluster utente e di non includere dati specifici del carico di lavoro.
In Google Cloud Console, vai alla pagina Cluster Anthos.
Vai alla pagina Cluster Anthos
Seleziona il progetto Cloud in cui vuoi creare il cluster.
Il progetto selezionato viene utilizzato anche come progetto host del parco risorse .
Deve essere lo stesso progetto in cui è registrato il cluster di amministrazione.
Una volta creato, il cluster utente viene registrato automaticamente nel parco risorse del progetto selezionato.
Fai clic su Crea cluster .
Nella finestra di dialogo, fai clic su On-premise .
Accanto a VMware vSphere , fai clic su Configura .
Rivedi i prerequisiti e fai clic su Continua .
Nozioni di base sul cluster
Inserisci un nome per il cluster utente.
In Cluster di amministrazione , seleziona il cluster di amministrazione dall'elenco. Se il cluster di amministrazione che vuoi utilizzare non viene visualizzato, consulta la sezione per la risoluzione dei problemi Il cluster di amministrazione non viene visualizzato nell'elenco a discesa Nozioni di base sul cluster .
Nel campo GCP API Location , seleziona l'area geografica Google Cloud dall'elenco. Oltre a controllare la regione in cui viene eseguita l'API GKE On-Prem, questa impostazione controlla la regione in cui è archiviato quanto segue:
I metadati del cluster utente necessari dall'API GKE On-Prem per gestire il ciclo di vita del cluster
Dati di Cloud Logging e Cloud Monitoring dei componenti di sistema
Audit log amministratore creato da Cloud Audit Logs
Seleziona la versione di Cluster Anthos su VMware per il tuo cluster utente.
Fai clic su Continua per andare alla sezione Networking .
Networking
In questa sezione specifichi gli indirizzi IP dei nodi, dei pod e dei servizi del tuo cluster. Un cluster utente deve avere un indirizzo IP per ogni nodo e un indirizzo IP aggiuntivo da utilizzare per un nodo temporaneo durante l'upgrade del cluster utente. Per ulteriori informazioni, consulta la pagina relativa al
numero di indirizzi IP richiesti da un cluster utente.
Nella sezione IP nodo , seleziona la modalità IP per il cluster utente.
Seleziona una delle seguenti opzioni:
Se hai selezionato DHCP , vai al passaggio successivo per specificare i CIDR dei servizi e dei pod . In Modalità IP statico , fornisci le seguenti informazioni:
Inserisci l'indirizzo IP del Gateway per il cluster utente.
Inserisci la subnet mask per i nodi del cluster utente.
Nella sezione Indirizzi IP , inserisci gli indirizzi IP e, facoltativamente,
i nomi host per i nodi nel cluster utente. Puoi inserire un singolo indirizzo IP v4 (ad esempio 192.0.2.1) o un blocco CIDR negli indirizzi IPv4, ad esempio 192.0.2.0/24.
Se inserisci un blocco CIDR, non inserisci un nome host.
Se inserisci un singolo indirizzo IP, puoi facoltativamente inserire un nome host. Se non inserisci un nome host, i cluster Anthos su VMware utilizzano il nome della VM di vSphere come nome host.
Fai clic su + Aggiungi indirizzo IP , se necessario, per inserire altri indirizzi IP.
Nella sezione CIDR dei servizi e dei pod , la console Google Cloud fornisce i seguenti intervalli di indirizzi per il servizio e il pod Kubernetes:
CIDR servizio : 10.96.0.0/20
CIDR pod : 192.168.0.0/16
Se preferisci inserire i tuoi intervalli di indirizzi, consulta
Indirizzi IP per pod e servizi
per le best practice.
Se hai selezionato Modalità IP statico , specifica le seguenti informazioni nella sezione Configurazione host :
Inserisci gli indirizzi IP dei server DNS.
Inserisci gli indirizzi IP dei server NTP.
Facoltativamente, inserisci i domini di ricerca DNS.
Fai clic su Continua per andare alla sezione Bilanciatore del carico .
Bilanciatore del carico
Configura MetalLB come
bilanciatore del carico.
In Tipo di bilanciatore del carico , lascia selezionato MetalLB .
Nella sezione IP virtuali , inserisci quanto segue:
VIP del piano di controllo : l'indirizzo IP di destinazione da utilizzare per il traffico inviato al server server API Kubernetes
del cluster utente. Questo indirizzo IP deve trovarsi nello stesso dominio L2
dei nodi del cluster di amministrazione. Non aggiungere questo indirizzo nella sezione
Pool di indirizzi .
VIP Ingress : l'indirizzo IP da configurare sul bilanciatore del carico per il proxy in entrata. Devi aggiungerlo a un pool di indirizzi nella sezione
Pool di indirizzi .
Nella sezione Pool di indirizzi , specifica un pool di indirizzi per il
VIP in entrata.
Fai clic su + Aggiungi intervallo di indirizzi IP .
Inserisci un nome per il pool di indirizzi.
Inserisci un intervallo di indirizzi IP in una notazione CIDR
(ad es. 192.0.2.0/26) o la notazione dell'intervallo (ad es. 192.0.2.64-192.0.2.72).
Gli indirizzi IP in ogni pool non possono sovrapporsi e devono trovarsi nella stessa subnet dei nodi del cluster.
In Assegnazione di indirizzi IP , seleziona una delle seguenti opzioni:
Automatica : scegli questa opzione se vuoi che il controller MetalLB assegni automaticamente gli indirizzi IP dal pool di indirizzi ai servizi di tipo LoadBalancer
.
Manuale : scegli questa opzione se intendi utilizzare gli indirizzi del pool per specificare manualmente gli indirizzi per i servizi di tipo
LoadBalancer
Fai clic su Evita errori di indirizzi IP se vuoi che il controller MetalLB non utilizzi indirizzi del pool che terminano con .0 o .255. In questo modo si evita il problema dei dispositivi consumer buggy che reindirizzano per errore il traffico inviato a tali indirizzi IP speciali.
Ripeti queste operazioni in base alle necessità. Al termine, fai clic su Fine .
Fai clic su Continua .
Piano di controllo
Rivedi i valori predefiniti configurati per i nodi nel cluster di amministrazione che eseguono i componenti del piano di controllo per il cluster utente. I valori predefiniti sono sufficienti per l'infrastruttura minima, ma puoi modificarli se necessario.
Fai clic su Continua .
Funzionalità
Deseleziona Attiva gruppi anti-affinità . Quando hai configurato l'infrastruttura minima , hai creato un solo host ESXi, quindi non devi attivare i gruppi anti-affinità .
Fai clic su Continua .
Pool di nodi
Il cluster verrà creato con almeno un pool di nodi. Un pool di nodi è un
modello per i gruppi di nodi creati in questo cluster. Per scoprire di più, consulta Creazione e gestione dei pool di nodi .
Rivedi i valori predefiniti configurati per il pool di nodi. I valori predefiniti sono sufficienti per l'infrastruttura minima, ma puoi modificarli se necessario.
Verifica e completa
Fai clic su Verifica e completa per creare il cluster utente. La creazione del cluster utente richiede almeno 10 minuti. Google Cloud Console mostra i messaggi di stato durante la verifica delle impostazioni e crea il cluster nel data center.
L'operatore che crea il cluster utente nella console Google Cloud
viene collegato automaticamente al cluster dopo la sua creazione. Gli altri operatori devono seguire i passaggi descritti in Accesso a un cluster da Cloud Console per ottenere l'accesso al cluster.
Se si verifica un errore durante la verifica delle impostazioni, Google Cloud Console mostra un messaggio di errore che dovrebbe essere abbastanza chiaro da consentirti di risolvere il problema di configurazione e riprova a creare il cluster.
Per saperne di più sui possibili errori e su come correggerli, consulta la pagina Risolvere i problemi relativi alla creazione di cluster utente in Google Cloud Console .
Crea il file kubeconfig del cluster utente
Per accedere al cluster utente nel tuo data center dalla riga di comando, devi ottenere un file kubeconfig
dal cluster di amministrazione. Dopo che Google Cloud Console indica che lo stato del cluster utente è integro, esegui il comando seguente sulla workstation di amministrazione per salvare un nuovo file kubeconfig
per il cluster utente in locale. Sostituisci quanto segue:
CLUSTER_NAME : il nome del cluster utente appena creato
ADMIN_CLUSTER_KUBECONFIG : il percorso del file del cluster di amministrazione kubeconfig
USER_CLUSTER_KUBECONFIG : nome del file del cluster utente
kubeconfig
generato dal comando
kubectl get secret admin \
--kubeconfig ADMIN_CLUSTER_KUBECONFIG \
-n CLUSTER_NAME \
-o=jsonpath='{.data.admin\.conf}' | base64 -d > USER_CLUSTER_KUBECONFIG
Dopo aver salvato il file, puoi iniziare ad accedere al cluster utente utilizzando kubectl
, ad esempio:
kubectl --kubeconfig USER_CLUSTER_KUBECONFIG get namespaces
Riga di comando
Stabilisci una connessione SSH alla tua workstation di amministrazione.
Specifica IP statici per il cluster utente.
Per specificare gli indirizzi IP statici da utilizzare per il tuo cluster utente, crea un file di blocco IP denominato user-cluster-ipblock.yaml
. Sono necessari tre indirizzi IP per i nodi del cluster utente e un indirizzo aggiuntivo da utilizzare temporaneamente durante gli upgrade.
Ecco un esempio di file di blocco IP con quattro indirizzi:
blocks:
- netmask: 255.255.255.0
gateway: 172.16.20.1
ips:
- ip: 172.16.20.55
hostname: user-vm-1
- ip: 172.16.20.56
hostname: user-vm-2
- ip: 172.16.20.57
hostname: user-vm-3
- ip: 172.16.20.58
hostname: user-vm-4
Compila il file di configurazione del cluster utente
Quando gkeadm
ha creato la workstation di amministrazione, ha generato un file di configurazione denominato user-cluster.yaml
. Questo file di configurazione consente di creare il cluster utente.
Acquisisci familiarità con il file di configurazione del cluster utente.
Analizza la documentazione per il file di configurazione del cluster utente per avere un'idea generale dei contenuti del file. Puoi anche tenere la pagina aperta in una scheda o in una finestra separata, in modo da potervi fare riferimento mentre compili i valori per i campi.
Apri user-cluster.yaml
per la modifica.
Molti campi del file di configurazione del cluster utente sono già compilati con valori predefiniti, valori generati o valori che hai fornito durante la creazione della workstation di amministrazione. Puoi lasciare invariati i campi.
Imposta nome su un nome a tua scelta per il cluster utente.
Compilare i campi della sezione Rete
Inserisci gli indirizzi IP per i seguenti campi nella sezione network.hostConfig :
dnsServers:
ntpServers:
Imposta network.ipMode.type su "static"
.
Imposta network.ipMode.ipBlockFilePath su "user-cluster-ipblock.yaml"
Inserisci o mantieni i
valori predefiniti
per
network.serviceCIDR
e
network.podCIDR .
Compilare i campi della sezione bilanciatore del carico
Compila i seguenti campi nella sezione
loadBalancer.vips :
controlPlaneVIP:
ingressVIP:
Imposta loadBalancer.kind su "MetalLB"
.
Compila la sezione
loadBalancer.metalLB . Per maggiori informazioni, consulta la pagina relativa al
bilanciamento del carico in bundle con MetalLB .
Per almeno uno dei pool di nodi, imposta enableLoadBalancer
su true
. Per maggiori informazioni, consulta la pagina relativa al
bilanciamento del carico in bundle con MetalLB .
Imposta antiAffinityGroups.enabled su false
.
Esempio di file di configurazione del cluster utente
Ecco un esempio di file di configurazione del cluster utente compilato:
apiVersion: v1
kind: UserCluster
name: "my-user-cluster"
gkeOnPremVersion: "1.11.0-gke.543"
network:
hostConfig:
dnsServers:
- "203.0.113.1"
- "198.51.100.1"
ntpServers:
- "216.239.35.4"
ipMode:
type: "static"
serviceCIDR: "10.96.0.0/20"
podCIDR: "192.168.0.0/16"
loadBalancer:
vips:
controlPlaneVIP: "172.16.20.61"
ingressVIP: "172.16.20.62"
kind: "MetalLB"
metalLB:
addressPools:
- name: "uc-address-pool"
addresses:
- "172.16.20.63-172.16.20.72"
nodePools:
- name: "uc-node-pool"
cpus: 4
memoryMB: 8192
replicas: 3
enableLoadBalancer: true
antiAffinityGroups:
enabled: false
gkeConnect:
projectID: "my-project-123"
registerServiceAccountKeyPath: "connect-register-sa-2203040617.json"
stackdriver:
projectID: "my-project-123"
clusterLocation: "us-central1"
enableVPC: false
serviceAccountKeyPath: "log-mon-sa-2203040617.json"
disableVsphereResourceMetrics: false
autoRepair:
enabled: true
Convalida la configurazione e crea il cluster
Verifica che il file di configurazione del cluster utente sia valido e possa essere utilizzato
per la creazione del cluster:
gkectl check-config --kubeconfig kubeconfig --config user-cluster.yaml
Crea il cluster utente:
gkectl create cluster --kubeconfig kubeconfig --config user-cluster.yaml
La creazione del cluster richiede circa 30 minuti.
Individua il file kubeconfig del cluster utente
Il comando gkectl create cluster
crea un file kubeconfig denominato
USER_CLUSTER_NAME-kubeconfig
nella directory corrente. Questo file kubeconfig ti servirà in un secondo momento per interagire con il cluster utente.
Verifica che il cluster utente sia in esecuzione
Verifica che il cluster utente sia in esecuzione:
kubectl get nodes --kubeconfig USER_CLUSTER_KUBECONFIG
Sostituisci USER_CLUSTER_KUBECONFIG con il percorso del file kubeconfig.
L'output mostra i nodi del cluster utente. Ad esempio:
my-user-cluster-node-pool-69-d46d77885-7b7tx Ready ...
my-user-cluster-node-pool-69-d46d77885-lsvzk Ready ...
my-user-cluster-node-pool-69-d46d77885-sswjk Ready ...
Passaggi successivi
Esegui il deployment di un'applicazione