GKE On-Prem è un software cloud ibrido che porta Google Kubernetes Engine (GKE) nei data center on-premise. Con GKE On-Prem, puoi creare, gestire ed eseguire l'upgrade dei cluster Kubernetes nel tuo ambiente on-prem e connettere tali cluster a Google Cloud Console.
Questo argomento offre una panoramica tecnica di GKE On-Prem. Dopo aver completato l'argomento, assicurati di leggere i Requisiti di sistema.
Informazioni su Kubernetes
GKE On-Prem e GKE sono basati su Kubernetes, una piattaforma estensibile open source per la gestione di applicazioni containerizzate. Kubernetes orchestra i cluster, che sono insiemi di nodi (chiamati anche "macchine") che eseguono applicazioni containerizzate.
Introduzione a GKE On-Prem
GKE On-Prem è un componente principale di Anthos. Per utilizzare GKE On-Prem, devi prima contattare il team di vendita di Google e acquistare un abbonamento ad Anthos.
Prepararsi a GKE On-Prem
L'installazione di GKE On-Prem comporta il completamento di alcune attività di configurazione dei prerequisiti. Queste attività sono descritte nelle sezioni seguenti.
Ambiente di virtualizzazione VMware vSphere
Installa GKE On-Prem in un cluster VMware vSphere 6.5 in esecuzione nel tuo ambiente on-prem. vSphere è il software di virtualizzazione del server VMware.
Acquista anche VMware vCenter e VMware ESXi. ESXi è un hypervisor di tipo 1 che puoi installare su un set di host fisici/server nel tuo data center. vCenter è l'interfaccia utente basata su Web di vSphere per la gestione dei servizi di data center; fornisce una visione centrale di tutti gli host ESXi.
Nello specifico, sono necessari i seguenti prodotti VMware con licenza:
- VMware ESXI 6.5, con una versione di licenza Enterprise Plus, installata su un set di host nel tuo data center.
- VMware vCenter 6.5, con una versione di licenza Standard, installata su un host nel tuo data center.
Per saperne di più, consulta le seguenti risorse VMware:
- Requisiti di vSphere
- Confronto tra le versioni VMware vSphere
- Confronto tra le funzionalità VMware vSphere
Bilanciamento del carico
Per il bilanciamento del carico di livello 4, puoi scegliere tra due modalità di bilanciamento del carico: manuale o integrato. La modalità integrata supporta F5 BIG-IP (bilanciatore del carico integrato di GKE On-Prem). Con la modalità manuale, puoi scegliere qualsiasi bilanciatore del carico; al momento GKE On-Prem offre istruzioni documentate per i seguenti bilanciatori del carico:
Configura un bilanciatore del carico nel data center prima di installare GKE On-Prem. Durante l'installazione, scegli se abilitare la modalità di bilanciamento del carico integrata (F5 BIG-IP) o manuale (un bilanciatore del carico a tua scelta). La modalità di bilanciamento del carico manuale richiede l'assegnazione di IP statici per i nodi. Non puoi utilizzare un server DHCP (Dynamic Host Configuration Protocol) con la modalità di bilanciamento del carico manuale.
- Configurazione del bilanciatore del carico
- Requisiti del bilanciatore del carico
- Abilitare il bilanciamento del carico manuale
- Requisiti F5
Autenticazione
Se hai client che devono eseguire l'autenticazione sui tuoi cluster e accedere ai tuoi carichi di lavoro containerizzati, puoi utilizzare OpenID Connect (OIDC) con un provider a tua scelta o con Active Directory Federated Services (ADFS).
Preparazione del tuo progetto Google Cloud in corso...
La preparazione del tuo progetto Google Cloud include:
- Creazione di un progetto Google Cloud e abilitazione delle API necessarie
- Associare i ruoli Identity and Access Management agli account di servizio.
- Scaricare gli strumenti necessari per l'interfaccia a riga di comando (CLI), tra cui HashiCorp Terraform versione 11
Per ulteriori informazioni, consulta i seguenti argomenti:
Crea la workstation di amministrazione
La creazione della workstation di amministrazione include:
- Download del file OVA della workstation di amministrazione che include un file bundle di GKE On-Prem.
- Copiare un file di configurazione Terraform (TF) e di variabili Terraform (TFVARS) e modificarli per riflettere la configurazione vCenter e vSphere.
- Usare Terraform per creare una macchina virtuale (VM) di workstation amministrativa in vSphere.
Per ulteriori informazioni, consulta i seguenti argomenti:
Come funziona GKE On-Prem
Ecco un riepilogo generale dei passaggi effettuati durante un'installazione: Vedi anche la Panoramica dell'installazione.
- Stai utilizzando la connessione SSH alla tua workstation di amministrazione.
- Esegui
gkectl create-config
per generare un file di configurazione GKE On-Prem. Il file di configurazione dichiara una specifica per l'installazione di GKE On-Prem. Puoi modificare il file di configurazione con i valori appropriati per le tue esigenze e il tuo ambiente, come specifiche del cluster, autenticazione OIDC, bilanciamento del carico, Stackdriver Logging, progetto Google Cloud con cui registrarsi e altro ancora.
Esegui
gkectl check-config
per convalidare l'utilizzo del file di configurazione modificato per un'installazione.Esegui
gkectl prepare
per spostare l'immagine del sistema operativo GKE On-Prem in vSphere e contrassegnarla come modello per le VM. Se configuri un registro Docker privato, questo comando esegue anche il push delle immagini container di GKE On-Prem al registro.Esegui
gkectl create cluster --config
con il file di configurazione per creare i cluster GKE On-Prem nel tuo data center.
Al termine di un'installazione riuscita, in vSphere dovresti vedere quanto segue:
Architettura
In GKE On-Prem è presente un cluster di amministrazione e, per impostazione predefinita, tre cluster utente. Sono inoltre disponibili due VM aggiuntive e una VM della workstation di amministrazione. Tutte queste VM vengono eseguite in un unico cluster vSphere.
Workstation di amministrazione
La workstation di amministrazione è la VM in vSphere da cui gli amministratori dei cluster installano e interagiscono con GKE On-Prem. È la prima VM che crei prima di creare qualsiasi altro elemento.
Se sei un amministratore del cluster, utilizzi Terraform per creare la workstation di amministrazione in vSphere. La workstation di amministrazione include:
- Un file del set completo.
- Strumenti dell'interfaccia a riga di comando per interagire con GKE On-Prem, vSphere e Google Cloud.
Per creare la workstation di amministrazione, devi scaricare tre file:
- Il file Open VM (OVA) della workstation di amministrazione. Questa è un'immagine VM con controllo della versione della workstation di amministrazione. Importa questo file in vSphere e contrassegnalo come modello VM. Terraform utilizza il modello per eseguire il deployment della workstation di amministrazione nel cluster vSphere.
- File di configurazione Terraform (TF). Queste sono istruzioni che Terraform usa per creare la workstation di amministrazione nel cluster. Copia questo file sulla tua workstation o laptop locale.
- File di configurazione di Terraform (TFVARS). Le variabili di questo file verranno completate con i valori del tuo ambiente. Il file di configurazione TF fa riferimento alle variabili del file TFVARS. Puoi copiare questo file nella workstation o nel laptop locali.
Cluster di amministrazione
Il cluster di amministrazione è il livello base di GKE On-Prem. Esegue i seguenti componenti GKE On-Prem:
- Piano di controllo dell'amministratore: il piano di controllo dell'amministratore gestisce tutte le chiamate API
gkectl
e Kubernetes da e verso GKE On-Prem. Il piano di controllo dell'amministratore effettua alcune chiamate da e verso le API vCenter. - Piani di controllo utente: un piano di controllo del cluster utente. Instrada le richieste API ai nodi del cluster. Ogni cluster ha il proprio piano di controllo che viene eseguito nel cluster di amministrazione. Inoltre, i piani di controllo degli utenti effettuano chiamate da e verso le API vCenter.
- VM aggiuntive: VM che eseguono i componenti aggiuntivi del cluster di amministrazione, come Grafana, Prometheus, componenti Istio e Stackdriver.
Tieni presente che i piani di controllo utente sono gestiti dal cluster di amministrazione. Vengono eseguiti sui nodi nei cluster di amministrazione, non nei cluster utente stessi. Per gestire i piani di controllo degli utenti, i cluster di amministrazione devono:
- Gestire le macchine che eseguono i piani di controllo del cluster utente.
- Crea, aggiorna ed elimina i componenti del piano di controllo.
- Esporre il server API di Kubernetes al cluster utente.
- Gestire i certificati del cluster.
Cluster utente
I cluster utente consentono di eseguire il deployment dei carichi di lavoro e i servizi containerizzati ed eseguirli.
VM componenti aggiuntivi
GKE On-Prem crea due VM per eseguire i componenti aggiuntivi del cluster di amministrazione, come Grafana, Prometheus, componenti di Istio e Stackdriver.
Informazioni sul pacchetto
Il bundle GKE On-Prem è un archivio TGZ con versione che contiene tutti i componenti necessari per creare ed eseguire l'upgrade dei cluster GKE On-Prem.
Esistono due tipi di pacchetti:
Pacchetto completo
Il set completo, gke-onprem-vsphere-[VERSION]-full.tgz
, è incluso nella workstation di amministrazione. Puoi trovarlo in /var/lib/gke/bundles
. Il bundle completo viene utilizzato per l'installazione di GKE On-Prem per la prima volta.
Si tratta di un file di grandi dimensioni che include:
- un file TAR con immagini container di tutti i componenti del cluster.
- File YAML di questi componenti del cluster.
- Immagine nodo GKE On-Prem.
Esegui l'upgrade del bundle
Il pacchetto di upgrade, gke-onprem-vsphere-[VERSION].tgz
, viene fornito per i cluster di upgrade.
Ogni volta che esegui l'upgrade dei cluster, scarichi il bundle della versione da
Download. Il bundle di upgrade contiene solo file di configurazione YAML, utilizzati per eseguire l'upgrade dei componenti del cluster.
Strumenti dell'interfaccia a riga di comando
Quando installi GKE On-Prem, scarichi i seguenti strumenti dell'interfaccia a riga di comando nell'ambiente della tua workstation o laptop:
govc
terraform
gkectl
kubectl
(inclusa in Google Cloud CLI)gcloud
(incluso nell'interfaccia a riga di comando gcloud)
govc
govc
è l'interfaccia a riga di comando per vSphere. Puoi utilizzare govc
quando crei la workstation di amministrazione e utilizzarla per amministrare il cluster vSphere.
terraform
terraform
è l'interfaccia a riga di comando di HashiCorp Terraform. Utilizzi terraform
per creare ed eseguire l'upgrade della workstation di amministrazione.
gkectl
gkectl
è l'interfaccia a riga di comando per GKE On-Prem. Consulta la sua guida di riferimento.
gkectl
viene utilizzato per molte attività di amministrazione del cluster, tra cui:
- Creazione e gestione dei cluster.
- Diagnostica e risoluzione dei problemi.
- Acquisisci ed esporta i log del cluster.
kubectl
kubectl
è l'interfaccia a riga di comando per Kubernetes. Utilizzi kubectl
per interagire con i cluster Kubernetes e Kubernetes e per attività tra cui:
- Deployment, gestione ed eliminazione dei carichi di lavoro containerizzati in esecuzione nei cluster.
- Gestione, modifica ed eliminazione delle risorse Kubernetes.
gcloud
Google Cloud CLI è l'interfaccia a riga di comando per Google Cloud. Puoi utilizzare l'interfaccia a riga di comando gcloud per diversi scopi, tra cui:
- Autenticazione sul progetto Google Cloud.
- Creazione di account di servizio e relative chiavi private.
- Associare i ruoli Identity and Access Management agli account.
Registrazione dei cluster con Google Cloud Console
Quando crei cluster utente GKE On-Prem, puoi scegliere di abilitare Connect per registrarli automaticamente con Google Cloud Console. Connect ti consente di visualizzare e accedere ai cluster Kubernetes on-premise e su cloud dalla stessa interfaccia utente di Google Cloud.
L'abilitazione di Connect crea un agente Connect in ciascun cluster utente. L'agente Connect è un deployment che stabilisce una connessione criptata di lunga durata a Google Cloud dal cluster utente su cui viene eseguito.
L'immagine container di Connect Agent viene estratta da un repository Container Registry che si trova in gcr.io
.
Se il tuo cluster utente non ha una connessione a gcr.io, devi utilizzare un registro Docker privato per connetterlo a Google Cloud Console.
Controllo delle versioni
Per scoprire tutto come funziona il controllo delle versioni, vedi Versioni.
Risoluzione dei problemi e diagnostica dei problemi
Per risolvere il problema, consulta i seguenti argomenti:
- Per ricevere assistenza per la risoluzione di specifici argomenti, consulta la sezione Risoluzione dei problemi.
- Per diagnosticare i problemi del cluster utilizzando
gkectl
, consulta la pagina Diagnostica dei problemi del cluster. - Per diagnosticare i problemi relativi ai nodi cluster, consulta la sezione Debug dei problemi dei nodi utilizzando la casella degli strumenti di debug.
- Per ricevere assistenza da Google, vedi Ricevere assistenza.
Valori segnaposto nella documentazione di GKE On-Prem
Man mano che utilizzi la documentazione di GKE On-Prem, puoi modificare placeholder values nei blocchi di codice facendo clic su di essi. Nel blocco seguente, fai clic su [YOUR_NAME] e osserva che è modificabile:
Enter your name: [YOUR_NAME]
Questo può essere utile se vuoi inserire i valori segnaposto prima di copiare i comandi ed eseguirli nel tuo ambiente.
Passaggi successivi
Successivamente, leggi i Requisiti di sistema per scoprire di più su come preparare l'ambiente on-prem.