Inizia a utilizzare Batch

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. Il batch esegue il provisioning delle risorse e gestisce la capacità per conto tuo, consentendo l'esecuzione su larga scala dei carichi di lavoro batch.

Con Batch, non è necessario configurare e gestire scheduler 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, devi specificare i parametri delle risorse necessarie per il tuo carico di lavoro, quindi Batch recupera 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.

Il batch è costituito dai seguenti componenti:

  • Job: un programma pianificato che esegue una serie di attività fino al completamento senza interazione da parte dell'utente, in genere per i carichi di lavoro computazionali. Ad esempio, un job potrebbe essere uno script shell singolo o un calcolo complesso e multiparte.

    In particolare, un job batch rappresenta un array di una o più attività e l'ambiente in cui eseguirle. Puoi definire il programma per il job come una sequenza di uno o più elementi 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. Se un job ha più attività, specifichi in che modo vuoi che ciascuna esecuzione vari facendo riferimento alla variabile di ambiente per l'indice di un'attività negli elementi eseguibili del job.

  • Eseguibile: uno script eseguibile o un container che definisci come parte 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 della CPU, memoria e, se necessario, spazio di archiviazione aggiuntivo sul disco di avvio. Facoltativamente, puoi anche specificare altre opzioni di risorse per il job. Batch crea ed elimina automaticamente le risorse che soddisfano le tue specifiche durante il tempo di esecuzione del job.

    In particolare, ogni job batch viene eseguito su un gruppo di istanze gestite a livello di regione, ovvero un gruppo di una o più istanze di macchine virtuali (VM) corrispondenti, ciascuna situata in una delle zone incluse. Ogni VM ha un hardware dedicato per i core e la memoria della CPU, che influisce sulle prestazioni del tuo job, e un disco di avvio, in cui è archiviata un'immagine del sistema operativo e le istruzioni per eseguire il job. Se specificato, un job potrebbe includere o accedere a risorse aggiuntive, ad esempio GPU o volumi di archiviazione esterni. Il numero di VM di cui è stato 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 di cui ciascuno esegue automaticamente il provisioning e l'utilizzo delle risorse necessarie per eseguire le proprie attività.

Per ulteriori informazioni sul comportamento e sulle opzioni dei job, consulta la pagina Panoramica della creazione e dell'esecuzione di 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 ulteriori informazioni sui costi associati a Batch e su come filtrare i report di fatturazione Cloud per visualizzare i costi batch, consulta la sezione Prezzi.

Limitazioni

Batch prevede le seguenti limitazioni:

  • Non puoi superare le quote e i limiti del batch per il tuo progetto.
  • Puoi specificare un solo tipo di macchina, che può essere predefinita o personalizzata 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, devi completare i seguenti prerequisiti:

  1. Se il tuo progetto non ha mai utilizzato Batch, abilita Batch per il progetto.
  2. Configura Batch per ogni nuovo utente.

Abilitare Batch per un progetto

Per iniziare a utilizzare Batch con un progetto:

  1. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

  2. Assicurati che la fatturazione sia attivata per il tuo progetto Google Cloud.

  3. Assicurati che la funzionalità Batch sia abilitata per il tuo progetto:

    1. Abilita le API per Batch utilizzando la console Google Cloud o Google Cloud CLI.

      Console

      Abilita le API Batch, Compute Engine, and Cloud Logging.

      Abilita le API

      gcloud

      Abilita le API Batch, Compute Engine, and Cloud Logging.

      gcloud services enable batch.googleapis.com compute.googleapis.com logging.googleapis.com

    2. Assicurati che il progetto disponga di uno o più account di servizio con le autorizzazioni necessarie per creare e accedere alle risorse relative all'esecuzione di job batch.

      È importante sottolineare che a tutti gli utenti a cui vuoi consentire di creare ed eseguire job batch nel tuo progetto devono essere autorizzati a utilizzare uno di questi account di servizio. Quindi, non selezionare account di servizio che hanno più autorizzazioni di quelle che intendi 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.

      Concedi i ruoli IAM seguenti a qualsiasi account di servizio utilizzato dal tuo progetto per i job batch.

      • Reporter agente batch (roles/batch.agentReporter) sul progetto
      • Per consentire ai job di accedere a un bucket Cloud Storage: Amministratore Storage (roles/storage.admin) nel bucket
      • Per consentire ai job di generare log in Cloud Logging: Writer log (roles/logging.logWriter) sul progetto

      Per ulteriori informazioni sulla concessione dei ruoli agli account di servizio, consulta Limitazione degli account di servizio e Gestire l'accesso agli account di servizio.

    3. Assicurati di conoscere l'agente di servizio batch del tuo progetto:

      Dopo aver creato un job batch, per il tuo progetto viene creato automaticamente l'agente di servizio Batch (un account di servizio gestito da Google) 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 utilizzare Batch.

      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, vedi Agenti di servizio.

Configurazione di Batch per un nuovo utente

Per iniziare a utilizzare Batch come utente, segui questi passaggi:

  1. 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 vedere 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 attività seguenti:

    • Per creare job:
    • Per elencare e descrivere i job: Editor job batch (roles/batch.jobsEditor) o Visualizzatore job batch (roles/batch.jobsViewer) sul progetto
    • Per visualizzare i log per i job: Visualizzatore log (roles/logging.viewer) sul progetto
    • Per eliminare i job: editor di job batch (roles/batch.jobsEditor) sul progetto

    Per ulteriori informazioni sulla concessione dei ruoli, consulta Gestione dell'accesso.

  2. Se vuoi utilizzare gli esempi di riga di comando per Batch, configura Google Cloud CLI procedendo nel seguente modo. Scopri di più sull'autenticazione per Google Cloud CLI.

    1. Installa Google Cloud CLI, quindi initialize eseguendo questo comando:

      gcloud init

    2. Opzione consigliata: 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.

  3. Se vuoi utilizzare esempi di API o di librerie client per Batch, consulta Autentica in Batch.

Richiedere assistenza

Puoi discutere di Batch con la community sui forum Cloud.

Se riscontri problemi con Batch, consulta la documentazione per la risoluzione dei problemi.

Per ricevere assistenza o fornire feedback per Batch, usa le seguenti risorse:

  • Per problemi di fatturazione con Google Cloud, contatta l'Assistenza per la fatturazione.

  • Se disponi di un pacchetto di assistenza a pagamento, contatta direttamente l'Assistenza Google Cloud in caso di problemi con Batch.

    Google Cloud offre diversi pacchetti di assistenza per soddisfare esigenze diverse, tra cui copertura 24 ore su 24, 7 giorni su 7, assistenza telefonica e accesso a un responsabile dell'assistenza tecnica. Per ulteriori informazioni, visita la pagina dell'assistenza Google Cloud.

  • Per fornire feedback o richieste di funzionalità per Batch oppure per segnalare problemi per Batch senza un pacchetto di assistenza a pagamento, fai clic sul pulsante Invia feedback, che trovi all'inizio e alla fine di ogni pagina della documentazione di Batch. Poi seleziona una delle seguenti opzioni:

    • Per un feedback relativo alla documentazione Batch, seleziona "Feedback sulla documentazione".
    • Per tutti gli altri feedback su Batch, selezionate "Feedback sul prodotto".

Passaggi successivi