Nesta página, descrevemos como alterar a versão de imagem do Dataproc usada pela 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, interromper o pipelines não causa perda de dados. Para jobs de replicação, enquanto já que os registros do banco de dados estão disponíveis, interrompendo e iniciando de replicação não causa perda de dados.
Console
Acesse a página Instâncias do Cloud Data Fusion (no CDAP, clique em Ver instâncias) e abra a instância 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 namespace.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 seu namespace e PIPELINE_NAME com o 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 Key:
system.profile.properties.imageVersion
Insira a imagem do Dataproc escolhida no campo Valor, como
2.1
.Clique em Salvar e fechar.
Essa mudança afeta toda a instância do Cloud Data Fusion, incluindo todos os namespaces e execuções de pipeline, a menos que a propriedade da versão da imagem seja substituída em um namespace, pipeline ou argumento de execução na sua 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á substituição com a chave
system.profile.properties.imageVersion
com uma imagem incorreta o valor da versão.Clique em Concluir.
Mudar a imagem nos perfis de computação do sistema
Clique em Administrador do sistema > Configuração.
Clique em Sistema Perfis de computação > Criar novo perfil.
Selecione o provisionador do Dataproc.
Crie o perfil do Dataproc. Na guia Versão de imagem insira uma versão de imagem do Dataproc.
Selecione este perfil de computação ao executar o pipeline no Studio página. 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 de execução do pipeline
Se você substituiu a versão da imagem com uma propriedade no ambiente de execução argumentos do seu pipeline, siga estas etapas:
Clique em > Lista.
MenuNa página Lista, selecione o pipeline que você quer atualizar.
O pipeline é aberto na página do Studio.
Para expandir as opções Run, clique na seta de expansão
.A janela Runtime Arguments será 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 atuais do Dataproc com Cloud Data Fusion, siga a documentação do Dataproc para recriar os clusters com a a versão de imagem do Dataproc escolhida para a para a versão anterior.
Como alternativa, você pode criar um novo cluster do Dataproc com o a versão de imagem do Dataproc escolhida e excluir e recriar a perfil no Cloud Data Fusion com o mesmo nome de perfil de computação e atualizado Nome do cluster do Dataproc. Dessa forma, a execução de pipelines em lote pode concluir a execução no cluster atual, e as execuções de pipeline seguintes são realizadas 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 o Cloud Data Fusion.
API REST
Consulte a lista de clusters com os respectivos 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 seus clusters estão localizados
Procure o nome do pipeline (nome do cluster).
Abaixo desse objeto JSON, veja a imagem em
config > softwareConfig > imageVersion
.
Alterar a imagem do Dataproc para a versão 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 mais recentes, a imagem 2.1 é o padrão.
Se você mudar para a imagem 2.1, para os pipelines em lote e que os jobs de replicação sejam bem-sucedidos, os drivers JDBC que o banco de dados os plug-ins usados nessas instâncias precisam ser compatíveis com o Java 11.
A imagem 2.1 do Dataproc tem as seguintes limitações em O Cloud Data Fusion:
- Os drivers JDBC do IBM Netezza e DB2 11 não são compatíveis.
- A imagem 2.1 não funciona com jobs de MapReduce.
- As versões do driver JDBC usadas nos plug-ins do banco de dados na instância precisam ser foi atualizada para oferecer suporte ao Java 11. Consulte a tabela a seguir para motoristas que funcionam com o Dataproc 2.1 e o Java 11:
Drivers JDBC | Versões anteriores removidas do Cloud Data Fusion 6.9.1 | Versões compatíveis com Java 8 e Java 11 que funcionam com Dataproc 2.0 ou 2.1 |
---|---|---|
Driver JDBC do Cloud SQL para MySQL | - | 1.0.16 |
Driver JDBC do Cloud SQL para PostgreSQL | - | 1.0.16 |
Driver JDBC DB2 11 | - | - |
Driver JDBC do Microsoft SQL Server | Driver JDBC do Microsoft 6.0 | Driver do Microsoft JDBC 9.4 |
Driver JDBC do MySQL | 5.0.8, 5.1.39 | 8.0.25 |
Driver JDBC do IBM Netezza | - | - |
Driver JDBC do PostgreSQL | 9.4.1211.jre7, 9.4.1211.jre8 | 42.6.0.jre8 |
Driver JDBC do Oracle | ojdbc7 | ojdbc8 (12c e superior) |
Uso da memória ao usar o Dataproc 2.1
O uso de memória pode aumentar em pipelines que usam o Dataproc 2.1
clusters. Se você fizer upgrade da instância para a versão 6.10.0 ou posterior e
pipelines anteriores falharem devido a problemas de memória, aumentar o driver e
memória do executor para 2.048 MB na configuração de 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
.