Alterar a versão da imagem do Dataproc no Cloud Data Fusion

Nesta página, descrevemos como alterar a versão da imagem do Dataproc usada pela sua instância do Cloud Data Fusion.

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 uma replicação estiver em execução quando você alterar a versão da imagem do Dataproc, as alterações não serão aplicadas à execução do pipeline.

Para pipelines em tempo real, se houver checkpoints ativos, a interrupção desses pipelines não causará 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

  1. Acesse a página Instâncias do Cloud Data Fusion (em CDAP, clique em Ver instâncias) e abra a instância em que você precisa interromper um pipeline.

    Acesse "Instâncias"

  2. Abra cada pipeline em tempo real no Pipeline Studio e clique em Stop.

  3. Abra cada job de replicação na página Replicate e clique em Stop.

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 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 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 seu 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

  1. No Console do Google Cloud, acesse a página Instâncias (em CDAP, clique em Ver instâncias) e abra a instância.

    Acesse "Instâncias"

  2. Clique em Administrador do sistema > Configuração > Preferências do sistema.

    Editar preferências do sistema

  3. Se uma imagem do Dataproc não estiver especificada em Preferências do Sistema, ou para alterar a preferência, clique em Editar Preferências do Sistema.

    1. Digite o seguinte texto no campo Chave:

      system.profile.properties.imageVersion

    2. Insira a imagem do Dataproc desejada no campo "Value", como 1.5-debian10.

    3. Clique em Salvar e fechar.

Definir preferências para o sistema

Essa alteração 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 modificada em um namespace, pipeline ou argumento de ambiente de execução na instância.

Alterar a versão da imagem do Dataproc em um namespace ou argumento do ambiente de execução do pipeline

Se você não tiver modificado a versão da imagem do Dataproc em "Namespace Preferences" ou em "Pipeline Runtime Arguments", poderá pular essas etapas.

Preferências de namespace

Se você tiver substituído a versão da imagem nas propriedades do namespace, siga estas etapas:

  1. Abra sua instância na IU do Cloud Data Fusion.

  2. Clique em System Admin > Configuration > Namespaces.

  3. Abra cada namespace e clique em Preferências.

    1. Verifique se não há substituições com a chave system.profile.properties.imageVersion com um valor incorreto de versão de imagem.

    2. Clique em Concluir.

Argumentos do ambiente de execução do pipeline

Se você tiver modificado a versão da imagem com uma propriedade nos argumentos de tempo de execução do pipeline, siga estas etapas:

  1. Abra sua instância na IU do Cloud Data Fusion.

  2. Clique em Pipeline > List e selecione o pipeline desejado.

    O pipeline é aberto na página Pipeline Studio.

  3. Clique no menu suspenso ao lado de Run.

    A janela Argumentos do tempo de execução é aberta.

  4. Confira se não há substituições com a chave system.profile.properties.imageVersion e o valor incorreto da versão da imagem.

  5. Clique em Save.

    Definir argumento de ambiente de execução do pipeline

Recriar clusters estáticos do Dataproc usados pelo Cloud Data Fusion com a versão da imagem desejada

Se você usa clusters atuais do Dataproc com o Cloud Data Fusion, siga o guia do Dataproc para recriá-los com a versão desejada da imagem do Dataproc para sua versão do Cloud Data Fusion.

Se houver pipelines em execução quando o cluster estiver sendo recriado, eles falharão. As execuções subsequentes serão realizadas no cluster recriado.

Como alternativa, é possível criar um novo cluster do Dataproc com a versão desejada de imagem do Dataproc e excluir e recriar o perfil de computação no Cloud Data Fusion com o mesmo nome de perfil de computação e nome atualizado do cluster do Dataproc. Dessa forma, a execução de pipelines em lote pode concluir a execução no cluster atual, e novas execuções do pipeline ocorrerão no novo cluster do Dataproc. É possível excluir o cluster antigo do Dataproc depois de confirmar que todas as execuções do pipeline foram concluídas.

Verificar se a versão da imagem do Dataproc está atualizada

Console

  1. No Console do Google Cloud, acesse a página Clusters do Dataproc.

    Acessar Clusters

  2. Abra a página Detalhes do cluster que foi criada pelo Cloud Data Fusion quando você especificou a nova versão.

    O campo Versão da imagem tem o novo valor especificado no Cloud Data Fusion.

API REST

  1. Veja 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:

    • NAMESPACE_ID pelo nome do namespace;
    • REGION_ID pelo nome da região em que seus clusters estão localizados;
  2. Pesquise o nome do pipeline (nome do cluster).

  3. Nesse objeto JSON, veja a imagem em config > softwareConfig > imageVersion.