Configuração do cluster do Dataproc

No Cloud Data Fusion, a configuração de cluster define como os os pipelines de processamento de dados utilizam recursos computacionais ao executar no Dataproc. Esta página descreve as principais abordagens para na configuração do cluster.

Clusters temporários padrão (recomendado)

Usar os clusters padrão é a abordagem recomendada para pipelines do Cloud Data Fusion.

  • O Cloud Data Fusion provisiona e gerencia automaticamente clusters do Dataproc para cada execução de pipeline. Ele cria uma cluster no início da execução do pipeline e o exclui após o é concluída.
  • Benefícios dos clusters efêmeros:
    • Simplicidade: não é preciso configurar nem gerenciar manualmente o aglomerado.
    • Relação custo-benefício: você paga apenas pelos recursos usados durante a execução do pipeline.
.

Para ajustar clusters e ajustar o desempenho, consulte Dimensionamento de clusters.

Clusters estáticos (para cenários específicos)

Nos cenários a seguir, é possível usar clusters estáticos:

  • Pipelines de longa duração: são executados continuamente ou com longos, um cluster estático pode ser mais econômico do que criando e eliminando repetidamente clusters efêmeros.
  • Gerenciamento centralizado de clusters: caso sua organização exija controle centralizado sobre as políticas de criação e gerenciamento de clusters, clusters podem ser usados com ferramentas como o Terraform.
  • Horário de criação do cluster: quando o tempo necessário para criar um novo cluster. para cada pipeline é proibitivo para seu caso de uso.

No entanto, os clusters estáticos exigem mais configuração manual e envolvem o gerenciamento o ciclo de vida do cluster.

Para usar um cluster estático, você precisa definir o seguinte propriedade no cluster do Dataproc:

dataproc:dataproc.conscrypt.provider.enable=false

Opções de configuração de clusters estáticos

Se você usa clusters estáticos, o Cloud Data Fusion oferece de configuração para os seguintes aspectos:

  • Tipo de máquina do worker: especifique o tipo de máquina virtual do worker. nós no cluster. Isso determina as vCPUs e a memória disponíveis para cada worker.
  • Número de workers: defina o número inicial de nós de trabalho na sua aglomerado. O Dataproc ainda pode escalonar automaticamente esse número com base carga de trabalho do Google Cloud.
  • Zona: selecione a zona do Google Cloud do cluster. O local pode afetar a localização dos dados e o desempenho da rede.
  • Configurações adicionais: é possível definir opções avançadas para os um cluster estático, como configurações de preempção, de rede e ações de inicialização.

Práticas recomendadas

Ao criar um cluster estático para os pipelines, use o seguinte personalizadas.

Parâmetros Descrição
yarn.nodemanager.delete.debug-delay-sec Mantém os registros YARN.
Valor recomendado: 86400 (equivalente a um dia)
yarn.nodemanager.pmem-check-enabled Permite que o YARN verifique os limites de memória física e elimine contêineres se vão além da memória física.
Valor recomendado: false
yarn.nodemanager.vmem-check-enabled Permite que o YARN verifique os limites de memória virtual e elimine contêineres se vão além da memória física.
Valor recomendado: false.

Para mais informações, consulte Executar um pipeline em um cluster atual do Dataproc.

Como reutilizar clusters

É possível reutilizar clusters do Dataproc entre execuções para melhorar tempo de processamento. A reutilização de clusters é implementada em um modelo semelhante à conexão pooling ou pool de linhas de execução. Qualquer cluster é mantido em execução por um determinado após o término da execução. Quando uma nova execução é iniciada, ele tenta encontrar um cluster inativo disponível que corresponda à configuração do perfil de computação. Se houver, ele será usado. Caso contrário, um novo cluster será iniciado.

Considerações sobre a reutilização de clusters

  • Os clusters não são compartilhados. Semelhante ao cluster temporário normal modelo de provisionamento, um cluster executa uma única execução de pipeline por vez. Um cluster só será reutilizado se estiver inativo.
  • Se você ativar a reutilização de clusters para todas as execuções, o número necessário de clusters para processar todas as execuções serão criados conforme necessário. Semelhante ao provisionador temporário do Dataproc, não há controle direto sobre o número de clusters criados. Você ainda pode usar as cotações do Google Cloud para gerenciar recursos. Por exemplo, se você executar 100 execuções com 7 no máximo execuções paralelas, você terá até sete clusters em um determinado ponto de tempo.
  • Os clusters são reutilizados entre diferentes pipelines assim que eles são usam o mesmo perfil e compartilham as mesmas configurações de perfil. Se o perfil a personalização for usada, os clusters ainda serão reutilizados, mas apenas se são exatamente as mesmas, incluindo todas as configurações de cluster, como e rotulação de clusters.

  • Quando a reutilização de clusters é ativada, há duas considerações de custo principais:

    • Menos recursos são usados para a inicialização do cluster.
    • Mais recursos são usados para que os clusters fiquem inativos entre o pipeline e após a última execução do pipeline.

Embora seja difícil prever o efeito de custo da reutilização do cluster, é possível usar uma para ter o máximo de economia. A estratégia é identificar um caminho crítico pipelines encadeados e ativar a reutilização do cluster para esse caminho crítico. Isso garantir que o cluster seja reutilizado imediatamente, sem perder tempo ocioso e benefícios de desempenho são alcançados.

Ativar reutilização de cluster

Na seção "Configuração de computação" da configuração do pipeline implantado ou quando Como criar um novo perfil de computação:

  • Ative a opção Ignorar exclusão do cluster.
  • O tempo máximo de inatividade é o tempo que um cluster espera pelo próximo pipeline para reutilizá-lo. O tempo máximo de inatividade padrão é de 30 minutos. Para o tempo máximo de inatividade, considere o custo versus a disponibilidade de clusters para reutilização. Quanto maior de tempo máximo de inatividade, mais clusters ficam inativos, prontos para a execução.

Solução de problemas: compatibilidade da versão

Problema: a versão do ambiente do Cloud Data Fusion pode não ser compatível com a versão do cluster do Dataproc.

Recomendado: faça upgrade para a versão mais recente do Cloud Data Fusion e use uma das versões compatíveis do Dataproc.

Versões anteriores do Cloud Data Fusion são compatíveis apenas com versões não compatíveis do Dataproc. O Dataproc não oferece atualizações e suporte para clusters criados com estas versões. É possível continuar executando um cluster foi criado com uma versão sem suporte, recomendamos a substituição por uma criado com um uma versão compatível.

Versão do Cloud Data Fusion Versão do Dataproc
6.10 e mais recente 2.1 e 2.0 *
6,9 2,1, 2,0, 1,5 *
6,7-6,8 2,0, 1,5 *
6,4-6,6 2,0 *, 1,3 **
6,1-6,3 1,3**

* As versões 6.4 e mais recentes do Cloud Data Fusion compatível com com suporte do Dataproc. A menos que recursos específicos do SO forem necessários, a prática recomendada é especificar Versão da imagem major.minor.
Para especificar a versão do SO usada no cluster do Dataproc, o SO precisa ser compatível com um dos componentes para o Cloud Data Fusion na tabela anterior.

** As versões 6.1 a 6.6 do Cloud Data Fusion são compatível com sem suporte à versão 1.3 do Dataproc.

A seguir