Utilizza la Google Cloud console per creare un cluster di amministrazione per il software Google Distributed Cloud solo per VMware per utilizzare una GUI per una guida strutturata. Puoi
anche creare un cluster di amministrazione utilizzando gkectl
o la consoleGoogle Cloud .
Prima di iniziare
Assicurati di aver configurato la workstation amministrativa e di poter accedere come descritto in Creazione di una workstation amministrativa.
Assicurati che i file della chiave JSON per i service account si trovino nella workstation amministrativa.
Consulta il documento di pianificazione degli indirizzi IP. Assicurati di avere a disposizione indirizzi IP sufficienti per i tre nodi del control plane e un VIP del control plane. Se prevedi di creare cluster utente kubeception, devi disporre di un numero sufficiente di indirizzi IP disponibili per i nodi del control plane di questi cluster utente.
Rivedi la panoramica del bilanciamento del carico e la tua decisione sul tipo di bilanciatore del carico che vuoi utilizzare. Per i bilanciatori del carico manuali, devi configurare il bilanciatore del carico prima di creare il cluster di amministrazione.
Se utilizzi
gkectlper creare il cluster di amministrazione, decidi se vuoi utilizzare un registro pubblico o privato per i componenti di Google Distributed Cloud. Per informazioni sull'utilizzo di un registro Docker privato, consultaprivateRegistry. Né Terraform né la console Google Cloud supportano l'utilizzo di un registro Docker privato per i componenti di sistema.Decidi il tipo di sistema operativo che vuoi eseguire sui nodi del cluster di amministrazione.
Se la tua organizzazione richiede che il traffico in uscita passi attraverso un server proxy, assicurati di inserire nella lista consentita le API richieste e l'indirizzo di Artifact Registry.
Nella versione 1.29 e successive, i controlli preflight lato server sono abilitati per impostazione predefinita. I controlli preliminari lato server richiedono regole firewall aggiuntive. In Regole firewall per i cluster di amministrazione, cerca "Controlli preliminari" e assicurati che tutte le regole firewall richieste siano configurate. I controlli preliminari lato server vengono eseguiti sul cluster di bootstrap anziché localmente sulla workstation di amministrazione.
Panoramica della procedura
Prima di creare il cluster di amministrazione, devi eseguire il comando
gkectl register bootstrap sulla workstation di amministrazione. Questo comando
esegue il deployment di un cluster Kubernetes in Docker
(kind) sulla workstation di amministrazione. Questo cluster bootstrap ospita i controller Kubernetes necessari per creare il cluster di amministrazione. Quando crei il cluster di amministrazione, i controller del cluster di bootstrap eseguono il provisioning dei nodi, eseguono controlli preflight e registrano il cluster di amministrazione nel parco risorse. Il cluster di bootstrap viene eliminato automaticamente dopo la creazione del cluster di amministrazione.
Di seguito sono riportati i passaggi di alto livello per creare un cluster di amministrazione utilizzando la console:
Nella console, inserisci le informazioni richieste da
gkectl register bootstrap. La console mostra il comandogkectl register bootstrapcon le informazioni che hai inserito. Il comando visualizzato include anche flag per i percorsi che dovrai specificare prima di eseguire il comando.Sulla workstation di amministrazione, esegui
gkectl register bootstrapper creare il cluster di bootstrap. Al termine del comando di creazione del cluster di bootstrap, l'output ti indica di completare la configurazione del cluster di amministrazione. Il processo continua a essere eseguito finché non viene creato il cluster di amministrazione.Torni alla console per completare l'inserimento delle informazioni necessarie per creare il cluster. Durante la creazione del cluster, il comando
gkectl register bootstraprestituisce informazioni sullo stato di avanzamento e scrive i log sulla workstation di amministrazione. Quando viene creato il cluster di amministrazione, il cluster di bootstrap viene eliminato automaticamente.
Inizia a configurare il cluster
Nella console, vai alla pagina Crea un cluster su VMware.
Seleziona il Google Cloud progetto in cui vuoi creare il cluster.
Quando crei il cluster di bootstrap in una sezione successiva, l'ID progetto selezionato viene visualizzato nel comando
gkectl register bootstrapnel flag--project-id.Assicurati che l'opzione Crea un cluster di amministrazione sia selezionata.
Fai clic su Avanti: installa l'ambiente di bootstrap.
Installa ambiente di bootstrap
In questa sezione inserisci le informazioni richieste dal comando gkectl register bootstrap. Man mano che inserisci i valori nei campi dell'interfaccia utente, la console li copia nei flag corrispondenti per il comando gkectl register bootstrap visualizzato nella sezione Ambiente di bootstrap dalla workstation amministrativa nella parte inferiore della pagina.
Impostazioni di base dell'ambiente di bootstrap
Inserisci un nome per il cluster di amministrazione. La console utilizza il nome del cluster come valore del flag
--target-cluster-namenel comandogkectl register bootstrapvisualizzato nella parte inferiore della pagina. Il nome ha una lunghezza massima di 20 caratteri.Nel campo Google Cloud Località API, seleziona una Google Cloud regione dall'elenco. Questa impostazione specifica la regione in cui vengono eseguiti i seguenti servizi e API:
- API GKE On-Prem (
gkeonprem.googleapis.com) - Servizio flotta (
gkehub.googleapis.com) - Servizio Connect (
gkeconnect.googleapis.com)
Questa impostazione controlla anche la regione in cui vengono archiviati:
- I metadati del cluster necessari all'API GKE On-Prem per gestire il ciclo di vita del cluster
- I dati di Cloud Logging e Cloud Monitoring dei componenti di sistema
- Il log di controllo amministrativo creato da Cloud Audit Logs
Il campo Google Cloud API Location corrisponde al flag
--locationnel comandogkectl register bootstrap.- API GKE On-Prem (
Nel campo Versione del cluster di amministrazione, inserisci la versione da utilizzare per creare il cluster. La versione selezionata qui deve corrispondere a quella del bundle specificata nel flag
--bundle-pathdel comandogkectl register bootstrap.
Configurazione vCenter
Se hai utilizzato gkeadm per creare la tua workstation amministrativa, apri il file di configurazione della workstation amministrativa per poter copiare i valori dalla sezione vCenter ai campi della console. Tieni presente che anche il file di configurazione del cluster di amministrazione generato contiene queste informazioni.
La maggior parte dei campi in questa sezione è immutabile. Consulta la
sezione vCenter
nel riferimento al file di configurazione del cluster di amministrazione se devi sapere se un campo
è modificabile o immutabile.
Nel campo Indirizzo, inserisci l'indirizzo di vCenter Server.
File di configurazione della workstation amministrativa: utilizza il valore del campo
vCenter.credentials.address.Il campo Indirizzo corrisponde al flag
--vcenter-addressnel comandogkectl register bootstrap.
Nel campo Datacenter, inserisci il nome del tuo data center vCenter.
File di configurazione della workstation amministrativa: utilizza il valore del campo
vCenter.datacenter.Il campo Datacenter corrisponde al flag
--vcenter-datacenternel comandogkectl register bootstrap.
Nel campo Nome cluster, inserisci il nome del tuo cluster vCenter.
File di configurazione della workstation amministrativa: utilizza il valore del campo
vCenter.cluster.Il campo Nome cluster corrisponde al flag
--vcenter-clusternel comandogkectl register bootstrap.
Nel campo Pool di risorse, inserisci il nome o il percorso del tuo pool di risorse vCenter.
File di configurazione della workstation amministrativa: utilizza il valore del campo
vCenter.resourcePool.Il campo Pool di risorse corrisponde al flag
--vcenter-resource-poolnel comandogkectl register bootstrap.
Configura un'opzione di archiviazione inserendo uno dei seguenti valori:
Campo Datastore: inserisci il nome del tuo datastore vCenter. Il valore specificato deve essere un nome, non un percorso. Se devi inserire un percorso, inseriscilo nel campo Cartella.
File di configurazione della workstation amministrativa: utilizza il valore del campo
vCenter.datastore.Il campo Datastore corrisponde al flag
--vcenter-datastorenel comandogkectl register bootstrap.
Campo Nome criterio di archiviazione: inserisci il nome del criterio di archiviazione VM per i nodi del cluster. Per saperne di più, consulta Configura una policy di archiviazione.
File di configurazione della workstation amministrativa: utilizza il valore del campo
vCenter.storagePolicyName.Il campo Nome policy di archiviazione corrisponde al flag
--vcenter-storage-policynel comandogkectl register bootstrap.
Devi inserire un valore nel campo Datastore o nel campo Nome policy di archiviazione, ma non in entrambi.
(Facoltativo) Nel campo Cartella, inserisci il nome della cartella vCenter in cui si troveranno le VM del cluster.
File di configurazione della workstation amministrativa: utilizza il valore del campo
vCenter.folder.Il campo Cartella corrisponde al flag
--vcenter-foldernel comandogkectl register bootstrap.
Nel campo Rete, inserisci il nome della tua rete vCenter.
File di configurazione della workstation amministrativa: utilizza il valore del campo
vCenter.network.Il campo Rete corrisponde al flag
--vcenter-networknel comandogkectl register bootstrap.
Nel campo Percorso certificato CA, inserisci il percorso del certificato CA radice per il tuo vCenter Server.
Se hai utilizzato
gkeadmper creare la workstation di amministrazione,gkeadmha copiato il file del certificato CA che avevi localmente nella workstation di amministrazione.Il campo Percorso certificato CA corrisponde a
--vcenter-ca-cert-pathnel comandogkectl register bootstrap.
Recuperare il certificato CA
Dopo aver creato il cluster di bootstrap, devi fornire il certificato CA vCenter in formato PEM nel campo Dati certificato CA della pagina Informazioni di base del cluster. Esegui questo comando per visualizzare il certificato:
cat CA_CERT_PATH
Sostituisci CA_CERT_PATH con il percorso del
certificato CA radice per vCenter Server. Se esegui questo comando
localmente, utilizza il percorso in vCenter.caCertPath nel file di configurazione
della workstation amministrativa.
Copia l'intero certificato in un editor di testo in modo da poterlo incollare nel campo Dati certificato CA nella pagina Informazioni di base del cluster dopo la creazione del cluster di bootstrap.
Esegui il bootstrap dalla workstation di amministrazione
Quando esegui il comando gkectl register bootstrap, ti viene chiesto il nome utente e la password dell'account vCenter. Assicurati di avere a disposizione le credenziali. Se hai utilizzato gkeadm per creare la workstation di amministrazione, il nome utente
e la password si trovano nel file credential.yaml.
Scorri fino alla sezione Esegui il bootstrap dall'ambiente della workstation di amministrazione per visualizzare il comando
gkectl register bootstrap.Lascia aperta questa pagina mentre vai alla workstation di amministrazione per creare il cluster di bootstrap.
Copia e incolla il comando
gkectl register bootstrapin un editor di testo in modo da poter specificare i valori per i seguenti flag:./gkectl register bootstrap \ ... --bundle-path=BUNDLE_PATH \ ... --component-access-service-account-key-path=COMPONENT_ACCESS_SA_PATH \ --register-service-account-key-path=CONNECT_REGISTER_SA_PATH \ --stackdriver-service-account-key-path=LOG_MON_SA_PATH \ --cloud-audit-logging-service-account-key-path=CLOUD_AUDIT_SA_PATH \ --admin-kubeconfig-out=KUBECONFIG_NAMESostituisci quanto segue con i percorsi della workstation di amministrazione:
BUNDLE_PATH: il percorso del file bundle. Se hai utilizzatogkeadmper creare la workstation di amministrazione, il file del pacchetto si trova in/var/lib/gke/bundles/. Il nome del file dipende dalla versione di Google Distributed Cloud, ad esempiogke-onprem-vsphere-1.31.0-gke.889-full.tgz.COMPONENT_ACCESS_SA_PATH: il percorso del file della chiave per il account di servizio di accesso ai componenti.CONNECT_REGISTER_SA_PATH: il percorso del file della chiave per il account di servizio connect-register.LOG_MON_SA_PATH: il percorso del file della chiave per il account di servizio di logging e monitoraggio.CLOUD_AUDIT_SA_PATH: il percorso del account di servizio di audit logging. Se non hai creato un account di servizio di audit logging, specifica il percorso del file della chiave per il service account di logging e monitoraggio.KUBECONFIG_NAME: il nome del file kubeconfig che viene creato dal comandogkectl register bootstrap. Se non specifichi questo flag, il comando crea il file con il nomekubeconfignella directory di lavoro corrente. Se esiste un file chiamatokubeconfig, il comando lo sovrascrive.
Inoltre, se hai utilizzato
gkeadmper creare la workstation amministrativa,gkectlè stato scaricato nella directory/usr/bin/. In questo caso, rimuovi./dall'inizio del comando, poichégkectlnon si trova nella directory di lavoro corrente.Utilizza SSH per connetterti alla workstation amministrativa.
Copia il comando e incollalo in una finestra del terminale sulla workstation di amministrazione.
Quando richiesto, inserisci (o copia e incolla) il nome utente vCenter. Il nome utente non viene visualizzato sullo schermo.
Quando richiesto, inserisci (o copia e incolla) la password di vCenter. La password non viene visualizzata sullo schermo.
Il comando esegue numerose convalide. Dopo che gkectl ha creato correttamente il cluster di bootstrap, viene visualizzato un output simile al seguente, troncato per facilitarne la lettura:
Running workstation validations
- Validation Category: Workstation
- [SUCCESS] Workstation OS
- [SUCCESS] Workstation Hardware
- [SUCCESS] Workstation Package
- [SUCCESS] Workstation NTP
- [SUCCESS] Workstation Docker
...
All validation results were SUCCESS.
Unpacking GKE on-prem bundle: /var/lib/gke/bundles/gke-onprem-vsphere-1.31.0-gke.889-full.tgz
...
Successfully created and registered the bootstrap cluster
...
Waiting for preflight checks to run or OnPremAdminCluster to be applied...... -
Il processo continua a essere eseguito finché non viene creato il cluster di amministrazione.
Se esci dal comando gkectl register bootstrap prima della creazione del cluster di amministrazione, la creazione del cluster di amministrazione non va a buon fine e dovrai eliminare il cluster di bootstrap utilizzando il seguente comando:
gkectl delete bootstrap \
--target-cluster-name=ADMIN_CLUSTER_NAME \
--project-id=PROJECT_ID \
--location=REGION \
--register-service-account-key-path=CONNECT_REGISTER_SA_PATH
Completa la configurazione del cluster di amministrazione
Torna alla console e segui questi passaggi:
Nella pagina Installa ambiente bootstrap, fai clic su Controlla connessione.
Se l'operazione riesce, la console visualizza Connessione stabilita.
Prima di continuare, devi stabilire la connessione al cluster di bootstrap. Se la connessione non viene stabilita, controlla gli argomenti che hai specificato per il comando
gkectl register bootstrap:Assicurati che il valore di
--target-cluster-namecorrisponda al nome del cluster di amministrazione visualizzato nella sezione Nozioni di base sull'ambiente di bootstrap.Assicurati che il valore di
--project-idcorrisponda all'ID del progetto che hai selezionato nella console.
Se devi modificare il nome del cluster di bootstrap, l'ID progetto o altri valori dei flag, procedi nel seguente modo:
- Inserisci
Ctrl-Cper uscire dagkectl register bootstrap. Elimina il cluster di bootstrap:
gkectl delete bootstrap \ --target-cluster-name=ADMIN_CLUSTER_NAME \ --project-id=PROJECT_ID \ --location=REGION \ --register-service-account-key-path=CONNECT_REGISTER_SA_PATH
Esegui di nuovo il comando
gkectl register bootstrap.
Fai clic su Avanti: nozioni di base del cluster per iniziare a configurare il cluster di amministrazione.
Impostazioni di base del cluster
Nel campo Dati certificato CA, copia e incolla l'intero certificato CA vCenter in formato PEM come descritto in precedenza nella sezione Recuperare il certificato CA.
Nella sezione Autorizzazione, inserisci gli indirizzi email degli utenti a cui vuoi concedere il ruolo Kubernetes
clusterrole/viewdi sola lettura. Tieni presente che il tuo indirizzo email viene aggiunto automaticamente. I criteri di controllo dell'accesso basato sui ruoli (RBAC) applicati consentono agli utenti di eseguire comandi di sola lettura tramite il gateway di connessione.Fai clic su Next Control Plane (Control Plane successivo).
Control plane
Esamina le impostazioni predefinite nella sezione Control plane e modificale in base alle tue esigenze.
Nella sezione IP dei nodi del control plane, inserisci gli indirizzi IP nei seguenti campi:
Gateway: l'indirizzo IP del gateway predefinito per la subnet che contiene i nodi del cluster.
Netmask: la maschera di rete per la subnet che contiene i nodi del cluster.
Indirizzi IP: inserisci l'indirizzo IP e, facoltativamente, il nome host per i tre nodi del control plane.
Fai clic su Avanti: networking.
Networking
In questa sezione devi specificare le informazioni di networking necessarie per creare il cluster di amministrazione.
Nella sezione CIDR servizi e pod, accetta i valori predefiniti per gli intervalli di indirizzi IP dei pod e dei servizi Kubernetes oppure inserisci intervalli di indirizzi CIDR diversi.
CIDR servizio: intervallo più piccolo possibile:
/24. Intervallo più ampio possibile:/12.CIDR pod: intervallo più piccolo possibile:
/18. Intervallo più grande possibile: /8`.
Nella sezione Host config, specifica i server NTP, i server DNS e, facoltativamente, i domini di ricerca DNS utilizzati dalle VM corrispondenti ai nodi del cluster. Dopo aver creato il cluster, non puoi modificare questi valori.
Fai clic su Avanti: bilanciatore del carico.
Bilanciatore del carico
In questa sezione, seleziona il tipo di bilanciatore del carico da utilizzare. Per ulteriori informazioni, consulta Panoramica del bilanciamento del carico.
Nell'elenco Tipo di bilanciatore del carico, seleziona un bilanciatore del carico:
In bundle con MetalLB: il bilanciatore del carico MetalLB è in bundle con e richiede meno configurazione rispetto al bilanciamento del carico manuale. I componenti MetalLB vengono eseguiti sui nodi del cluster, quindi non devi creare VM separate per il bilanciatore del carico.
Manuale: puoi utilizzare qualsiasi bilanciatore del carico a tua scelta, a condizione che lo configuri prima di creare il cluster. Con qualsiasi bilanciatore del carico configurato manualmente, devi configurare le mappature tra IP virtuali (VIP), indirizzi dei nodi e valori nodePort.
Nel campo VIP del control plane, inserisci il VIP da utilizzare per il traffico inviato al server API Kubernetes.
Fai clic su Verifica e crea.
La console mostra i messaggi di stato durante la verifica delle impostazioni e la creazione del cluster nel data center.
Se si verifica un problema con la configurazione, la console visualizza un messaggio di errore che dovrebbe essere abbastanza chiaro da consentirti di risolvere il problema e riprovare a creare il cluster.
I dettagli sul processo di creazione del cluster vengono visualizzati sulla workstation di amministrazione. Se i controlli preflight vengono superati, viene visualizzato un messaggio simile al seguente:
[2023-03-22 23:12:47+0000] Waiting for cluster kubeconfig to become ready OK [2023-03-22 23:15:47+0000] Writing kubeconfig file [2023-03-22 23:15:47+0000] kubeconfig of cluster being created is present at gkectl-workspace/abm-cluster-1/abm-cluster-1-kubeconfig [2023-03-22 23:15:47+0000] Please restrict access to this file as it contains authentication credentials of your cluster. [2023-03-22 23:15:47+0000] Waiting for cluster to become ready OK [2023-03-22 23:20:17+0000] Please run [2023-03-22 23:20:17+0000] kubectl --kubeconfig gkectl-workspace/abm-cluster-1/abm-cluster-1-kubeconfig get nodes [2023-03-22 23:20:17+0000] to get cluster nodes status. [2023-03-22 23:20:17+0000] Waiting for node pools to become ready OK [2023-03-22 23:20:37+0000] Waiting for metrics to become ready in GCP OK [2023-03-22 23:25:38+0000] Waiting for cluster API provider to install in the created admin cluster OK [2023-03-22 23:25:48+0000] Moving admin cluster resources to the created admin cluster [2023-03-22 23:25:51+0000] Waiting for node update jobs to finish OK [2023-03-22 23:27:41+0000] Flushing logs... OK [2023-03-22 23:27:41+0000] Deleting membership... OK [2023-03-22 23:27:42+0000] Deleting bootstrap cluster.
Connettiti al cluster di amministrazione
Il comando gkectl register bootstrap crea un file kubeconfig per il
cluster di amministrazione sulla workstation di amministrazione. Se non hai specificato il flag
--admin-kubeconfig-out quando hai eseguito gkectl register bootstrap, il
comando crea un file kubeconfig denominato kubeconfig nella directory in
cui hai eseguito il comando.
Devi limitare l'accesso a questo kubeconfig perché contiene
le credenziali di autenticazione per il cluster.
Inoltre, puoi eseguire comandi kubectl di sola lettura tramite
Connect Gateway.
Esegui questo comando su un computer su cui è installata gcloud CLI per ottenere una voce
kubeconfigche può accedere al cluster tramite il gateway di connessione.gcloud container fleet memberships get-credentials ADMIN_CLUSTER_NAME \ --project=PROJECT_IDL'output è simile al seguente:
Starting to build Gateway kubeconfig... Current project_id: PROJECT_ID A new kubeconfig entry "connectgateway_PROJECT_ID_global_ADMIN_CLUSTER_NAME" has been generated and set as the current context.Ora puoi eseguire comandi
kubectldi sola lettura tramite il gateway di connessione, ad esempio:kubectl get pods -ASe hai bisogno di privilegi amministrativi completi per il cluster amministrativo, consulta Configurare il gateway di connessione.