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 Jupiter. Proporcionan un uso de recursos mejorado a través de políticas de escalado automático a cero.
Funciones y limitaciones
Un clúster de Managed Service para Apache Spark con reducción de escala a cero comparte similitudes con un clúster estándar, pero tiene las siguientes funciones y limitaciones únicas:
- Requiere la versión de imagen
2.2.53o posterior. - Solo admite trabajadores secundarios, no trabajadores principales.
Incluye servicios como YARN, pero no admite el sistema de archivos HDFS.
- Para usar Cloud Storage como el sistema de archivos predeterminado, establece la propiedad del clúster
core:fs.defaultFSen una ubicación del bucket de Cloud Storage (gs://BUCKET_NAME). - Si inhabilitas un componente durante la creación del clúster, también inhabilita HDFS.
- Para usar Cloud Storage como el sistema de archivos predeterminado, establece la propiedad del clúster
No se puede convertir a un clúster estándar ni desde este.
Requiere una política de escalado automático para los tipos de clúster
ZERO_SCALE.Requiere seleccionar VMs flexibles como tipo de máquina.
No admite el componente Oozie.
No se puede crear desde la Google Cloud consola.
Opcional: Configura una política de escalado automático
Puedes configurar una política de escalado automático para definir el escalamiento de trabajadores secundarios para un clúster de reducción de escala a cero. Cuando lo hagas, ten en cuenta lo siguiente:
- Establece el tipo de clúster en
ZERO_SCALE. - Configura una política de escalado automático solo para la configuración del trabajador secundario.
Para obtener más información, consulta Crea una política de escalado automático.
Crea un clúster de Managed Service para Apache Spark con reducción de escala a cero
Crea un clúster de reducción de escala a cero con gcloud CLI o la API de Dataproc.
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 \
--secondary-worker-machine-types="type=MACHINE_TYPE1[,type=MACHINE_TYPE2...][,rank=RANK]"
...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: Es el ID o el URI del recurso de la política de escalado automático.
- BUCKET_NAME: Es el nombre de tu bucket de Cloud Storage.
- MACHINE_TYPE: Es un tipo de máquina específico de Compute Engine
, como
n1-standard-4oe2-standard-8. - RANK: Define la prioridad de una lista de tipos de máquinas.
REST
Crea un clúster de reducción de escala a cero con una solicitud cluster.create de la API de REST de Managed Service para Apache Spark:
- Establece
ClusterConfig.ClusterTypepara elsecondaryWorkerConfigenZERO_SCALE. - Establece
AutoscalingConfig.policyUricon el ID de la política de escalado automáticoZERO_SCALE. - Agrega la
core:fs.defaultFS:gs://BUCKET_NAMESoftwareConfig.property. Reemplaza BUCKET_NAME por el nombre de tu bucket de Cloud Storage.
¿Qué sigue?
- Obtén más información sobre el escalado automático de Managed Service para Apache Spark.