Ottimizza i carichi di lavoro di IA e ML con Managed Lustre di Google Cloud

Last reviewed 2025-06-02 UTC

Questo documento fornisce un'architettura di riferimento che mostra come utilizzare Google Cloud Managed Lustre per ottimizzare le prestazioni dei carichi di lavoro di AI e ML di cui è stato eseguito il deployment su Google Kubernetes Engine (GKE). Il pubblico di destinazione di questo documento include architetti e tecnici professionisti che progettano, eseguono il provisioning e gestiscono lo spazio di archiviazione per i carichi di lavoro di AI su Google Cloud. Il documento presuppone che tu abbia una comprensione del ciclo di vita, dei processi e delle funzionalità di ML.

Managed Lustre è un file system parallelo persistente e completamente Google Cloud-gestito basato su EXAScaler Lustre di DDN. Managed Lustre è ideale per i workload AI che soddisfano questi criteri:

  • Richiedono fino a 8 PiB di capacità di archiviazione.
  • Fornisci accesso a latenza bassissima (inferiore al millisecondo) con throughput elevato, fino a 1 TB/s.
  • Fornire un numero elevato di operazioni di input/output al secondo (IOPS).

Managed Lustre offre i seguenti vantaggi per i workload AI:

  • Costo totale di proprietà (TCO) inferiore per l'addestramento: Managed Lustre riduce i tempi di addestramento fornendo in modo efficiente i dati ai nodi di calcolo. Questa funzionalità contribuisce a ridurre il costo totale di proprietà per l'addestramento di modelli di AI e ML.
  • TCO inferiore per la pubblicazione: Managed Lustre offre funzionalità ad alte prestazioni che consentono un caricamento più rapido dei modelli e una pubblicazione dell'inferenza ottimizzata. Queste funzionalità contribuiscono a ridurre i costi di calcolo e a migliorare l'utilizzo delle risorse.
  • Utilizzo efficiente delle risorse: Managed Lustre ti consente di combinare il checkpointing e l'addestramento in una singola istanza. Questa condivisione delle risorse contribuisce a massimizzare l'utilizzo efficiente del throughput di lettura e scrittura in un unico sistema di archiviazione ad alte prestazioni.

Architettura

Il seguente diagramma mostra un'architettura di esempio per l'utilizzo di Managed Lustre per ottimizzare il rendimento di un workload di addestramento del modello e di un workload di pubblicazione:

Un'architettura utilizza Managed Lustre per ottimizzare le prestazioni di un carico di lavoro di addestramento del modello e di un carico di lavoro di pubblicazione.

I carichi di lavoro mostrati nell'architettura precedente sono descritti in dettaglio nelle sezioni successive. Questa architettura include i seguenti componenti:

  • Cluster Google Kubernetes Engine: GKE gestisce gli host di calcolo su cui vengono eseguiti i processi di addestramento e serving dei modelli di AI e ML. GKE gestisce l'infrastruttura sottostante dei cluster, inclusi il piano di controllo, i nodi e tutti i componenti di sistema.
  • Kubernetes Scheduler: Il piano di controllo GKE pianifica i carichi di lavoro e ne gestisce il ciclo di vita, la scalabilità e gli upgrade.
  • Rete Virtual Private Cloud (VPC): tutte le risorse Google Cloud nell'architettura utilizzano una singola rete VPC.
  • Cloud Load Balancing: in questa architettura, Cloud Load Balancing distribuisce in modo efficiente le richieste di inferenza in entrata degli utenti dell'applicazione ai contenitori di servizio nel cluster GKE. L'utilizzo di Cloud Load Balancing contribuisce a garantire alta disponibilità, scalabilità e prestazioni ottimali per l'applicazione AI e ML. Per ulteriori informazioni, vedi Informazioni sul bilanciamento del carico di GKE.
  • Unità di elaborazione grafica (GPU) o Tensor Processing Unit (TPU): GPU e TPU sono acceleratori di machine learning specializzati che migliorano le prestazioni del tuo workload di AI e ML. Per garantire un'efficienza e una compatibilità ottimali, utilizza lo stesso tipo di acceleratore per l'intero workload di AI e ML. Per saperne di più su come scegliere un tipo di processore appropriato, consulta la sezione Opzioni di acceleratore più avanti in questo documento.
  • Managed Lustre: Managed Lustre accelera l'addestramento e la gestione di AI e ML fornendo un file system parallelo ad alte prestazioni ottimizzato per bassa latenza e throughput elevato. Rispetto all'utilizzo di solo Cloud Storage, l'utilizzo di Managed Lustre riduce significativamente il tempo di addestramento e migliora la reattività dei modelli durante la pubblicazione. Questi miglioramenti si notano soprattutto nei carichi di lavoro impegnativi che richiedono un accesso rapido e coerente ai dati condivisi.
  • Cloud Storage FUSE: Cloud Storage FUSE fornisce spazio di archiviazione permanente ed economico per i tuoi carichi di lavoro AI e ML. Cloud Storage funge da repository centrale per i set di dati di addestramento non elaborati, i checkpoint del modello e i backup del modello. L'utilizzo di Cloud Storage contribuisce a garantire la durabilità, la disponibilità a lungo termine e l'efficienza dei costi per i dati che non vengono utilizzati attivamente nei calcoli.

Carico di lavoro di addestramento

Nell'architettura precedente, di seguito sono riportati i passaggi del flusso di dati durante l'addestramento del modello:

  1. Carica i dati di addestramento in Cloud Storage: carichi i dati di addestramento in un bucket Cloud Storage, che funge da repository centrale sicuro e scalabile e da origine attendibile.
  2. Copia i dati in Managed Lustre: il corpus di dati di addestramento viene trasferito tramite un'API per importare i dati in un'istanza Managed Lustre da Cloud Storage. Il trasferimento dei dati di addestramento ti consente di sfruttare le funzionalità del file system ad alte prestazioni di Managed Lustre per ottimizzare la velocità di caricamento ed elaborazione dei dati durante l'addestramento del modello.
  3. Esegui job di addestramento in GKE: il processo di addestramento del modello viene eseguito sui nodi GKE. Utilizzando Managed Lustre come origine dati anziché caricare i dati direttamente da Cloud Storage, i nodi GKE possono accedere e caricare i dati di addestramento con una velocità notevolmente maggiore e una latenza inferiore. Managed Lustre consente inoltre di ridurre il tempo necessario per l'inizio del trasferimento del primo byte, misurato in base al Time to First Byte (TTFB). L'utilizzo di Managed Lustre consente di ridurre i tempi di caricamento dei dati e accelerare il processo di addestramento complessivo, in particolare per i set di dati di grandi dimensioni che hanno file di lettura di piccole dimensioni e modelli complessi. A seconda dei requisiti del tuo workload, puoi utilizzare GPU o TPU. Per informazioni su come scegliere un tipo di processore appropriato, vedi Opzioni di acceleratore più avanti in questo documento.
  4. Salva i checkpoint di addestramento in Managed Lustre: durante il processo di addestramento, i checkpoint vengono salvati in Managed Lustre in base alle metriche o agli intervalli che definisci. I checkpoint acquisiscono lo stato del modello a intervalli frequenti.

Workload di pubblicazione

Nell'architettura precedente, i passaggi del flusso di dati durante l'erogazione del modello sono i seguenti:

  1. Carica il modello per la pubblicazione: quando il modello è pronto per il deployment, i pod GKE caricano il modello addestrato dall'istanza Managed Lustre ai nodi di pubblicazione. Se l'istanza Managed Lustre che hai utilizzato durante l'addestramento ha una capacità IOPS sufficiente e si trova nella stessa zona degli acceleratori, puoi utilizzare la stessa istanza Managed Lustre per pubblicare il modello. Il riutilizzo dell'istanza Managed Lustre consente una condivisione efficiente delle risorse tra l'addestramento e la pubblicazione. Per mantenere prestazioni e compatibilità ottimali, utilizza lo stesso tipo di processore GPU o TPU selezionato per i nodi GKE di servizio.
  2. Richiesta di inferenza: gli utenti dell'applicazione inviano richieste di inferenza tramite gli endpoint di pubblicazione. Queste richieste vengono indirizzate al servizio Cloud Load Balancing. Cloud Load Balancing distribuisce le richieste in entrata tra i container di servizio nel cluster GKE. Questa distribuzione garantisce che nessun singolo container venga sovraccaricato e che le richieste vengano elaborate in modo efficiente.
  3. Gestione delle richieste di inferenza: quando viene ricevuta una richiesta di inferenza, i nodi di computing accedono al modello precaricato per eseguire i calcoli necessari e generare una previsione.
  4. Invio delle risposte: i container di pubblicazione inviano le risposte tramite Cloud Load Balancing. Cloud Load Balancing instrada le risposte agli utenti dell'applicazione appropriati, completando il ciclo di richieste di inferenza.

Prodotti utilizzati

Questa architettura di riferimento utilizza i seguenti prodotti Google Cloud :

  • Virtual Private Cloud (VPC): un sistema virtuale che fornisce funzionalità di rete globali e scalabili per i tuoi Google Cloud carichi di lavoro. VPC include il peering di rete VPC, Private Service Connect, l'accesso privato ai servizi e VPC condiviso.
  • Google Kubernetes Engine (GKE): un servizio Kubernetes che puoi utilizzare per eseguire il deployment e gestire applicazioni containerizzate su larga scala utilizzando l'infrastruttura di Google.
  • Cloud Storage: uno spazio di archiviazione di oggetti a basso costo e senza limiti per diversi tipi di dati. I dati sono accessibili dall'interno e dall'esterno di Google Cloude vengono replicati in più località per la ridondanza.
  • Google Cloud Managed Lustre: un file system parallelo completamente gestito per AI, computing ad alte prestazioni (HPC) e applicazioni che richiedono un uso intensivo dei dati.

Casi d'uso

Managed Lustre è ideale per i workload AI che richiedono fino a 1 PiB di capacità di archiviazione e che devono fornire un accesso a bassa latenza (inferiore al millisecondo) con throughput e IOPS elevati. Questa sezione fornisce esempi di casi d'uso per i quali puoi utilizzare Managed Lustre.

Elaborazione basata su testo e generazione di testo

Gli LLM sono modelli di AI specializzati progettati specificamente per comprendere ed elaborare dati basati su testo. Gli LLM vengono addestrati su enormi set di dati di testo, il che consente loro di svolgere una serie di attività, tra cui la traduzione automatica, la risposta alle domande e il riassunto del testo. Per facilitare l'addestramento e l'elaborazione batch efficienti, il tuo LLM ha bisogno di un accesso a bassa latenza ai set di dati. Managed Lustre eccelle nelle applicazioni ad alta intensità di dati fornendo l'elevato throughput e la bassa latenza necessari sia per l'addestramento che per l'inferenza, il che si traduce in applicazioni più reattive basate su LLM.

Elaborazione di immagini o video ad alta risoluzione

Le applicazioni di AI e ML tradizionali o i modelli generativi multimodali che elaborano immagini o video ad alta risoluzione, come l'analisi di immagini mediche o i sistemi di guida autonoma, richiedono una grande capacità di archiviazione e un rapido accesso ai dati. Managed Lustre fornisce un file system permanente ad alte prestazioni che consente il caricamento rapido dei dati per accelerare le prestazioni dell'applicazione. Ad esempio, Managed Lustre può archiviare grandi volumi di dati dei pazienti, come risonanze magnetiche e TAC, e può facilitare il caricamento rapido dei dati nei nodi di calcolo per l'addestramento del modello. Questa funzionalità consente ai modelli di AI e ML di analizzare rapidamente i dati per la diagnosi e il trattamento.

Alternative di progettazione

Questa sezione presenta approcci di progettazione alternativi che puoi prendere in considerazione per la tua applicazione di AI e ML in Google Cloud.

Alternativa all'infrastruttura di calcolo

L'architettura di riferimento in questo documento utilizza GKE per i workload AI e ML. A seconda dei requisiti del tuo carico di lavoro, puoi in alternativa eseguire il deployment di istanze Managed Lustre su Compute Engine con Slurm. Ti consigliamo questo approccio se devi integrare la proprietà intellettuale (IP) dell'AI proprietaria in un ambiente scalabile e se hai bisogno di flessibilità e controllo per ottimizzare le prestazioni per carichi di lavoro specializzati.

Compute Engine ti consente di avere un controllo più granulare a livello di sistema operativo rispetto a GKE. Quando utilizzi Compute Engine, puoi:

  • Seleziona, configura e gestisci l'ambiente del sistema operativo all'interno delle macchine virtuali per soddisfare requisiti specifici del carico di lavoro.
  • Personalizza la tua infrastruttura in base alle tue esigenze esatte, inclusa la selezione di tipi di macchine VM specifici.
  • Utilizza la famiglia di macchine ottimizzate per l'acceleratore per migliorare le prestazioni con i tuoi carichi di lavoro di AI.

Slurm è un gestore di risorse e carichi di lavoro open source altamente configurabile. Slurm offre una potente opzione per la gestione dei carichi di lavoro di AI e ti consente di controllare la configurazione e la gestione delle risorse di calcolo. Per utilizzare questo approccio, devi avere competenze in amministrazione di Slurm e gestione del sistema Linux. GKE fornisce un ambiente Kubernetes gestito che automatizza la gestione dei cluster.

Per informazioni sul deployment di Slurm, vedi Deployment di un cluster HPC con Slurm. Puoi anche eseguire il deployment utilizzando Cluster Toolkit con il progetto iniziale Managed Lustre.

Opzioni dell'acceleratore

Gli acceleratori di macchine sono processori specializzati progettati per velocizzare i calcoli necessari per i carichi di lavoro di AI e ML. Puoi scegliere GPU o TPU.

  • Gli acceleratori GPU offrono prestazioni eccellenti per un'ampia gamma di attività, tra cui rendering grafico, addestramento deep learning e computing scientifico. Google Cloud offre un'ampia selezione di GPU per soddisfare esigenze di prestazioni e requisiti di prezzo diversi. Per informazioni sui modelli di GPU e sui prezzi, consulta Prezzi delle GPU.
  • Le TPU sono acceleratori AI progettati su misura, ottimizzati per l'addestramento e l'inferenza di modelli AI di grandi dimensioni. Le TPU sono ideali per una varietà di casi d'uso, tra cui chatbot, generazione di codice, generazione di contenuti multimediali, sintesi vocale, servizi di visione artificiale, motori per suggerimenti e modelli di personalizzazione. Per maggiori informazioni sui modelli e sui prezzi delle TPU, consulta la sezione Prezzi delle TPU.

Alternative di archiviazione per la pubblicazione

Per garantire il massimo livello di disponibilità, utilizza Cloud Storage FUSE con Anywhere Cache e un bucket multiregionale o dual-region. Questa configurazione rende disponibili i modelli AI addestrati in più regioni. Tuttavia, rispetto alle istanze Managed Lustre, Cloud Storage FUSE può avere una velocità effettiva per VM inferiore. Per informazioni su come migliorare le prestazioni con Cloud Storage FUSE, consulta Utilizzare la memorizzazione nella cache dei file di Cloud Storage FUSE.

Google Cloud Hyperdisk ML è una soluzione di archiviazione a blocchi ad alte prestazioni progettata per accelerare i workload di AI e ML su larga scala che richiedono l'accesso in sola lettura a set di dati di grandi dimensioni. È possibile eseguire il provisioning di Hyperdisk ML con un throughput aggregato leggermente superiore con dimensioni del volume più piccole, ma ottiene un throughput per VM inferiore rispetto a Managed Lustre. Inoltre, i volumi Hyperdisk ML possono essere accessibili solo da VM GPU o TPU che si trovano nella stessa zona. Pertanto, per i cluster GKE regionali che gestiscono il traffico da più zone, devi eseguire il provisioning di volumi Hyperdisk ML separati in ogni zona. Il provisioning di più volumi Hyperdisk ML può essere più costoso rispetto all'utilizzo di una singola istanza Managed Lustre regionale.

È anche importante notare che Hyperdisk ML è progettato in modo che, una volta scritti, i dati non possono essere modificati. Questo approccio write once read many (WORM) aiuta a prevenire la corruzione accidentale o le modifiche non autorizzate. Tuttavia, per aggiornare un modello di pubblicazione, non puoi eseguire l'override del modello esistente. Devi invece creare una nuova istanza Hyperdisk ML. Per maggiori informazioni sull'utilizzo di Hyperdisk ML nei carichi di lavoro AI, consulta Accelerare il caricamento dei dati AI/ML con Hyperdisk ML.

Note sul layout

Per progettare un deployment di Managed Lustre che ottimizzi la sicurezza, l'affidabilità, i costi, le operazioni e le prestazioni dei tuoi carichi di lavoro di AI e ML su Google Cloud, utilizza le linee guida nelle sezioni seguenti.

Quando crei un'architettura per il tuo carico di lavoro, tieni presente le best practice e i suggerimenti riportati in Google Cloud Well-Architected Framework: AI and ML Perspective.

Sicurezza, privacy e conformità

Questa sezione descrive le considerazioni per i tuoi workload AI e ML in Google Cloud che soddisfano i tuoi requisiti di sicurezza, privacy e conformità.

Sicurezza SSH

Per facilitare controllo dell'accesso avanzato per le applicazioni eseguite in GKE, puoi utilizzare Identity-Aware Proxy (IAP). IAP si integra con la risorsa GKE Ingress e contribuisce a verificare che solo gli utenti autenticati con il ruolo Identity and Access Management (IAM) corretto possano accedere alle applicazioni. Per maggiori informazioni, consulta Abilitazione di IAP per GKE e Controllo dell'accesso con IAM.

Crittografia dei dati

Per impostazione predefinita, i tuoi dati in GKE, inclusi quelli archiviati nell'istanza Managed Lustre, vengono criptati at-rest e in transito utilizzando Google-owned and Google-managed encryption keys. Come livello aggiuntivo di sicurezza per i dati sensibili, puoi criptare i dati a livello di applicazione utilizzando una chiave di tua proprietà e gestita con Cloud Key Management Service (Cloud KMS). Per ulteriori informazioni, vedi Criptare i secret a livello di applicazione.

Se utilizzi un cluster GKE Standard, puoi utilizzare le seguenti funzionalità aggiuntive di crittografia dei dati:

Isolamento dei dati

Per migliorare la sicurezza e la protezione dei dati, archivia i dati di addestramento in un'istanza Managed Lustre separata dai checkpoint e dai modelli addestrati. L'utilizzo di istanze di archiviazione separate fornisce isolamento delle prestazioni, migliora la sicurezza isolando i dati di addestramento e migliora la protezione dei dati. Sebbene gli elenchi di controllo dell'accesso ti consentano di gestire la sicurezza all'interno di una singola istanza, l'utilizzo di istanze separate fornisce un limite di sicurezza più solido.

Altre considerazioni sulla sicurezza

Nella modalità operativa Autopilot, GKE preconfigura il cluster e gestisce i nodi in base alle best practice di sicurezza, il che ti consente di concentrarti sulla sicurezza specifica del workload. Per saperne di più, consulta Funzionalità di sicurezza di GKE Autopilot e Sicurezza di Kubernetes pronta all'uso con GKE Autopilot.

Per informazioni sulla protezione della privacy dei tuoi dati, vedi Panoramica di Sensitive Data Protection e Ispezione Google Cloud dello spazio di archiviazione e dei database per l'individuazione di dati sensibili.

Per principi e consigli di sicurezza specifici per i workload di AI e ML, consulta Prospettiva AI e ML: sicurezza nel framework Well-Architected.

Affidabilità

Questa sezione descrive i fattori di progettazione da considerare quando utilizzi questa architettura di riferimento per creare e gestire un'infrastruttura affidabile per il tuo deployment regionale in Google Cloud.

Robustezza contro le interruzioni dell'infrastruttura

Con la modalità operativa Autopilot utilizzata in questa architettura, GKE fornisce le seguenti funzionalità di affidabilità integrate:

  • Il tuo workload utilizza un cluster GKE regionale. Il control plane e i nodi worker sono distribuiti in tre zone diverse all'interno di una regione. I tuoi carichi di lavoro sono resilienti alle interruzioni di zona. I cluster GKE regionali hanno un uptime accordo sul livello del servizio (SLA) superiore rispetto ai cluster di zona.
  • Non è necessario creare nodi o gestire i pool di nodi. GKE crea automaticamente i pool di nodi e li scala automaticamente in base ai requisiti dei tuoi carichi di lavoro.

Per aumentare la disponibilità della tua applicazione, puoi pubblicarla da più zone eseguendo il deployment di un'istanza Managed Lustre in ogni zona.

Pianificazione della capacità del cluster

Per contribuire a garantire che sia disponibile una capacità GPU sufficiente quando è necessaria per lo scalabilità automatica del cluster GKE, puoi creare e utilizzare le prenotazioni. Una prenotazione fornisce capacità garantita in una zona specifica per una risorsa specificata. Una prenotazione può essere specifica per un progetto o condivisa tra più progetti. Ti vengono addebitati i costi per le risorse prenotate anche se non viene eseguito il provisioning o non vengono utilizzate. Per ulteriori informazioni, vedi Utilizzo delle risorse di zona prenotate.

Durabilità dei dati

Per eseguire il backup e il ripristino dei workload in GKE, abilita Backup per GKE in ogni cluster. Backup per GKE è utile per il ripristino di emergenza, le pipeline CI/CD, la clonazione di carichi di lavoro e gli scenari di upgrade.

Puoi selezionare carichi di lavoro specifici o tutti i carichi di lavoro di cui vuoi eseguire il backup e il ripristino. Puoi anche eseguire il backup dei carichi di lavoro da un cluster e ripristinarli in un altro cluster. Per ridurre i tempi di inattività del carico di lavoro, puoi pianificare l'esecuzione automatica dei backup in modo da poter ripristinare rapidamente i carichi di lavoro in caso di incidente.

Ulteriori considerazioni sull'affidabilità

Per principi e consigli di affidabilità specifici per i workload AI e ML, consulta Prospettiva AI e ML: affidabilità nel framework Well-Architected.

Ottimizzazione dei costi

Questa sezione fornisce indicazioni per aiutarti a ottimizzare il costo di configurazione e gestione del flusso di lavoro AI e ML in Google Cloud.

Livelli di rendimento di Managed Lustre

Quando crei un'istanza Managed Lustre, devi selezionare un livello di rendimento. Scegli un livello appropriato in base ai requisiti di prestazioni e costi del tuo workload.

Modello di provisioning dei nodi

In modalità Autopilot, GKE ottimizza l'efficienza dell'infrastruttura del cluster in base ai requisiti del carico di lavoro. Per controllare i costi, non devi monitorare costantemente l'utilizzo delle risorse o gestire la capacità.

Se riesci a prevedere l'utilizzo di CPU, memoria e spazio di archiviazione temporaneo del tuo cluster Autopilot, puoi ottenere sconti per impegno di utilizzo. Per ridurre il costo di esecuzione dell'applicazione, puoi utilizzare le VM spot per i nodi GKE. Le VM spot hanno un prezzo inferiore rispetto alle VM standard, ma non offrono una garanzia di disponibilità.

Gestione delle risorse

Per ottimizzare costi e prestazioni tramite una gestione efficiente, utilizza Dynamic Workload Scheduler. Dynamic Workload Scheduler è uno strumento di gestione delle risorse e pianificazione dei job che ti aiuta a migliorare l'accesso agli acceleratori AI (GPU e TPU). Dynamic Workload Scheduler pianifica tutti gli acceleratori contemporaneamente e può essere eseguito al di fuori delle ore di punta con una gestione definita della capacità dell'acceleratore. Pianificando i job in modo strategico, Dynamic Workload Scheduler contribuisce a massimizzare l'utilizzo degli acceleratori, ridurre il tempo di inattività e ottimizzare la spesa per il cloud.

Utilizzo delle risorse

Per massimizzare l'utilizzo delle risorse, utilizza un'istanza Managed Lustre per l'addestramento e la pubblicazione. Il consolidamento dei carichi di lavoro di addestramento e serving in una singola istanza di Managed Lustre riduce al minimo i costi eliminando l'infrastruttura ridondante e semplificando la gestione delle risorse. Tuttavia, potrebbe verificarsi una potenziale contesa delle risorse se entrambi i carichi di lavoro hanno elevate richieste di velocità effettiva. Se dopo l'addestramento sono disponibili IOPS di riserva, l'utilizzo della stessa istanza può accelerare il caricamento del modello per la pubblicazione. Utilizza Cloud Monitoring per verificare di allocare risorse sufficienti per soddisfare le tue esigenze di throughput.

Per ridurre al minimo i costi di archiviazione, esporta i dati dall'istanza Managed Lustre in una classe Cloud Storage a costi inferiori dopo l'addestramento e il checkpoint. L'esportazione dei dati in Cloud Storage ti consente anche di eliminare e ricreare le istanze Managed Lustre in base alle esigenze del tuo carico di lavoro.

Per controllare i costi del bucket Cloud Storage, attiva la gestione del ciclo di vita degli oggetti o Autoclass. La gestione del ciclo di vita degli oggetti sposta automaticamente i dati meno recenti o meno utilizzati in classi di archiviazione meno costose o li elimina, in base alle regole che hai impostato. Autoclass sposta i dati tra le classi di archiviazione in base ai tuoi pattern di accesso. L'utilizzo della gestione del ciclo di vita degli oggetti o di Autoclass consente di garantire la classe di archiviazione più conveniente per l'utilizzo dei dati, riducendo al minimo le spese e contribuendo a evitare costi di recupero imprevisti.

Altre considerazioni sui costi

Per principi e consigli di ottimizzazione dei costi specifici per i workload AI e ML, consulta Prospettiva AI e ML: ottimizzazione dei costi nel Well-Architected Framework e Best practice per l'esecuzione di applicazioni Kubernetes con ottimizzazione dei costi su GKE.

Eccellenza operativa

Questa sezione fornisce indicazioni per aiutarti a progettare un'infrastruttura per il tuo flusso di lavoro AI e ML che puoi gestire in modo efficiente.

Gestione del modello

Per monitorare e gestire gli artefatti del modello, inclusi binari e metadati, utilizza Vertex AI Model Registry, che ti consente di archiviare, organizzare ed eseguire il deployment delle versioni del modello senza problemi.

Per ottimizzare l'affidabilità del modello, implementa Vertex AI Model Monitoring per rilevare la deviazione dei dati, monitorare le prestazioni e identificare le anomalie in produzione.

Scalabilità automatica del cluster GKE

Con i cluster Autopilot, non devi eseguire il provisioning o gestire i pool di nodi. I pool di nodi vengono sottoposti a provisioning automatico tramite il provisioning automatico dei nodi e vengono scalati automaticamente per soddisfare i requisiti dei tuoi carichi di lavoro.

Per i cluster GKE Standard, il gestore della scalabilità automatica dei cluster ridimensiona automaticamente il numero di nodi all'interno di un pool di nodi in base alle esigenze del carico di lavoro. Per controllare il comportamento di scalabilità automatica del gestore della scalabilità automatica del cluster, puoi specificare una dimensione minima e massima per il pool di nodi.

Quando utilizzi il gestore della scalabilità automatica del cluster GKE, non attivare la scalabilità automatica di Compute Engine per i gruppi di istanze gestite (MIG) per i nodi del cluster. Il gestore della scalabilità automatica del cluster GKE è separato dal gestore della scalabilità automatica di Compute Engine. Il gestore della scalabilità automatica dei cluster GKE è progettato per scalare il carico di lavoro analizzando l'utilizzo delle risorse nel cluster GKE, inclusi i gruppi di istanze gestite sottostanti. L'utilizzo di entrambi i gestori della scalabilità automatica può portare a decisioni di scalabilità in conflitto. Per ulteriori informazioni, consulta Informazioni sulla scalabilità automatica dei cluster GKE.

Monitoraggio delle metriche

Per identificare i colli di bottiglia, monitora le metriche chiave come latenza, tasso di errore e utilizzo delle risorse utilizzando Cloud Monitoring. Cloud Monitoring offre visibilità in tempo reale per monitorare i pattern di utilizzo delle risorse e identificare potenziali inefficienze.

Gestione dell'archiviazione

Per automatizzare la gestione dei dati in base all'utilizzo del bucket Cloud Storage, attiva la gestione del ciclo di vita degli oggetti o Autoclass. La gestione del ciclo di vita degli oggetti sposta automaticamente i dati meno recenti o meno utilizzati in classi di archiviazione meno costose o li elimina, in base alle regole che imposti. Autoclass sposta i dati tra le classi di archiviazione in base ai tuoi pattern di accesso. L'utilizzo della gestione del ciclo di vita degli oggetti o di Autoclass contribuisce a garantire un'applicazione coerente delle norme nell'infrastruttura di archiviazione e a ridurre il potenziale errore umano, il che offre prestazioni e risparmi sui costi senza intervento manuale.

Ulteriori considerazioni operative

Per best practice e consigli sull'efficienza operativa specifici per i carichi di lavoro AI e ML, consulta Prospettiva AI e ML: eccellenza operativa nel Well-Architected Framework.

Ottimizzazione delle prestazioni

Questa sezione fornisce indicazioni per aiutarti a ottimizzare le prestazioni del flusso di lavoro AI e ML in Google Cloud. Le indicazioni in questa sezione non sono esaustive. Per ulteriori informazioni sull'ottimizzazione del rendimento per l'ambiente Google Cloud Managed Lustre, vedi Considerazioni sul rendimento.

Considerazioni sull'addestramento

Ogni VM A3 o A4 può fornire 20 GB/s, circa 2,5 GB/s per GPU, da un'istanza Managed Lustre. Prima dell'inizio dell'addestramento, i dati di addestramento devono essere precaricati da Cloud Storage e importati in Managed Lustre per ridurre al minimo la latenza durante l'addestramento. Per massimizzare il throughput del tuo workload di addestramento, esegui il provisioning dell'istanza Managed Lustre in modo che corrisponda alle tue esigenze di throughput e capacità di archiviazione. Ad esempio, un'istanza Managed Lustre da 20 TiB fornisce un throughput aggregato compreso tra 2,5 GB/s e 20 GB/s su tutti i client, a seconda del livello di prestazioni selezionato. Se l'addestramento richiede una velocità effettiva maggiore, devi aumentare di conseguenza le dimensioni dell'istanza Managed Lustre.

Considerazioni sul checkpoint

Per sfruttare l'elevata velocità effettiva di scrittura offerta da Managed Lustre e per ridurre al minimo il tempo di addestramento, utilizza Managed Lustre sia per l'addestramento che per il checkpointing. Questo approccio contribuisce a ottenere un utilizzo efficiente delle risorse e a ridurre il TCO per le risorse GPU mantenendo l'addestramento e il checkpointing il più veloci possibile. Per ottenere un checkpointing rapido, puoi eseguire un checkpointing distribuito e asincrono. Poiché Managed Lustre è persistente, puoi archiviare i checkpoint all'interno della stessa istanza. Per un'ulteriore ottimizzazione dei costi e l'archiviazione a lungo termine, valuta la possibilità di esportare i checkpoint in un bucket Cloud Storage.

Considerazioni sulla pubblicazione

Per ottenere un rendimento ottimale durante la pubblicazione, devi ridurre al minimo il tempo necessario per caricare i modelli in memoria. Managed Lustre offre un throughput elevato per VM di oltre 20 GB/s, che fornisce un throughput del cluster aggregato elevato. Questa funzionalità può aiutarti a ridurre al minimo i tempi di caricamento dei modelli su migliaia di VM. Per monitorare le metriche chiave che ti consentono di identificare i colli di bottiglia, utilizza Cloud Monitoring e verifica di aver eseguito il deployment di una capacità sufficiente man mano che le prestazioni aumentano con la capacità di archiviazione.

Posizionamento delle risorse

Per ridurre al minimo la latenza e massimizzare le prestazioni, crea l'istanza Managed Lustre in una regione geograficamente vicina ai client di calcolo GPU o TPU. Nell'architettura di riferimento descritta in questo documento, i container GKE e il file system si trovano nella stessa zona.

  • Per l'addestramento e il checkpoint: per risultati ottimali, esegui il deployment dei client e delle istanze Managed Lustre nella stessa zona. Questa collocazione riduce al minimo i tempi di trasferimento dei dati e massimizza l'utilizzo della velocità effettiva di scrittura di Managed Lustre.
  • Per la pubblicazione: anche se la collocazione con i client di calcolo nella stessa zona è l'ideale, può essere sufficiente una sola istanza di Managed Lustre per regione. Questo approccio evita i costi aggiuntivi associati al deployment di più istanze e contribuisce a massimizzare le prestazioni di calcolo. Tuttavia, se hai bisogno di capacità o velocità effettiva aggiuntive, potresti prendere in considerazione il deployment di più istanze per regione.

Per informazioni sulle località supportate per le istanze Managed Lustre, consulta Località supportate.

Altre considerazioni sul rendimento

Per principi e consigli di ottimizzazione delle prestazioni specifici per i workload di AI e ML, consulta Prospettiva AI e ML: ottimizzazione delle prestazioni nel Well-Architected Framework.

Deployment

Per creare e montare un'istanza Managed Lustre, ti consigliamo di utilizzare il modulo Managed Lustre disponibile in Cluster Toolkit. Cluster Toolkit è un toolkit modulare basato su Terraform progettato per il deployment di ambienti AI e ML ripetibili suGoogle Cloud.

Per informazioni su come eseguire manualmente il deployment di Managed Lustre su GKE, consulta Crea un'istanza Managed Lustre e Connettiti a un'istanza Managed Lustre esistente da Google Kubernetes Engine.

Per informazioni su come configurare una rete VPC per Managed Lustre, vedi Configurare una rete VPC.

Passaggi successivi

Collaboratori

Autore: Samantha He | Technical Writer

Altri collaboratori: