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, ti consigliamo di utilizzare Batch per il computing ad alte prestazioni (HPC), il machine learning (ML) e i carichi di lavoro di elaborazione dei dati. Batch esegue il provisioning delle risorse e gestisce la capacità per tuo conto, consentendo l'esecuzione dei carichi di lavoro batch su larga scala.
Con Batch, non è necessario configurare e gestire programmatori di job di terze parti, eseguire il provisioning e il deprovisioning delle risorse o richiedere le risorse una zona alla volta. Per eseguire un job, specifichi i parametri per le risorse richieste per il tuo carico di lavoro, quindi Batch ottiene le risorse e mette il job in coda per l'esecuzione. Batch offre un'integrazione nativa con altri servizi Google Cloud per facilitare la pianificazione, l'esecuzione, lo stoccaggio e l'analisi dei job batch, in modo da poterti concentrare sull'invio di un job e sull'utilizzo dei risultati.
Il 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 i carichi di lavoro di calcolo. Ad esempio, un job potrebbe essere un singolo script shell o un calcolo complesso composto da più parti.
Nello specifico, un job batch rappresenta un array di una o più attività e l'ambiente in cui eseguirle. Il programma per il job viene definito come una sequenza di uno o più eseguibili. Ogni attività esegue la sequenza di elementi eseguibili sulle risorse del job. Puoi configurare le attività di un job in modo che vengano eseguite in parallelo o in sequenza.
Attività: un'esecuzione della sequenza di elementi 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 contenitore eseguibile che definisci nell'ambito di un job.
Risorse:l'infrastruttura necessaria per eseguire un job. Come minimo, è sufficiente specificare le risorse di calcolo richieste per attività: core CPU, memoria e (se necessario) spazio di archiviazione aggiuntivo sul disco di avvio. Se vuoi, puoi anche specificare altre opzioni di risorsa per il job. Batch crea ed elimina automaticamente le risorse che soddisfano le tue specifiche durante il tempo di esecuzione 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) Compute Engine corrispondenti, ciascuna situata in una delle zone incluse. Ogni VM dispone di hardware dedicato per i core e la memoria della CPU, che influiscono sulle prestazioni del job, e di un disco di avvio, che memorizza un'immagine del sistema operativo (OS) e le istruzioni per l'esecuzione del job. Se specificato, un job potrebbe 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à specificate.
In sintesi, Batch ti consente di creare ed eseguire job che provisionano e utilizzano automaticamente le risorse necessarie per eseguire le relative attività.
Per ulteriori informazioni sul comportamento e sulle opzioni dei job, consulta la pagina Panoramica della creazione e dell'esecuzione dei job.
Prezzi
L'utilizzo di Batch non comporta costi aggiuntivi. Ti viene addebitato solo il costo delle risorse sottostanti necessarie per eseguire i job.
Per ulteriori informazioni sui costi associati a Batch e su come filtrare i report di fatturazione Cloud per visualizzare i costi di Batch, consulta Prezzi.
Limitazioni
Il batch presenta le seguenti limitazioni:
- Non puoi superare le quote e i limiti per i batch del tuo progetto.
- Per ogni job puoi specificare un solo tipo di macchina, che può essere predefinito o personalizzato.
- 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 progetto non ha mai utilizzato Batch, attiva Batch per il 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.
Make sure that billing is enabled for your Google Cloud project.
Assicurati che la funzionalità Batch sia attivata per il tuo progetto:
Abilita le API per Batch utilizzando la consoleGoogle Cloud o Google Cloud CLI.
Console
Enable the Batch, Compute Engine, and Cloud Logging APIs.
gcloud
Enable the Batch, Compute Engine, and Cloud Logging APIs:
gcloud services enable batch.googleapis.com
compute.googleapis.com logging.googleapis.com Assicurati che il tuo progetto abbia uno o più account di servizio con le autorizzazioni necessarie per creare e accedere alle risorse per l'esecuzione dei job Batch.
È importante che a tutti gli utenti a cui vuoi consentire di creare ed eseguire job batch nel progetto venga concessa l'autorizzazione per utilizzare uno di questi account di servizio. Pertanto, non selezionare account di servizio con più autorizzazioni di quelle che vuoi concedere a questi utenti.
L'account di servizio utilizzato per impostazione predefinita da ogni job è l'account di servizio predefinito di Compute Engine, ma puoi anche personalizzare l'account di servizio 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
) nel progetto - Per consentire ai job di generare log in Cloud Logging: Scrittore log
(
roles/logging.logWriter
) nel progetto
L'account di servizio che utilizzi per un job potrebbe richiedere anche ruoli aggiuntivi in base alle opzioni di configurazione che vuoi utilizzare per i job. Consulta la documentazione di ogni attività per verificare se sono necessarie autorizzazioni aggiuntive. Per ulteriori informazioni su come assegnare i ruoli agli account di servizio, consulta Limitare gli account di servizio e Gestire l'accesso agli account di servizio.
- Batch Agent Reporter (
Assicurati di conoscere bene l'agente di servizio batch del tuo progetto:
Dopo aver creato un job batch, l'agente di servizio batch viene creato automaticamente per il progetto con il seguente nome:
service-PROJECT_NUMBER@gcp-sa-cloudbatch.iam.gserviceaccount.com
Sostituisci
PROJECT_NUMBER
con il numero del 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 l'utilizzo di Batch da parte del progetto.Tuttavia, alcuni casi d'uso, ad esempio l'esecuzione di un job su una VPC condiviso condivisa, richiedono di concedere autorizzazioni aggiuntive all'agente di servizio Batch del progetto.
Per ulteriori informazioni, consulta la pagina Agenti di servizio.
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 nel progetto. Consulta la documentazione di ogni attività per visualizzarne le autorizzazioni richieste.
Ad esempio, se vuoi iniziare a imparare a utilizzare Batch creando un job di base, ti consigliamo di richiedere i ruoli per le seguenti attività:
- Per creare job:
- Editor di job batch (
roles/batch.jobsEditor
) del progetto - Utente account di servizio (
roles/iam.serviceAccountUser
) nell'account di servizio del job, che per impostazione predefinita è l'account di servizio Compute Engine predefinito
- Editor di job batch (
- Per elencare e descrivere i job: Batch Job Editor (
roles/batch.jobsEditor
) o Batch Job Viewer (roles/batch.jobsViewer
) nel progetto - Per visualizzare i log dei job: Logs Viewer (
roles/logging.viewer
) nel progetto - Per eliminare i job: Batch Job Editor (
roles/batch.jobsEditor
) nel progetto
Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestire l'accesso.
- Per creare job:
Se vuoi utilizzare gli esempi a riga di comando per Batch, configura Google Cloud CLI nel seguente modo. Scopri di più sull'autenticazione per Google Cloud CLI.
Install the Google Cloud CLI, then initialize it by running the following command:
gcloud init
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 Eseguire l'autenticazione in Batch.
Assistenza
Puoi discutere di Batch con la community utilizzando l'etichetta Batch nei forum di Cloud.
Se hai problemi con Batch, consulta la documentazione sulla risoluzione dei problemi.
Per ricevere assistenza o fornire feedback su Batch, utilizza le seguenti risorse:
Per problemi di fatturazione relativi a Google Cloud, contatta l'assistenza per la fatturazione.
Se hai un pacchetto di assistenza a pagamento, contatta direttamente l'assistenza Google Cloud per problemi relativi a Batch.
Google Cloud offre diversi pacchetti di assistenza per soddisfare esigenze diverse, come copertura 24 ore su 24, assistenza telefonica e accesso a un responsabile dell'assistenza tecnica. Per ulteriori informazioni, consulta l'assistenzaGoogle Cloud .
Per fornire feedback o richieste di funzionalità per Batch o 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. Quindi, 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 i prodotti Google Cloud correlati: