Questa pagina descrive come iniziare a utilizzare Batch per Google Cloud.
Panoramica
Batch è un servizio completamente gestito che consente di pianificare, inserire in coda ed eseguire carichi di lavoro di elaborazione batch sulle risorse Google Cloud . Ad esempio, valuta la possibilità di utilizzare Batch per carichi di lavoro di computing ad alte prestazioni (HPC), machine learning (ML) ed elaborazione dei dati. Batch esegue il provisioning delle risorse e gestisce la capacità per tuo conto, consentendo l'esecuzione dei workload batch su larga scala.
Con Batch, non devi configurare e gestire scheduler di job di terze parti, eseguire il provisioning e il deprovisioning delle risorse o richiedere risorse una zona alla volta. Per eseguire un job, specifica i parametri per le risorse necessarie per il tuo workload, quindi Batch ottiene le risorse e mette in coda il job per l'esecuzione. Batch fornisce l'integrazione nativa con altri servizi Google Cloud per facilitare la pianificazione, l'esecuzione, l'archiviazione e l'analisi dei job batch, in modo che tu possa concentrarti sull'invio di un job e sull'utilizzo dei risultati.
Batch è costituito dai seguenti componenti:
Job:un programma pianificato che esegue un insieme di attività fino al completamento senza alcuna interazione dell'utente, in genere per carichi di lavoro di calcolo. Ad esempio, un job potrebbe essere un singolo script shell o un calcolo complesso in più parti.
Nello specifico, un job batch rappresenta un array di una o più attività e l'ambiente in cui eseguirle. Definisci il programma per il job come una sequenza di uno o più eseguibili. Ogni attività esegue la sequenza di eseguibili sulle risorse del job. Puoi configurare le attività di un job in modo che vengano eseguite in parallelo o in sequenza.
Attività:una singola esecuzione della sequenza di eseguibili di un job. Quando un job ha più attività, specifica in che modo vuoi che ogni esecuzione vari facendo riferimento alla variabile di ambiente per l'indice di un'attività negli elementi eseguibili del job.
Elemento eseguibile:uno script o un container eseguibile che definisci nell'ambito di un job.
Risorse:l'infrastruttura necessaria per eseguire un job. Come minimo, devi specificare solo le risorse di calcolo richieste per ogni attività: core CPU, memoria e (se necessario) spazio di archiviazione aggiuntivo del disco di avvio. (Facoltativo) puoi anche specificare altre opzioni di risorse per il job. Batch crea ed elimina automaticamente le risorse che soddisfano le tue specifiche durante il runtime del job.
Nello specifico, ogni job Batch viene eseguito su un gruppo di istanze gestite (MIG) regionale, ovvero un gruppo di una o più istanze di macchine virtuali (VM) di Compute Engine corrispondenti, ognuna delle quali si trova in una delle zone incluse. Ogni VM dispone di hardware dedicato per core CPU e memoria, che influiscono sulle prestazioni del job, e di un disco di avvio, che archivia un'immagine del sistema operativo (OS) e le istruzioni per l'esecuzione del job. Se specificato, un job può anche includere o accedere a risorse aggiuntive, ad esempio GPU o volumi di archiviazione esterni. Il numero di VM di cui viene eseguito il provisioning per un job dipende dai requisiti hardware e dalle opzioni di pianificazione delle attività che specifichi.
In sintesi, Batch ti consente di creare ed eseguire job che eseguono automaticamente il provisioning e utilizzano le risorse necessarie per eseguire le attività.
Per saperne di più sul comportamento e sulle opzioni dei job, consulta la pagina Panoramica della creazione e dell'esecuzione dei job.
Prezzi
Non sono previsti costi aggiuntivi per l'utilizzo di Batch. Ti viene addebitato solo il costo delle risorse sottostanti necessarie per eseguire i job.
Per saperne di più sui costi associati a Batch e su come filtrare i report di fatturazione Cloud per visualizzare i costi di Batch, consulta Prezzi.
Limitazioni
Batch presenta le seguenti limitazioni:
- Non puoi superare le quote e i limiti batch per il tuo progetto.
- Puoi specificare un solo tipo di macchina, che può essere predefinito o personalizzato, per job.
- Non puoi specificare più di un gruppo di attività per job. Tutti i job hanno un solo
gruppo di attività denominato
group0
.
Prerequisiti
Per iniziare a utilizzare Batch, completa i seguenti prerequisiti:
- Se il tuo progetto non ha mai utilizzato Batch, attiva Batch per il tuo progetto.
- Configura Batch per ogni nuovo utente.
Abilitare Batch per un progetto
Per iniziare a utilizzare Batch con un progetto:
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Verify that billing is enabled for your Google Cloud project.
Assicurati che Batch sia abilitato per il tuo progetto:
Enable the Batch, Compute Engine, and Cloud Logging APIs.
Assicurati che il tuo progetto abbia uno o più service account con le autorizzazioni necessarie per creare e accedere alle risorse per l'esecuzione dei job Batch.
È importante sottolineare che a tutti gli utenti a cui vuoi consentire di creare ed eseguire job Batch nel tuo progetto deve essere concessa l'autorizzazione per utilizzare uno di questi service account. Pertanto, non selezionare service account con più autorizzazioni di quelle che vuoi concedere a questi utenti.
Il service account utilizzato per impostazione predefinita da ogni job è l'account di servizio predefinito di Compute Engine, ma puoi anche personalizzare il service account utilizzato da un job.
A meno che tu non preveda di utilizzare solo la configurazione predefinita per i service account del job, concedi i seguenti ruoli IAM a tutti i service account utilizzati dal progetto per i job Batch.
- Batch Agent Reporter (
roles/batch.agentReporter
) sul progetto - Per consentire ai job di generare log in Cloud Logging: Logs Writer
(
roles/logging.logWriter
) sul progetto
Il account di servizio che utilizzi per un job potrebbe richiedere anche ruoli aggiuntivi in base alle opzioni di configurazione che vuoi utilizzare per i tuoi job. Consulta la documentazione di ogni attività per verificare se sono necessarie autorizzazioni aggiuntive. Per ulteriori informazioni sulla concessione dei ruoli ai service account, vedi Limitare i service account e Gestire l'accesso ai service account.
- Batch Agent Reporter (
Assicurati di conoscere l'agente di servizio Batch del tuo progetto:
Dopo aver creato un job batch, l'agente di servizio batch viene creato automaticamente per il tuo progetto con il seguente nome:
service-PROJECT_NUMBER@gcp-sa-cloudbatch.iam.gserviceaccount.com
Sostituisci
PROJECT_NUMBER
con il numero di progetto del tuo progetto.All'agente di servizio Batch viene concesso automaticamente il ruolo IAM Agente di servizio Google Batch (
roles/batch.serviceAgent
). Questa configurazione è necessaria per consentire al progetto di utilizzare Batch.Tuttavia, alcuni casi d'uso, ad esempio l'esecuzione di un job su una rete VPC condiviso, richiedono la concessione di autorizzazioni aggiuntive all'agente di servizio Batch del progetto.
Per saperne di più, vedi Service agent.
Configurare Batch per un nuovo utente
Per iniziare a utilizzare Batch come utente:
Per ottenere le autorizzazioni necessarie per utilizzare Batch, chiedi all'amministratore di concederti i ruoli IAM richiesti per il progetto. Consulta la documentazione di ogni attività per visualizzare le autorizzazioni richieste.
Ad esempio, se vuoi iniziare a imparare a utilizzare Batch creando un job di base, valuta la possibilità di richiedere ruoli per le seguenti attività:
- Per creare job:
- Batch Job Editor (
roles/batch.jobsEditor
) sul progetto - Utente del service account (
roles/iam.serviceAccountUser
) sull'account di servizio del job, che per impostazione predefinita è l'account di servizio Compute Engine predefinito
- Batch Job Editor (
- Per elencare e descrivere i job: Batch Job Editor (
roles/batch.jobsEditor
) o Batch Job Viewer (roles/batch.jobsViewer
) sul progetto - Per visualizzare i log dei job: Logs Viewer (
roles/logging.viewer
) sul progetto - Per eliminare i job: Batch Job Editor (
roles/batch.jobsEditor
) sul progetto
Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestire l'accesso.
- Per creare job:
Se vuoi utilizzare gli esempi di riga di comando per Batch, configura Google Cloud CLI nel seguente modo. Scopri di più sull'autenticazione per Google Cloud CLI.
Installa Google Cloud CLI. Dopo l'installazione, inizializza Google Cloud CLI eseguendo il seguente comando:
gcloud init
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
(Consigliato) Imposta un progetto predefinito utilizzando il comando
gcloud config set project
:gcloud config set project PROJECT_ID
Sostituisci
PROJECT_ID
con l'ID progetto del tuo progetto.
Se vuoi utilizzare gli esempi di API o di librerie client per Batch, consulta Autenticarsi in Batch.
Assistenza
Puoi discutere di Batch con la community utilizzando il tag Batch nei forum del programma per sviluppatori Google.
Se riscontri problemi con Batch, consulta la documentazione relativa alla risoluzione dei problemi.
Per ricevere assistenza o fornire feedback per Batch, utilizza le seguenti risorse:
Per problemi di fatturazione relativi a Google Cloud, contatta l'assistenza per la fatturazione.
Se disponi di un pacchetto di assistenza a pagamento, contatta Google Cloud Support direttamente per problemi relativi a Batch.
Google Cloud offre diversi pacchetti di assistenza per soddisfare esigenze diverse, come servizi di copertura 24 ore su 24, 7 giorni su 7, assistenza telefonica e consulenza con un responsabile dell'assistenza tecnica. Per ulteriori informazioni, vedi Assistenza diGoogle Cloud .
Per fornire feedback o richieste di funzionalità per Batch oppure per segnalare problemi relativi a Batch senza un pacchetto di assistenza a pagamento, fai clic sul pulsante Invia feedback, che puoi trovare all'inizio e alla fine di ogni pagina della documentazione di Batch. e seleziona una delle seguenti opzioni:
- Per feedback relativi alla documentazione di Batch, seleziona "Feedback sulla documentazione".
- Per tutti gli altri feedback su Batch, seleziona "Feedback sul prodotto".
Passaggi successivi
Scopri di più su Batch:
Scopri di più sulla creazione di un job.
Scopri di più sui prodotti Google Cloud correlati: