Esta página descreve como mudar a versão da imagem do Dataproc usada pela sua instância do Cloud Data Fusion. É possível alterar a imagem no nível da instância, namespace ou pipeline.
Antes de começar
Interrompa todos os pipelines em tempo real e jobs de replicação na instância do Cloud Data Fusion. Se um pipeline em tempo real ou replicação são em execução quando você altera a versão da imagem do Dataproc, as mudanças não são aplicadas à execução do pipeline.
Para pipelines em tempo real, se o checkpoint estiver ativado, a interrupção dos pipelines não causa perda de dados. Para jobs de replicação, interromper e iniciar o job não causa perda de dados se os registros de banco de dados estiverem disponíveis.
Console
Acesse a página Instâncias do Cloud Data Fusion e abra o em que é preciso interromper um pipeline.
Abra cada pipeline em tempo real no Pipeline Studio e clique em Parar.
Abra cada job de replicação na página Replicar e clique em Parar.
API REST
Para recuperar todos os pipelines, use a seguinte chamada da API REST:
GET -H "Authorization: Bearer ${AUTH_TOKEN}" \ "${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps"
Substitua
NAMESPACE_ID
pelo nome do seu .Para interromper um pipeline em tempo real, use a seguinte chamada da API REST:
POST -H "Authorization: Bearer ${AUTH_TOKEN}" \ "${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps/PIPELINE_NAME/spark/DataStreamsSparkStreaming/stop"
Substitua NAMESPACE_ID pelo nome do namespace e PIPELINE_NAME pelo nome do pipeline em tempo real.
Para interromper um job de replicação, use a seguinte chamada da API REST:
POST -H "Authorization: Bearer ${AUTH_TOKEN}" \ "${CDAP_ENDPOINT}/v3/namespaces/NAMESPACE_ID/apps/REPLICATION_JOB_NAME/workers/DeltaWorker/stop"
Substitua NAMESPACE_ID pelo nome do namespace e REPLICATION_JOB_NAME pelo nome do job de replicação.
Para mais informações, consulte Como interromper pipelines em tempo real e Como interromper jobs de replicação.
Verificar e substituir a versão padrão do Dataproc no Cloud Data Fusion
Clique em System Admin > Configuration > System. Preferências.
Se uma imagem do Dataproc não estiver especificada nas preferências do sistema ou para mudar a preferência, clique em Editar preferências do sistema.
Digite o seguinte texto no campo Chave:
system.profile.properties.imageVersion
Insira a imagem do Dataproc escolhida no campo Valor: como
2.1
.Clique em Salvar e fechar.
Essa alteração afeta toda a instância do Cloud Data Fusion, incluindo todas seus Namespaces e pipelines são executados, a menos que a propriedade da versão da imagem seja substituído em um namespace, pipeline ou argumento de ambiente de execução na instância.
Mudar a versão da imagem do Dataproc
A versão da imagem pode ser definida na interface da Web do Cloud Data Fusion em "Configurações de computação", "Preferências de namespace" ou "Argumentos de execução do pipeline".
Alterar a imagem em preferências de namespace
Se você tiver substituído a versão da imagem nas propriedades de namespace, siga estas etapas:
Clique em Administrador do sistema > Configuração > Namespaces.
Abra cada namespace e clique em Preferências.
Verifique se não há uma substituição com a chave
system.profile.properties.imageVersion
com um valor de versão de imagem incorreto.Clique em Concluir.
Mudar a imagem nos perfis de computação do sistema
Clique em Administrador do sistema > Configuração.
Clique em Perfis de computação do sistema > Criar novo perfil.
Selecione o provisionador do Dataproc.
Crie o perfil do Dataproc. No campo Image Version, insira uma versão de imagem do Dataproc.
Selecione esse perfil de computação ao executar o pipeline na página Studio. Na página de execução do pipeline, clique em Configurar > Computação config e selecione esse perfil.
Selecione o perfil do Dataproc e clique em Salvar.
Clique em Concluir.
Mudar a imagem nos argumentos do ambiente de execução do pipeline
Se você tiver substituído a versão da imagem com uma propriedade nos argumentos de execução do pipeline, siga estas etapas:
Clique no menu. Menu > Lista.
Na página Lista, selecione o pipeline que você quer atualizar.
O pipeline é aberto na página Studio.
Para expandir as opções Run, clique na seta de expansão
.A janela Argumentos de execução é aberta.
Verifique se não há uma substituição com a chave
system.profile.properties.imageVersion
com uma versão de imagem incorreta como valor.Clique em Salvar.
Recriar clusters estáticos do Dataproc usados pelo Cloud Data Fusion com a versão de imagem escolhida
Se você usa clusters do Dataproc com o Cloud Data Fusion, siga o guia do Dataproc para recriar os clusters com a versão da imagem do Dataproc escolhida para sua versão do Cloud Data Fusion.
Como alternativa, crie um novo cluster do Dataproc com a versão de imagem escolhida e exclua e recrie o perfil de computação no Cloud Data Fusion com o mesmo nome e o nome do cluster do Dataproc atualizado. Dessa forma, a execução de pipelines em lote a execução no cluster atual, e as execuções subsequentes do pipeline levam no novo cluster do Dataproc. Você pode excluir o cluster antigo do Dataproc depois de confirmar que todas as execuções de pipeline foram concluídas.
Verificar se a versão da imagem do Dataproc está atualizada
Console
No console do Google Cloud, acesse Clusters do Dataproc página.
Abra a página Detalhes do cluster para o novo cluster que Cloud Data Fusion criado quando você especificou a nova versão.
O campo Versão da imagem tem o novo valor especificado no Cloud Data Fusion.
API REST
Confira a lista de clusters com os metadados:
GET -H "Authorization: Bearer ${AUTH_TOKEN}" \ https://dataproc.googleapis.com/v1/projects/PROJECT_ID/regions/REGION_ID/clusters
Substitua:
PROJECT_ID
pelo nome do namespaceREGION_ID
pelo nome da região em que os clusters estão localizados
Pesquise o nome do pipeline (nome do cluster).
Abaixo desse objeto JSON, veja a imagem em
config > softwareConfig > imageVersion
.
Mudar a imagem do Dataproc para a versão 2.2 ou 2.1
As versões 6.9.1 e mais recentes do Cloud Data Fusion são compatíveis com Imagem 2.1 do Dataproc no Compute Engine, executado em Java 11. Nas versões 6.10.0 e posteriores, a imagem 2.1 é o padrão.
Se você mudar para a imagem 2.2 ou 2.1 de uma imagem anterior, para que os pipelines de lote e os trabalhos de replicação tenham sucesso, os drivers JDBC que os plug-ins de banco de dados usam nessas instâncias precisam ser compatíveis com o Java 11.
As imagens 2.2 e 2.1 do Dataproc têm as seguintes limitações em O Cloud Data Fusion:
- Jobs de redução de mapa não estão disponíveis.
- As versões do driver JDBC usadas nos plug-ins de banco de dados na sua instância precisam ser atualizadas para oferecer suporte ao Java 11. Consulte a tabela a seguir para motoristas Versões que funcionam com Dataproc 2.2, 2.1 e Java 11:
Drivers JDBC | Versões anteriores removidas do Cloud Data Fusion 6.9.1 | Versões com suporte do Java 8 e do Java 11 que funcionam com o Dataproc 2.2, 2.1 ou 2.0 |
---|---|---|
Driver JDBC do Cloud SQL para MySQL | - | 1.0.16 |
Driver JDBC do Cloud SQL para PostgreSQL | - | 1.0.16 |
Driver JDBC do Microsoft SQL Server | Driver do Microsoft JDBC 6.0 | Driver do Microsoft JDBC 9.4 |
Driver JDBC do MySQL | 5.0.8, 5.1.39 | 8.0.25 |
Driver JDBC do PostgreSQL | 9.4.1211.jre7, 9.4.1211.jre8 | 42.6.0.jre8 |
Driver JDBC do Oracle | ojdbc7 | ojdbc8 (12c e mais recentes) |
Uso de memória ao usar o Dataproc 2.2 ou 2.1
O uso da memória pode aumentar para pipelines que usam clusters do Dataproc 2.2
ou 2.1. Se você fizer upgrade da sua instância para a versão 6.10 ou mais recente e
os pipelines anteriores falharem devido a problemas de memória, aumente a memória do driver e
do executor para 2048 MB na configuração Resources
do
pipeline.
Como alternativa, é possível modificar a versão do Dataproc
o argumento de ambiente de execução system.profile.properties.imageVersion
para 2.0-debian10
.