Crie um cluster do Dataproc com a CLI gcloud

Esta página mostra-lhe como usar a ferramenta de linha de comandos gcloud da CLI do Google Cloud para criar um cluster do Dataproc, executar uma tarefa do Apache Spark no cluster e, em seguida, modificar o número de trabalhadores no cluster.

Pode saber como realizar tarefas semelhantes ou iguais com os Inícios rápidos com o API Explorer, a Google Cloud consola em Crie um cluster do Dataproc com a Google Cloud consola, e com as bibliotecas cliente em Crie um cluster do Dataproc com bibliotecas cliente.

Antes de começar

  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 estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.

  4. Para inicializar a CLI gcloud, execute o seguinte 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. Verifique se tem as autorizações necessárias para concluir este guia.

  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 estiver a usar um fornecedor de identidade (IdP) externo, tem primeiro de iniciar sessão na CLI gcloud com a sua identidade federada.

  11. Para inicializar a CLI gcloud, execute o seguinte 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. Verifique se tem as autorizações necessárias para concluir este guia.

  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. Funções necessárias

    São necessárias determinadas funções de IAM para executar os exemplos nesta página. Consoante as políticas da organização, estas funções podem já ter sido concedidas. Para verificar as concessões de funções, consulte a secção Precisa de conceder funções?.

    Para mais informações sobre a atribuição de funções, consulte o artigo Faça a gestão do acesso a projetos, pastas e organizações.

    Funções do utilizador

    Para receber as autorizações de que precisa para criar um cluster do Dataproc, peça ao seu administrador para lhe conceder as seguintes funções do IAM:

    Função da conta de serviço

    Para garantir que a conta de serviço predefinida do Compute Engine tem as autorizações necessárias para criar um cluster do Dataproc, peça ao seu administrador para conceder à conta de serviço predefinida do Compute Engine a função de IAM Trabalhador do Dataproc (roles/dataproc.worker) no projeto.

    Crie um cluster

    Para criar um cluster denominado example-cluster, execute o seguinte comando gcloud Dataproc clusters create.

    .
    gcloud dataproc clusters create example-cluster --region=REGION
    

    Substitua o seguinte:

    REGION: especifique uma região onde o cluster vai estar localizado.

    Envie um trabalho

    Para enviar uma tarefa do Spark de exemplo que calcula um valor aproximado para pi, execute o comando gcloud Dataproc jobs submit spark seguinte:

    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
    

    Notas:

    Substitua o seguinte:

    REGION: especifique a região do cluster.

    • A tarefa é executada a example-cluster.
    • O class contém o método principal para o SparkPi, que calcula um valor aproximado de pi. aplicação.
    • O ficheiro JAR contém o código do trabalho.
    • 1000 é um parâmetro de trabalho. Especifica o número de tarefas (iterações) que o trabalho executa para calcular o valor de pi.

    A tarefa está em execução e o resultado final é apresentado na janela do terminal:

    Waiting for job output...
    ...
    Pi is roughly 3.14118528
    ...
    Job finished successfully.
    

    Atualize um cluster

    Para alterar o número de trabalhadores no cluster para cinco, execute o seguinte comando:

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

    O resultado do comando apresenta os detalhes do 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.
    

    Para diminuir o número de nós de trabalho para o valor original de 2, execute o seguinte comando:

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

    Limpar

    Para evitar incorrer em cobranças na sua Google Cloud conta pelos recursos usados nesta página, siga estes passos.

    1. Para eliminar o example-cluster, execute o comando clusters delete:
      gcloud dataproc clusters delete example-cluster \
          --region=REGION
      

    O que se segue?