Questa pagina descrive come creare un'istanza di Gemini Enterprise Agent Platform Workbench abilitata per Spark di Managed Service for Apache Spark. Questa pagina descrive anche i vantaggi dell'estensione JupyterLab di Managed Service for Apache Spark e fornisce una panoramica su come utilizzare l'estensione con Managed Service for Apache Spark e Managed Service for Apache Spark su Compute Engine.
Panoramica dell'estensione JupyterLab di Managed Service for Apache Spark
A partire dalla versione M113 e successive, le istanze di Agent Platform Workbench hanno l'estensione JupyterLab di Managed Service for Apache Spark preinstallata.
L'estensione JupyterLab di Managed Service for Apache Spark offre due modi per eseguire i job dei notebook Apache Spark: cluster Managed Service for Apache Spark e Managed Service for Apache Spark.
- I cluster Managed Service for Apache Spark includono un ricco set di funzionalità con controllo sull'infrastruttura su cui viene eseguito Spark. Scegli le dimensioni e la configurazione del cluster Spark, consentendo la personalizzazione e il controllo dell'ambiente. Questo approccio è ideale per workload complessi, job a esecuzione prolungata e gestione granulare delle risorse.
- Managed Service for Apache Spark elimina i problemi relativi all'infrastruttura. Invii i tuoi job Spark e Google gestisce il provisioning, lo scaling e l'ottimizzazione delle risorse dietro le quinte. Questo approccio serverless offre un'opzione economica per i carichi di lavoro di data science e ML.
Con entrambe le opzioni, puoi utilizzare Spark per l'elaborazione e l'analisi dei dati. La scelta tra i cluster Managed Service for Apache Spark e Managed Service for Apache Spark dipende dai requisiti specifici del workload, dal livello di controllo richiesto e dai pattern di utilizzo delle risorse.
I vantaggi dell'utilizzo di Managed Service for Apache Spark per i carichi di lavoro di data science e ML includono:
- Nessuna gestione dei cluster: non devi preoccuparti del provisioning, della configurazione o della gestione dei cluster Spark. In questo modo risparmierai tempo e risorse.
- Scalabilità automatica: Managed Service for Apache Spark scala automaticamente in base al workload, quindi paghi solo le risorse che utilizzi.
- Rendimento elevato: Managed Service for Apache Spark è ottimizzato per il rendimento e sfrutta l'infrastruttura di Google Cloud.
- Integrazione con altre tecnologie: Managed Service for Apache Spark si integra con altri prodotti Google Cloud , come BigQuery e Knowledge Catalog. Google Cloud
Per saperne di più, consulta la documentazione di Managed Service for Apache Spark.
Prima di iniziare
- 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 senza costi per l'esecuzione, il test e il deployment dei workload.
-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
Enable the Cloud Resource Manager, Managed Service for Apache Spark, and Notebooks APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.-
In the Google Cloud console, on the project selector page, select or create a Google Cloud project.
Roles required to select or create a project
- Select a project: Selecting a project doesn't require a specific IAM role—you can select any project that you've been granted a role on.
-
Create a project: To create a project, you need the Project Creator role
(
roles/resourcemanager.projectCreator), which contains theresourcemanager.projects.createpermission. Learn how to grant roles.
Enable the Cloud Resource Manager, Managed Service for Apache Spark, and Notebooks APIs.
Roles required to enable APIs
To enable APIs, you need the Service Usage Admin IAM role (
roles/serviceusage.serviceUsageAdmin), which contains theserviceusage.services.enablepermission. Learn how to grant roles.
Ruoli obbligatori
Per assicurarti che il account di servizio disponga delle autorizzazioni necessarie per eseguire un file notebook su un cluster Managed Service for Apache Spark o un cluster Managed Service for Apache Spark, chiedi all'amministratore di concedere al account di servizio i seguenti ruoli IAM:
- Dataproc Worker (
roles/dataproc.worker) sul tuo progetto - Dataproc Editor (
roles/dataproc.editor) sul cluster per l'autorizzazionedataproc.clusters.use
Per saperne di più sulla concessione dei ruoli, consulta Gestisci l'accesso a progetti, cartelle e organizzazioni.
Questi ruoli predefiniti contengono le autorizzazioni necessarie per eseguire un file notebook su un cluster Managed Service for Apache Spark o un cluster Managed Service for Apache Spark. Per vedere quali sono esattamente le autorizzazioni richieste, espandi la sezione Autorizzazioni obbligatorie:
Autorizzazioni obbligatorie
Per eseguire un file notebook su un cluster Managed Service for Apache Spark o un cluster Managed Service for Apache Spark, sono necessarie le seguenti autorizzazioni:
-
dataproc.agents.create -
dataproc.agents.delete -
dataproc.agents.get -
dataproc.agents.update -
dataproc.tasks.lease -
dataproc.tasks.listInvalidatedLeases -
dataproc.tasks.reportStatus -
dataproc.clusters.use
L'amministratore potrebbe anche essere in grado di concedere al account di servizio queste autorizzazioni tramite ruoli personalizzati o altri ruoli predefiniti.
Crea un'istanza con Managed Service for Apache Spark abilitato
Per creare un'istanza di Agent Platform Workbench con Managed Service for Apache Spark abilitato, segui questi passaggi:
Nella console Google Cloud , vai alla pagina Istanze.
Fai clic su Crea nuovo.
Nella finestra di dialogo Nuova istanza, fai clic su Opzioni avanzate.
Nella finestra di dialogo Crea istanza, nella sezione Dettagli, assicurati che sia selezionata l'opzione Abilita sessioni interattive serverless di Dataproc.
Assicurati che Tipo di workbench sia impostato su Istanza.
Nella sezione Ambiente, assicurati di utilizzare l'ultima versione o una versione numerata
M113o superiore.Fai clic su Crea.
Agent Platform Workbench crea un'istanza e la avvia automaticamente. Quando l'istanza è pronta per l'uso, Agent Platform Workbench attiva un link Apri JupyterLab.
Apri JupyterLab
Accanto al nome dell'istanza, fai clic su Apri JupyterLab.
Si apre la scheda Avvio app di JupyterLab nel browser. Per impostazione predefinita, contiene sezioni per i notebook Managed Service for Apache Spark e per i job e le sessioni Managed Service for Apache Spark. Se nel progetto e nella regione selezionati sono presenti cluster pronti per Jupyter, verrà visualizzata una sezione denominata Notebook del cluster Managed Service for Apache Spark.
Utilizzare l'estensione con Managed Service for Apache Spark
I modelli di runtime di Managed Service for Apache Spark che si trovano nella stessa regione e nello stesso progetto dell'istanza di Agent Platform Workbench vengono visualizzati nella sezione Notebook Managed Service for Apache Spark della scheda Launcher di JupyterLab.
Per creare un modello di runtime, consulta Creare un modello di runtime di Managed Service for Apache Spark.
Per aprire un nuovo notebook Spark serverless, fai clic su un modello di runtime. L'avvio del kernel Spark remoto richiede circa un minuto. Dopo l'avvio del kernel, puoi iniziare a programmare.
Utilizzare l'estensione con Managed Service for Apache Spark su Compute Engine
Se hai creato un cluster Jupyter Managed Service for Apache Spark su Compute Engine, la scheda Launcher contiene una sezione Notebook del cluster Managed Service for Apache Spark.
Vengono visualizzate quattro schede per ogni cluster Managed Service for Apache Spark pronto per Jupyter a cui hai accesso in quella regione e in quel progetto.
Per modificare la regione e il progetto:
Seleziona Impostazioni > Impostazioni di Cloud Managed Service for Apache Spark.
Nella scheda Configurazione, nella sezione Informazioni sul progetto, modifica l'ID progetto e la Regione, quindi fai clic su Salva.
Queste modifiche non hanno effetto finché non riavvii JupyterLab.
Per riavviare JupyterLab, seleziona File > Arresta e poi fai clic su Apri JupyterLab nella pagina Istanze di Agent Platform Workbench.
Per creare un nuovo notebook, fai clic su una scheda. Dopo l'avvio del kernel remoto sul cluster Managed Service for Apache Spark, puoi iniziare a scrivere il codice e poi eseguirlo sul cluster.
Gestire Managed Service for Apache Spark su un'istanza utilizzando gcloud CLI e l'API
Questa sezione descrive i modi per gestire Managed Service for Apache Spark su un'istanza di Agent Platform Workbench.
Modificare la regione del cluster Managed Service for Apache Spark
I kernel predefiniti dell'istanza di Agent Platform Workbench, come Python e TensorFlow, sono kernel locali che vengono eseguiti nella VM dell'istanza. In un'istanza di Agent Platform Workbench abilitata per Spark di Managed Service for Apache Spark, il notebook viene eseguito su un cluster Managed Service for Apache Spark tramite un kernel remoto. Il kernel remoto viene eseguito su un servizio esterno alla VM dell'istanza, il che ti consente di accedere a qualsiasi cluster Managed Service for Apache Spark all'interno dello stesso progetto.
Per impostazione predefinita, Agent Platform Workbench utilizza i cluster Managed Service for Apache Spark nella stessa regione dell'istanza, ma puoi modificare la regione di Managed Service for Apache Spark a condizione che il componente gateway e il componente Jupyter facoltativo siano abilitati sul cluster Managed Service for Apache Spark.
Testa l'accesso
L'estensione JupyterLab di Managed Service for Apache Spark è attivata per impostazione predefinita per le istanze di Agent Platform Workbench. Per testare l'accesso a Managed Service for Apache Spark, puoi controllare l'accesso ai kernel remoti della tua istanza inviando la seguente richiesta curl al dominio kernels.googleusercontent.com:
curl --verbose -H "Authorization: Bearer $(gcloud auth print-access-token)" https://PROJECT_ID-dot-REGION.kernels.googleusercontent.com/api/kernelspecs | jq .
Se il comando curl non va a buon fine, verifica che:
Le voci DNS sono configurate correttamente.
Esiste un cluster disponibile nello stesso progetto (o dovrai crearne uno se non esiste).
Nel cluster sono attivi sia il gateway dei componenti sia il componente Jupyter opzionale.
Disattiva Managed Service for Apache Spark
Le istanze di Agent Platform Workbench vengono create con Managed Service for Apache Spark
attivato per impostazione predefinita. Puoi creare un'istanza Agent Platform Workbench con
Managed Service for Apache Spark disattivato impostando la chiave disable-mixer
metadata su true.
gcloud workbench instances create INSTANCE_NAME --metadata=disable-mixer=true
Abilita Managed Service for Apache Spark
Puoi attivare Managed Service for Apache Spark su un'istanza di Agent Platform Workbench arrestata aggiornando il valore dei metadati.
gcloud workbench instances update INSTANCE_NAME --metadata=disable-mixer=false
Gestire Managed Service for Apache Spark utilizzando Terraform
Managed Service for Apache Spark per le istanze di Agent Platform Workbench
su Terraform viene gestito utilizzando la chiave disable-mixer nel campo dei metadati.
Attiva Managed Service for Apache Spark impostando la chiave disable-mixer
metadata su false. Disattiva Managed Service for Apache Spark impostando
la chiave dei metadati disable-mixer su true.
Per scoprire come applicare o rimuovere una configurazione Terraform, consulta Comandi Terraform di base.
Risoluzione dei problemi
Per diagnosticare e risolvere i problemi relativi alla creazione di un'istanza Managed Service for Apache Spark abilitata per Spark, consulta Risoluzione dei problemi di Agent Platform Workbench.
Passaggi successivi
Per saperne di più sull'estensione JupyterLab di Managed Service for Apache Spark, consulta Utilizza l'estensione JupyterLab per sviluppare carichi di lavoro Spark serverless.
Per scoprire di più su Managed Service for Apache Spark, consulta la documentazione di Managed Service for Apache Spark.
Per scoprire di più sull'utilizzo di Spark con i prodotti e i servizi Google Cloud , consulta Spark su Google Cloud.
Sfoglia i modelli Managed Service for Apache Spark disponibili su GitHub.
Scopri di più su Spark serverless tramite
serverless-spark-workshopsu GitHub.Leggi la documentazione di Apache Spark.