Come hai letto nella nostra guida al ciclo di vita del cluster, in qualità di utente GKE in genere utilizzi gli strumenti Google Cloud per la gestione dei cluster e gli strumenti Kubernetes come kubectl
per le attività interne al cluster, come il deployment delle applicazioni. Ciò significa che se hai già familiarità con il deployment dei carichi di lavoro su un'altra implementazione di Kubernetes, il deployment dei carichi di lavoro su GKE dovrebbe comportare molti degli stessi flussi di lavoro (se non hai già familiarità con il deployment dei carichi di lavoro su Kubernetes, consulta Deployment e le altre risorse in Inizia a scoprire Kubernetes).
Tuttavia, GKE fornisce anche funzionalità aggiuntive per il deployment e la gestione dei carichi di lavoro, tra cui strumenti di osservabilità, opzioni di database completamente gestite per applicazioni stateful e opzioni hardware specifiche per tipi di carichi di lavoro speciali, inclusi i carichi di lavoro di AI/ML.
Questa pagina fornisce una rapida panoramica per sviluppatori e amministratori che vogliono eseguire il deployment di carichi di lavoro sui cluster GKE, con link ad alcuni documenti più dettagliati. Puoi trovare molte altre guide e tutorial specifici nelle sezioni Esegui il deployment… della documentazione di base di GKE.
Prima di leggere questa pagina, dovresti avere familiarità con quanto segue:
Ruoli obbligatori
Se non sei il proprietario di un progetto, devi disporre almeno del seguente ruolo Identity and Access Management (IAM) per eseguire il deployment dei workload:
Visualizzatore cluster Kubernetes Engine (
roles/container.clusterViewer
): questo ruolo fornisce l'autorizzazionecontainer.clusters.get
, necessaria per l'autenticazione ai cluster in un progetto Google Cloud . Ciò non ti autorizza a eseguire azioni all'interno di questi cluster. L'amministratore del cluster può autorizzarti a eseguire altre azioni sul cluster utilizzando IAM o Kubernetes RBAC.Per informazioni dettagliate su tutte le autorizzazioni incluse in questo ruolo o per concedere un ruolo con autorizzazioni di lettura/scrittura, consulta la sezione Ruoli Kubernetes Engine nella documentazione IAM.
Per scoprire di più su come funziona controllo dell'accesso in GKE, consulta Controllo dell'accesso.
Applicazioni stateless
Le applicazioni stateless sono applicazioni che non archiviano lo stato dei dati o delle applicazioni nel cluster o in uno spazio di archiviazione permanente. Le applicazioni stateless possono essere deployate direttamente dal menu Carichi di lavoro nella consoleGoogle Cloud , nonché utilizzando l'API Kubernetes. Puoi scoprire come eseguire il deployment di un'applicazione Linux stateless su GKE in Deployment di un'applicazione Linux stateless. Se preferisci, puoi anche scoprire come eseguire il deployment di un'applicazione Windows Server stateless.
Applicazioni stateful e archiviazione
Le applicazioni che devono salvare dati che esistono oltre la durata del pod sono note come applicazioni stateful. Tu o il tuo amministratore potete utilizzare un oggetto PersistentVolume di Kubernetes per eseguire il provisioning di questo spazio di archiviazione. In GKE, l'archiviazione PersistentVolume è supportata dai dischi di Compute Engine. Puoi scoprire come eseguire il deployment di una semplice applicazione stateful su GKE in Deployment di un'applicazione stateful.
Se vuoi che i dati della tua applicazione stateful vengano conservati in un database anziché in uno spazio di archiviazione legato alla durata di un cluster, GKE offre le seguenti opzioni:
- Database completamente gestiti: un database gestito, come Cloud SQL o Spanner, offre un overhead operativo ridotto ed è ottimizzato per l'infrastruttura Google Cloud . I database gestiti richiedono meno impegno per la manutenzione e l'operatività rispetto a un database che implementi direttamente in Kubernetes.
- Applicazione Kubernetes: puoi eseguire il deployment e l'esecuzione di un'istanza di database (ad esempio MySQL o PostgreSQL) su un cluster GKE.
Puoi scoprire molto di più sulle opzioni per i dati in GKE in Dati su GKE e Pianifica i deployment di database su GKE.
Workload AI/ML
GKE offre un supporto completo per il deployment dei workload AI/ML. Ciò include il supporto per l'addestramento e la gestione di modelli su hardware specializzato, nonché l'integrazione flessibile con framework di computing distribuito ed elaborazione dei dati. Per iniziare a saperne di più, consulta le seguenti guide:
- Informazioni sulle TPU in GKE ti introduce all'utilizzo degli acceleratori Cloud TPU per i carichi di lavoro AI/ML in GKE. GKE fornisce il supporto completo per la gestione del ciclo di vita dei nodi TPU e pool di nodi, inclusi la creazione, la configurazione e l'eliminazione delle VM TPU. Puoi eseguire il deployment dei carichi di lavoro TPU sui cluster Standard e Autopilot.
- Informazioni sulle GPU in GKE spiega come richiedere e utilizzare l'hardware GPU con i carichi di lavoro GKE.
Carichi di lavoro con altri requisiti speciali
GKE fornisce funzionalità e guide per aiutarti a eseguire il deployment dei carichi di lavoro con altri requisiti speciali, incluse le applicazioni che richiedono architetture di nodi particolari o che devono eseguire i pod sugli stessi nodi o su nodi separati. Puoi scoprire di più sull'implementazione di alcuni di questi strumenti nelle seguenti guide:
- Classi di computing in Autopilot spiega come scegliere architetture di calcolo specifiche per la pianificazione dei pod durante il deployment delle applicazioni sui cluster Autopilot. Per i cluster standard, puoi specificare direttamente la famiglia di macchine che vuoi utilizzare per i nodi durante la creazione di un cluster.
- Informazioni sulle classi di calcolo personalizzate descrive come creare classi di calcolo personalizzate per una flessibilità ancora maggiore quando specifichi le opzioni hardware per le tue applicazioni sia nei cluster Autopilot che in quelli standard.
- Configura la separazione dei carichi di lavoro in GKE spiega come assicurarti che i pod della tua applicazione vengano eseguiti sulle stesse macchine sottostanti o su macchine diverse.
- GKE Sandbox spiega come proteggere il kernel host utilizzando i pod sandbox quando esegui il deployment di carichi di lavoro sconosciuti o non attendibili.
Osservare i carichi di lavoro
GKE offre una gamma di funzionalità per osservare i carichi di lavoro e la loro integrità, tra cui panoramiche rapide dello stato e delle metriche dei carichi di lavoro nella console Google Cloud , nonché metriche, log e avvisi più approfonditi.
- Scopri di più sull'utilizzo delle pagine GKE nella console Google Cloud in GKE nella consoleGoogle Cloud .
- Scopri di più su come utilizzare App Hub per visualizzare i tuoi workload e servizi.
- Scopri di più su GKE e sull'osservabilità in Observability for GKE. Google Cloud
Gestione del deployment dei carichi di lavoro
Se tu o il tuo amministratore volete configurare una pipeline di integrazione continua e distribuzione continua (CI/CD) per il deployment dei carichi di lavoro, potete trovare best practice e linee guida specifiche per GKE per CI/CD in Best practices for continuous integration and delivery to GKE, nonché tutorial per la configurazione di pipeline CI/CD con strumenti e prodotti specifici.
Passaggi successivi
Scopri di più sugli strumenti per lavorare con GKE:
Scopri come semplificare il deployment dal tuo IDE con Cloud Code nel nostro tutorial Eseguire il deployment e l'aggiornamento da un IDE.