Utilizzare Spark serverless con Dataproc con i blocchi note gestiti

Questa pagina mostra come eseguire un file blocco note su Spark serverless in un'istanza di blocchi note gestiti di Vertex AI Workbench utilizzando Dataproc Serverless.

L'istanza di blocchi note gestiti può inviare il codice di un file di blocco note da eseguire sul servizio Dataproc Serverless. Il servizio esegue il codice su un'infrastruttura di computing gestita che scala automaticamente le risorse secondo necessità. Pertanto, non devi eseguire il provisioning e gestire il tuo cluster.

Gli addebiti di Dataproc Serverless si applicano solo nel momento in cui è in esecuzione il carico di lavoro.

Requisiti

Per eseguire un file di blocco note su Dataproc Serverless Spark, consulta i requisiti seguenti.

  • La sessione Dataproc Serverless deve essere eseguita nella stessa regione dell'istanza di blocchi note gestiti.

  • Il vincolo Richiedi OS Login (constraints/compute.requireOsLogin) non deve essere abilitato per il tuo progetto. Vedi Gestire l'accesso al sistema operativo in un'organizzazione.

  • Per eseguire un file di blocco note su Dataproc Serverless, devi fornire un account di servizio che disponga di autorizzazioni specifiche. Puoi concedere queste autorizzazioni all'account di servizio predefinito o fornire un account di servizio personalizzato. Consulta la sezione Autorizzazioni di questa pagina.

  • La sessione Spark serverless di Dataproc utilizza una rete Virtual Private Cloud (VPC) per eseguire i carichi di lavoro. La subnet VPC deve soddisfare requisiti specifici. Consulta i requisiti in Configurazione di rete Dataproc Serverless per Spark.

Autorizzazioni

Per assicurarti che l'account di servizio disponga delle autorizzazioni necessarie per eseguire un file di blocco note su Dataproc Serverless, chiedi all'amministratore di concedere all'account di servizio il ruolo IAM Editor Dataproc (roles/dataproc.editor) sul tuo progetto. Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso.

Questo ruolo predefinito contiene le autorizzazioni necessarie per eseguire un file di blocco note su Dataproc Serverless. Per visualizzare le autorizzazioni esatte necessarie, espandi la sezione Autorizzazioni richieste:

Autorizzazioni obbligatorie

Per eseguire un file di blocco note su Dataproc Serverless sono necessarie le autorizzazioni seguenti:

  • dataproc.agents.create
  • dataproc.agents.delete
  • dataproc.agents.get
  • dataproc.agents.update
  • dataproc.session.create
  • dataproc.sessions.get
  • dataproc.sessions.list
  • dataproc.sessions.terminate
  • dataproc.sessions.delete
  • dataproc.tasks.lease
  • dataproc.tasks.listInvalidatedLeases
  • dataproc.tasks.reportStatus

L'amministratore potrebbe anche essere in grado di concedere all'account di servizio queste autorizzazioni con ruoli personalizzati o altri ruoli predefiniti.

Prima di iniziare

  1. Accedi al tuo account Google Cloud. Se non conosci Google Cloud, crea un account per valutare le prestazioni dei nostri prodotti in scenari reali. I nuovi clienti ricevono anche 300 $di crediti gratuiti per l'esecuzione, il test e il deployment dei carichi di lavoro.
  2. Nella pagina del selettore di progetti della console Google Cloud, seleziona o crea un progetto Google Cloud.

    Vai al selettore progetti

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

  4. Abilita le API Notebooks, Vertex AI, and Dataproc.

    Abilita le API

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

    Vai al selettore progetti

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

  7. Abilita le API Notebooks, Vertex AI, and Dataproc.

    Abilita le API

  8. Se non l'hai ancora fatto, crea un'istanza di blocchi note gestiti.
  9. Se non lo hai già fatto, configura una rete VPC che soddisfi i requisiti elencati in Dataproc Serverless for Spark Network.

Apri JupyterLab

  1. Nella console Google Cloud, vai alla pagina Blocchi note gestiti.

    Vai ai blocchi note gestiti

  2. Fai clic su Apri JupyterLab accanto al nome dell'istanza di blocchi note gestiti.

Avvia una sessione Spark serverless Dataproc

Per avviare una sessione Spark serverless Dataproc, completa questi passaggi.

  1. Nell'interfaccia JupyterLab dell'istanza di blocchi note gestiti, seleziona la scheda Avvio app, quindi Serverless Spark. Se la scheda Avvio app non è aperta, seleziona File > Nuovo Avvio app per aprirla.

    Viene visualizzata la finestra di dialogo Crea sessione Spark serverless.

  2. Nel campo Nome sessione, inserisci un nome per la sessione.

  3. Nella sezione Configurazione esecuzione, inserisci l'Account di servizio che vuoi utilizzare. Se non inserisci un account di servizio, la sessione utilizzerà l'account di servizio predefinito di Compute Engine.

  4. Nella sezione Configurazione di rete, seleziona la rete e la Subnet di una rete che soddisfa i requisiti elencati in Dataproc Serverless for Spark.

  5. Fai clic su Crea.

    Si apre un nuovo file del blocco note. La sessione Spark serverless di Dataproc che hai creato è il kernel che esegue il codice del file del blocco note.

Esegui il codice su Dataproc Serverless Spark e altri kernel

  1. Aggiungi codice al nuovo file blocco note ed esegui il codice.

  2. Per eseguire il codice su un kernel diverso, modifica il kernel.

  3. Quando vuoi eseguire di nuovo il codice sulla tua sessione Spark serverless Dataproc, riporta il kernel al kernel Spark serverless Dataproc.

Termina la sessione Spark serverless Dataproc

Puoi terminare una sessione Spark serverless Dataproc nell'interfaccia JupyterLab o nella console Google Cloud. Il codice nel file blocco note viene conservato.

JupyterLab

  1. In JupyterLab, chiudi il file del blocco note che è stato creato quando hai creato la sessione Spark Serverless Dataproc.

  2. Nella finestra di dialogo visualizzata, fai clic su Termina sessione.

Console Google Cloud

  1. Nella console Google Cloud, vai alla pagina Sessioni Dataproc.

    Vai alle sessioni Dataproc

  2. Seleziona la sessione che vuoi terminare, quindi fai clic su Termina.

Elimina la sessione Spark serverless Dataproc

Puoi eliminare una sessione Spark serverless di Dataproc utilizzando la console Google Cloud. Il codice nel file blocco note viene conservato.

  1. Nella console Google Cloud, vai alla pagina Sessioni Dataproc.

    Vai alle sessioni Dataproc

  2. Seleziona la sessione da eliminare, quindi fai clic su Elimina.

Passaggi successivi