Crea un clúster de Managed Service para Apache Spark de reducción de escala a cero

En este documento, se describe cómo crear un clúster de Managed Service para Apache Spark con reducción de escala a cero.

Los clústeres de Managed Service para Apache Spark con reducción de escala a cero proporcionan una forma rentable de usar clústeres de Managed Service para Apache Spark. A diferencia de los clústeres estándar de Managed Service para Apache Spark que requieren al menos dos trabajadores principales, los clústeres de Managed Service para Apache Spark con reducción de escala a cero solo usan trabajadores secundarios cuya escala se puede reducir verticalmente a cero.

Los clústeres de Managed Service para Apache Spark con reducción de escala a cero son ideales para usarse como clústeres de ejecución prolongada que experimentan períodos de inactividad, como un clúster que aloja un notebook de Jupyter. Proporcionan un uso de recursos mejorado a través de políticas de escalado automático a cero.

Requisitos y limitaciones

Un clúster de Managed Service para Apache Spark con reducción de escala a cero tiene los siguientes requisitos y limitaciones:

  • Requiere la versión de imagen 2.2.61 o posterior.
  • Requiere el uso de Cloud Storage, no el sistema de archivos HDFS.
  • Solo admite trabajadores secundarios, no principales.
  • No se puede convertir a un clúster estándar ni desde este.
  • No admite el componente Oozie.

Crea un clúster de Managed Service para Apache Spark con reducción de escala a cero

Puedes crear un clúster con reducción de escala a cero con la gcloud CLI o la API de Managed Service para Apache Spark.

gcloud

Ejecuta el comando gcloud dataproc clusters create de forma local en una ventana de la terminal o en Cloud Shell.

gcloud dataproc clusters create CLUSTER_NAME \
    --region=REGION \
    --cluster-type=zero-scale \
    --autoscaling-policy=AUTOSCALING_POLICY \
    --properties=core:fs.defaultFS=gs://BUCKET_NAME \
    ...other args

Reemplaza lo siguiente:

  • CLUSTER_NAME: Es el nombre del clúster de Managed Service para Apache Spark con reducción de escala a cero.
  • REGION: Es una región de Compute Engine disponible.
  • AUTOSCALING_POLICY (opcional): Si creas una política de escalado automático para aplicar al clúster con reducción de escala a cero, usa esta marca para especificar el ID o el URI de recurso de la política de escalado automático. Cuando crees la política, haz lo siguiente:
    • Establece clusterType en ZERO_SCALE.
    • Configura una política de escalado automático solo para secondaryWorkerConfig.
  • Sistema de archivos de Cloud Storage: Debes establecer core:fs.defaultFS en un bucket de Cloud Storage para configurar el sistema de archivos del clúster con reducción de escala a cero en Cloud Storage en lugar del HDFS predeterminado.
    • BUCKET_NAME: Es el nombre de un bucket de Cloud Storage. El nombre del bucket debe ser único para cada clúster con reducción de escala a cero.

REST

  • Tipo de clúster: Establece ClusterConfig.ClusterType en ZERO_SCALE.
  • Política de escalado automático (opcional): Si creas una política de escalado automático para aplicar al clúster con reducción de escala a cero, establece AutoscalingConfig.policyUri con el ZERO_SCALE ID de la política de escalado automático. Cuando crees la política, haz lo siguiente:
    • Establece clusterType en ZERO_SCALE.
    • Configura una política de escalado automático solo para secondaryWorkerConfig.
  • Sistema de archivos de Cloud Storage: Debes establecer core:fs.defaultFS en un bucket de Cloud Storage para configurar el sistema de archivos del clúster con reducción de escala a cero en Cloud Storage en lugar del HDFS predeterminado.
    • Agrega core:fs.defaultFS:gs://BUCKET_NAME SoftwareConfig.property. Reemplaza BUCKET_NAME por el nombre de tu bucket de Cloud Storage. Especifica un nombre de bucket único para cada clúster con reducción de escala a cero.

¿Qué sigue?