Creare un cluster Dataproc utilizzando gcloud CLI

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 attività simili o uguali con Guide rapide che utilizzano Explorer API, la console Google Cloud in Creare un cluster Dataproc utilizzando la console Google Cloud e utilizzando le librerie client in Creare un cluster Dataproc utilizzando le librerie client.

Prima di iniziare

  1. Sign in to your Google Cloud account. If you're new to Google Cloud, create an account to evaluate how our products perform in real-world scenarios. New customers also get $300 in free credits to run, test, and deploy workloads.
  2. Install the Google Cloud CLI.

  3. Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

  4. Per inizializzare gcloud CLI, esegui questo comando:

    gcloud init
  5. Create or select 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 the resourcemanager.projects.create permission. Learn how to grant roles.
    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  6. Verifica di disporre delle autorizzazioni necessarie per completare questa guida.

  7. Verify that billing is enabled for your Google Cloud project.

  8. Enable the Dataproc API:

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    gcloud services enable dataproc.googleapis.com
  9. Install the Google Cloud CLI.

  10. Se utilizzi un provider di identità (IdP) esterno, devi prima accedere a gcloud CLI con la tua identità federata.

  11. Per inizializzare gcloud CLI, esegui questo comando:

    gcloud init
  12. Create or select 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 the resourcemanager.projects.create permission. Learn how to grant roles.
    • Create a Google Cloud project:

      gcloud projects create PROJECT_ID

      Replace PROJECT_ID with a name for the Google Cloud project you are creating.

    • Select the Google Cloud project that you created:

      gcloud config set project PROJECT_ID

      Replace PROJECT_ID with your Google Cloud project name.

  13. Verifica di disporre delle autorizzazioni necessarie per completare questa guida.

  14. Verify that billing is enabled for your Google Cloud project.

  15. Enable the Dataproc API:

    Roles required to enable APIs

    To enable APIs, you need the Service Usage Admin IAM role (roles/serviceusage.serviceUsageAdmin), which contains the serviceusage.services.enable permission. Learn how to grant roles.

    gcloud services enable dataproc.googleapis.com
  16. Ruoli obbligatori

    Per eseguire gli esempi riportati in questa pagina sono necessari determinati ruoli IAM. A seconda delle norme dell'organizzazione, questi ruoli potrebbero essere già stati concessi. Per controllare le concessioni dei ruoli, consulta Devi concedere i ruoli?.

    Per saperne di più sulla concessione dei ruoli, consulta Gestisci 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:

    Ruolo 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 al account di servizio predefinito di Compute Engine il ruolo IAM Dataproc Worker (roles/dataproc.worker) sul progetto.

    Crea un cluster

    Per creare un cluster denominato example-cluster, esegui questo comando gcloud Dataproc clusters create.

    .
    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 di pi, esegui il 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 il giorno example-cluster.
    • class contiene il metodo principale per SparkPi, che calcola un valore approssimativo di pi. per ogni applicazione.
    • Il file jar contiene il codice del job.
    • 1000 è un parametro del job. Specifica il numero di attività (iterazioni) che il job esegue per calcolare il valore di pi.

    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 del 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 diminuire il numero di nodi worker al valore originale di 2, esegui questo comando:

    gcloud dataproc clusters update example-cluster \
        --region=REGION \
        --num-workers 2
    

    Esegui la pulizia

    Per evitare che al tuo account Google Cloud vengano addebitati costi relativi alle risorse utilizzate in questa pagina, segui questi passaggi.

    1. Per eliminare example-cluster, esegui il comando clusters delete:
      gcloud dataproc clusters delete example-cluster \
          --region=REGION
      

    Passaggi successivi