Crea un clúster de Dataproc con gcloud CLI

En esta página, se muestra cómo usar Google Cloud CLI gcloud para crear una instancia de Google Cloud clúster de Dataproc, ejecuta una consulta trabajo de Apache Spark en el clúster, y, luego, modificar la cantidad de trabajadores en el clúster.

Puedes descubrir cómo realizar las mismas tareas o similares con las Guías de inicio rápido para usar el Explorador de APIs. la consola de Google Cloud en Crear un clúster de Dataproc mediante la consola de Google Cloud, y usar las bibliotecas cliente en Crea un clúster de Dataproc con bibliotecas cliente.

Antes de comenzar

  1. Accede a tu cuenta de Google Cloud. Si eres nuevo en Google Cloud, crea una cuenta para evaluar el rendimiento de nuestros productos en situaciones reales. Los clientes nuevos también obtienen $300 en créditos gratuitos para ejecutar, probar y, además, implementar cargas de trabajo.
  2. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  3. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  4. Enable the Dataproc API.

    Enable the API

  5. In the Google Cloud console, on the project selector page, select or create a Google Cloud project.

    Go to project selector

  6. Asegúrate de que la facturación esté habilitada para tu proyecto de Google Cloud.

  7. Enable the Dataproc API.

    Enable the API

Crea un clúster

Ejecuta el siguiente comando para crear un clúster que se llame example-cluster. Consulta Regiones y zonas disponibles para obtener información sobre cómo seleccionar una región (también puedes ejecutar el comando gcloud compute regions list para ver una lista de las regiones disponibles). Consulta también Extremos regionales para aprender sobre los extremos regionales.

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

La creación de clústeres se confirma en el resultado del comando:

...
Waiting for cluster creation operation...done.
Created [... example-cluster]

Envía un trabajo

Si quieres enviar un trabajo de Spark de muestra que calcula un valor aproximado para pi, ejecuta el siguiente comando:

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

Este comando especifica lo siguiente:

  • Que deseas ejecutar un trabajo de spark en el clúster example-cluster en la región especificada
  • La classque contiene el método principal para la aplicación que calcula el valor de pi en el trabajo
  • La ubicación del archivo JAR que contiene el código de su trabajo
  • Los parámetros que deseas pasar al trabajo; en este caso, la cantidad de tareas, que es 1000

La ejecución del trabajo y el resultado final se muestran en la ventana de la terminal:

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

Actualiza un clúster

Para cambiar a cinco la cantidad de trabajadores en el clúster, ejecuta el siguiente comando:

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

Los detalles de tu clúster se muestran en el resultado del comando:

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.

Puedes usar el mismo comando para disminuir la cantidad de nodos trabajadores al valor original, como se muestra a continuación:

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

Limpia

Sigue estos pasos para evitar que se apliquen cargos a tu cuenta de Google Cloud por los recursos que usaste en esta página.

  • Ejecuta clusters delete para borrar el clúster de ejemplo.
    gcloud dataproc clusters delete example-cluster \
        --region=region
    
    Se te solicitará que confirmes si deseas borrar el clúster. Escribe y para completar la eliminación.

¿Qué sigue?