En este documento, se describe cómo crear un clúster de Dataproc con escalamiento a cero.
Los clústeres de Dataproc con ajuste a cero proporcionan una forma rentable de usar los clústeres de Dataproc. A diferencia de los clústeres estándar de Dataproc, que requieren al menos dos trabajadores principales, los clústeres de Dataproc con escalamiento a cero solo usan trabajadores secundarios que se pueden reducir a cero.
Los clústeres de Dataproc con ajuste 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 mejor uso de los recursos a través de políticas de ajuste de escala automático con cero escala.
Características y limitaciones
Un clúster de Dataproc de escalamiento a cero comparte similitudes con un clúster estándar, pero tiene las siguientes características y limitaciones únicas:
- Se requiere la versión de imagen
2.2.53
o 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, configura la propiedad del clúster
core:fs.defaultFS
en una ubicación de 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, configura la propiedad del clúster
No se puede convertir a un clúster estándar ni desde uno.
Requiere una política de ajuste de escala automático para los tipos de clúster
ZERO_SCALE
.Requiere seleccionar VMs flexibles como tipo de máquina.
No admite el componente de Oozie.
No se puede crear desde la consola de Google Cloud .
Opcional: Configura una política de ajuste de escala automático
Puedes configurar una política de ajuste de escala automático para definir el ajuste de escala de trabajo secundario para un clúster de escala cero. Cuando lo hagas, ten en cuenta lo siguiente:
- Establece el tipo de clúster en
ZERO_SCALE
. - Configura una política de ajuste de escala automático solo para la configuración del trabajador secundario.
Para obtener más información, consulta Crea una política de ajuste de escala automático.
Crea un clúster de Dataproc de ajuste a cero
Crea un clúster de escalamiento 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 Dataproc de escala 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 ajuste de escala automático.
- BUCKET_NAME: Es el nombre de tu bucket de Cloud Storage.
- MACHINE_TYPE: Tipo de máquina específico de Compute Engine, como
n1-standard-4
oe2-standard-8
. - RANK: Define la prioridad de una lista de tipos de máquinas.
REST
Crea un clúster con ajuste de escala a cero con una solicitud cluster.create de la API de REST de Dataproc:
- Establece
ClusterConfig.ClusterType
para elsecondaryWorkerConfig
enZERO_SCALE
. - Establece
AutoscalingConfig.policyUri
con el ID de la política de ajuste de escala automáticoZERO_SCALE
. - Agrega
core:fs.defaultFS:gs://BUCKET_NAME
SoftwareConfig.property. Reemplaza BUCKET_NAME por el nombre de tu bucket de Cloud Storage.
¿Qué sigue?
- Obtén más información sobre el ajuste de escala automático de Dataproc.