Este documento descreve como criar um cluster de escala zero do Dataproc.
Os clusters de escala zero do Dataproc oferecem uma forma económica de usar clusters do Dataproc. Ao contrário dos clusters do Dataproc padrão que requerem, pelo menos, dois trabalhadores principais, os clusters do Dataproc de escala zero usam apenas trabalhadores secundários que podem ser reduzidos a zero.
Os clusters de escala zero do Dataproc são ideais para utilização como clusters de longa duração que têm períodos de inatividade, como um cluster que aloja um bloco de notas do Jupiter. Oferecem uma utilização melhorada dos recursos através da utilização de políticas de escalamento automático de escala zero.
Caraterísticas e limitações
Um cluster de escala zero do Dataproc partilha semelhanças com um cluster padrão, mas tem as seguintes características e limitações únicas:
- Requer a versão
2.2.53
ou posterior da imagem. - Só suporta trabalhadores secundários e não trabalhadores principais.
Inclui serviços como o YARN, mas não suporta o sistema de ficheiros HDFS.
- Para usar o Cloud Storage como o sistema de ficheiros predefinido, defina a propriedade do cluster
core:fs.defaultFS
para uma localização do contentor do Cloud Storagegs://BUCKET_NAME
. - Se desativar um componente durante a criação do cluster, também deve desativar o HDFS.
- Para usar o Cloud Storage como o sistema de ficheiros predefinido, defina a propriedade do cluster
Não pode ser convertido num cluster padrão nem a partir de um cluster padrão.
Requer uma política de escala automática para os tipos de clusters
ZERO_SCALE
.Requer a seleção de VMs flexíveis como tipo de máquina.
Não suporta o componente Oozie.
Não é possível criar a partir da consola Google Cloud .
Opcional: configure uma política de escala automática
Pode configurar uma política de escala automática para definir a escala de trabalho secundária para um cluster de escala zero. Ao fazê-lo, tenha em atenção o seguinte:
- Defina o tipo de cluster como
ZERO_SCALE
. - Configure uma política de escala automática apenas para a configuração do trabalhador secundário.
Para mais informações, consulte o artigo Crie uma política de escalabilidade automática.
Crie um cluster de escala zero do Dataproc
Crie um cluster de escala zero com a CLI gcloud ou a API Dataproc.
gcloud
Execute o comando
gcloud dataproc clusters create
localmente numa janela de terminal ou no
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
Substitua o seguinte:
- CLUSTER_NAME: nome do cluster de escala zero do Dataproc.
- REGION: uma região do Compute Engine disponível.
- AUTOSCALING_POLICY: o ID ou o URI do recurso da política de ajuste de escala automático.
- BUCKET_NAME: nome do seu contentor do Cloud Storage.
- MACHINE_TYPE: tipo de máquina específico do Compute Engine, como
n1-standard-4
oue2-standard-8
. - RANK: define a prioridade de uma lista de tipos de máquinas.
REST
Crie um cluster de escala zero com um pedido cluster.create da API REST do Dataproc:
- Defina
ClusterConfig.ClusterType
para osecondaryWorkerConfig
comoZERO_SCALE
. - Defina o
AutoscalingConfig.policyUri
com o ID da política de escalabilidade automáticaZERO_SCALE
. - Adicione o elemento
core:fs.defaultFS:gs://BUCKET_NAME
SoftwareConfig.property. Substitua BUCKET_NAME pelo nome do seu contentor do Cloud Storage.
O que se segue?
- Saiba mais sobre a autoscaling do Dataproc.