Questa pagina mostra come utilizzare lo strumento a riga di comando Google Cloud CLI gcloud per creare un cluster Dataproc, eseguire un job Apache Spark nel cluster, quindi modificare il numero di worker nel cluster.
Puoi scoprire come eseguire le stesse attività o attività simili con le guide rapide Utilizzo di API Explorer, la Google Cloud console in Creare un cluster Dataproc utilizzando la Google Cloud console, e le librerie client in Creare un cluster Dataproc utilizzando le librerie client.
Prima di iniziare
- Accedi al tuo Google Cloud account. Se non hai mai utilizzato Google Cloud, crea un account per valutare il rendimento 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.
-
Installa Google Cloud CLI.
-
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
Per inizializzare gcloud CLI, esegui questo comando:
gcloud init -
Crea o seleziona un Google Cloud progetto.
Ruoli richiesti per selezionare o creare un progetto
- Seleziona un progetto: la selezione di un progetto non richiede un ruolo IAM specifico. Puoi selezionare qualsiasi progetto su cui ti è stato concesso un ruolo.
-
Crea un progetto: per creare un progetto, devi disporre del ruolo Autore progetto
(
roles/resourcemanager.projectCreator), che contiene l'resourcemanager.projects.createautorizzazione. Scopri come concedere i ruoli.
-
Crea un Google Cloud progetto:
gcloud projects create PROJECT_ID
Sostituisci
PROJECT_IDcon un nome per il Google Cloud progetto che stai creando. -
Seleziona il Google Cloud progetto che hai creato:
gcloud config set project PROJECT_ID
Sostituisci
PROJECT_IDcon il nome del Google Cloud progetto.
-
Verifica di disporre delle autorizzazioni necessarie per completare questa guida.
-
Verifica che la fatturazione sia attivata per il tuo Google Cloud progetto.
Abilita l'API Dataproc:
Ruoli richiesti per abilitare le API
Per abilitare le API, devi disporre del ruolo IAM Amministratore utilizzo servizi (
roles/serviceusage.serviceUsageAdmin), che contiene l'serviceusage.services.enableautorizzazione. Scopri come concedere i ruoli.gcloud services enable dataproc.googleapis.com
-
Installa Google Cloud CLI.
-
Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.
-
Per inizializzare gcloud CLI, esegui questo comando:
gcloud init -
Crea o seleziona un Google Cloud progetto.
Ruoli richiesti per selezionare o creare un progetto
- Seleziona un progetto: la selezione di un progetto non richiede un ruolo IAM specifico. Puoi selezionare qualsiasi progetto su cui ti è stato concesso un ruolo.
-
Crea un progetto: per creare un progetto, devi disporre del ruolo Autore progetto
(
roles/resourcemanager.projectCreator), che contiene l'resourcemanager.projects.createautorizzazione. Scopri come concedere i ruoli.
-
Crea un Google Cloud progetto:
gcloud projects create PROJECT_ID
Sostituisci
PROJECT_IDcon un nome per il Google Cloud progetto che stai creando. -
Seleziona il Google Cloud progetto che hai creato:
gcloud config set project PROJECT_ID
Sostituisci
PROJECT_IDcon il nome del Google Cloud progetto.
-
Verifica di disporre delle autorizzazioni necessarie per completare questa guida.
-
Verifica che la fatturazione sia attivata per il tuo Google Cloud progetto.
Abilita l'API Dataproc:
Ruoli richiesti per abilitare le API
Per abilitare le API, devi disporre del ruolo IAM Amministratore utilizzo servizi (
roles/serviceusage.serviceUsageAdmin), che contiene l'serviceusage.services.enableautorizzazione. Scopri come concedere i ruoli.gcloud services enable dataproc.googleapis.com
Ruoli obbligatori
Per eseguire gli esempi in questa pagina sono necessari alcuni ruoli IAM. A seconda delle policy dell'organizzazione, questi ruoli potrebbero essere già stati concessi. Per verificare le concessioni dei ruoli, consulta Devi concedere i ruoli?.
Per saperne di più sulla concessione dei ruoli, consulta Gestire l'accesso a progetti, cartelle e organizzazioni.
Ruoli utente
Per ottenere le autorizzazioni necessarie per creare un cluster Dataproc, chiedi all'amministratore di concederti i seguenti ruoli IAM:
-
Dataproc Editor (
roles/dataproc.editor) sul progetto -
Utente account di servizio (
roles/iam.serviceAccountUser) sul service account predefinito di Compute Engine
Ruolo dell'account di servizio
Per assicurarti che il account di servizio predefinito di Compute Engine disponga delle autorizzazioni necessarie
per creare un cluster Dataproc,
chiedi all'amministratore di concedere il
Dataproc Worker (roles/dataproc.worker)
ruolo IAM al account di servizio predefinito di Compute Engine sul progetto.
Crea un cluster
Per creare un cluster denominato example-cluster, esegui il seguente
gcloud Dataproc clusters create comando.
gcloud dataproc clusters create example-cluster --region=REGION
Sostituisci quanto segue:
REGION: specifica una regione in cui si troverà il cluster.
Invia un job
Per inviare un job Spark di esempio che calcola un valore approssimativo per pi, esegui il
seguente
comando gcloud Dataproc jobs submit spark:
gcloud dataproc jobs submit spark --cluster example-cluster \ --region=REGION \ --class org.apache.spark.examples.SparkPi \ --jars file:///usr/lib/spark/examples/jars/spark-examples.jar -- 1000
Note:
Sostituisci quanto segue:
REGION: specifica la regione del cluster.
- Il job viene eseguito su
example-cluster. - La
classcontiene il metodo principale per SparkPi, che calcola un valore approssimativo dipi. per ogni applicazione. - Il file jar contiene il codice del job.
1000è un parametro del job. Specifica il numero di attività (iterazioni) eseguite dal job per calcolare il valore dipi.
L'esecuzione del job e l'output finale vengono visualizzati nella finestra del terminale.
Waiting for job output... ... Pi is roughly 3.14118528 ... Job finished successfully.
Aggiorna un cluster
Per cambiare il numero di worker nel cluster e impostarlo su 5, esegui questo comando:
gcloud dataproc clusters update example-cluster \ --region=REGION \ --num-workers 5
L'output comando mostra i dettagli del cluster:
workerConfig: ... instanceNames: - example-cluster-w-0 - example-cluster-w-1 - example-cluster-w-2 - example-cluster-w-3 - example-cluster-w-4 numInstances: 5 statusHistory: ... - detail: Add 3 workers.
Per ridurre il numero di nodi worker al valore originale di 2, esegui questo comando:
gcloud dataproc clusters update example-cluster \ --region=REGION \ --num-workers 2
Libera spazio
Per evitare che al tuo Google Cloud account vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi.
- Per eliminare
example-cluster, esegui ilclusters deletecomando:gcloud dataproc clusters delete example-cluster \ --region=REGION
Passaggi successivi
- Scopri come scrivere ed eseguire un job Spark Scala.