Gerenciamento de configuração do Apache Flink no HDInsight no AKS

Observação

Desativaremos o Microsoft Azure HDInsight no AKS em 31 de janeiro de 2025. Para evitar o encerramento abrupto das suas cargas de trabalho, você precisará migrá-las para o Microsoft Fabric ou para um produto equivalente do Azure antes de 31 de janeiro de 2025. Os clusters restantes em sua assinatura serão interrompidos e removidos do host.

Somente o suporte básico estará disponível até a data de desativação.

Importante

Esse recurso está atualmente na visualização. Os Termos de uso complementares para versões prévias do Microsoft Azure incluem mais termos legais que se aplicam aos recursos do Azure que estão em versão beta, em versão prévia ou ainda não lançados em disponibilidade geral. Para obter informações sobre essa versão prévia específica, confira Informações sobre a versão prévia do Azure HDInsight no AKS. No caso de perguntas ou sugestões de recursos, envie uma solicitação no AskHDInsight com os detalhes e siga-nos para ver mais atualizações sobre a Comunidade do Azure HDInsight.

O HDInsight no AKS fornece um conjunto de configurações padrão do Apache Flink para a maioria das propriedades e algumas com base em perfis de aplicativo comuns. No entanto, caso seja necessário ajustar as propriedades de configuração do Flink para melhorar o desempenho de determinadas aplicações com uso de estado, paralelismo ou configurações de memória, você pode alterar a configuração do trabalho do Flink usando a seção Trabalhos do Flink no HDInsight no cluster AKS.

  1. Acesse Configurações > Trabalhos do Flink > Clique em Atualizar.

    Captura de tela mostrando o status da atualização.

  2. Clique em + Adicionar uma linha para editar a configuração.

    Captura de tela do trabalho de atualização.

    Aqui, o intervalo de ponto de verificação é alterado em Nível do cluster.

  3. Atualize as alterações clicando em OK e depois em Salvar.

  4. Depois de salvas, as novas configurações são atualizadas em alguns minutos (aproximadamente cinco minutos).

  5. Configurações, que podem ser atualizadas usando as Definições de Gerenciamento de Configuração.

    processMemory size:

  6. As configurações padrão do tamanho da memória do processo ou do gerenciador de tarefas e do gerenciador de tarefas seriam a memória configurada pelo usuário durante a criação do cluster.

  7. Esse tamanho pode ser configurado usando a propriedade de configuração abaixo. Para alterar a memória do processo do gerenciador de tarefas, use essa configuração.

    taskmanager.memory.process.size : <value>

    Exemplo: taskmanager.memory.process.size : 2000mb

  8. Para o gerenciador de trabalhos

    jobmanager.memory.process.size : <value>

    Observação

    A memória máxima do processo configurável é igual à memória configurada para jobmanager/taskmanager.

Intervalo de ponto de verificação

O intervalo de ponto de verificação determina com que frequência o Flink dispara um ponto de verificação. Ele é definido em milissegundos e pode ser definido usando a seguinte propriedade de configuração

execution.checkpoint.interval: <value>

A configuração padrão é 60.000 milissegundos (1 min), esse valor pode ser alterado conforme desejado.

Back-end de estado

O back-end de estado determina como o Flink gerencia e persiste o estado do seu aplicativo. Isso afeta a forma como os pontos de verificação são armazenados. Você pode configurar o back-end de estado usando a seguinte propriedade:

state.backend: <value>

Por padrão, os clusters do Apache Flink no HDInsight no AKS usam o banco de dados do Rocks.

Caminho de armazenamento do ponto de verificação

Permitimos pontos de verificação persistentes por padrão armazenando os pontos de verificação em armazenamento abfs, conforme configurado pelo usuário. Mesmo que o trabalho falhe, uma vez que os pontos de verificação são persistentes, ele pode ser facilmente iniciado com o ponto de verificação mais recente.

state.checkpoints.dir: <path> Substitua <path> pelo caminho desejado em que os pontos de verificação são armazenados.

Por padrão, ele é armazenado na conta de armazenamento (ABFS), configurada pelo usuário. Esse valor pode ser alterado para qualquer caminho desejado, desde que os pods do Flink possam acessá-lo.

Máximo de pontos de verificação simultâneos

Você pode limitar o número máximo de pontos de verificação simultâneos definindo a seguinte propriedade: checkpoint.max-concurrent-checkpoints: <value>

Substitua <value> pelo número máximo desejado de pontos de verificação simultâneos. Por exemplo, 1 para permitir apenas um ponto de verificação por vez.

Máximo de pontos de verificação retidos

Você pode limitar o número máximo de pontos de verificação a serem retidos definindo a seguinte propriedade: state.checkpoints.num-retained: <value> Substitua <value> pelo número máximo desejado. Por padrão, retemos no máximo cinco pontos de verificação.

Caminho de armazenamento do ponto de salvamento

Permitimos pontos de salvamento persistentes por padrão armazenando os pontos de salvamento em armazenamento abfs, conforme configurado pelo usuário. Se um usuário quiser parar e, posteriormente, iniciar o trabalho com um ponto de salvamento específico, poderá configurar esse local. state.checkpoints.dir: <path> Substitua <path> pelo caminho desejado em que os pontos de salvamento são armazenados. Por padrão, ele é armazenado na conta de armazenamento configurada pelo usuário. (Damos suporte a ABFS). Esse valor pode ser alterado para qualquer caminho desejado, desde que os pods do Flink possam acessá-lo.

Alta disponibilidade do gerenciador de trabalhos

No HDInsight no AKS, o Flink usa o Kubernetes como back-end. Mesmo que o Gerenciador de Trabalhos falhe no meio do processo devido a qualquer problema conhecido/desconhecido, o pod será reiniciado em alguns segundos. Portanto, mesmo que o trabalho seja reiniciado devido a esse problema, ele será recuperado do ponto de verificação mais recente.

Perguntas frequentes

Por que o trabalho falha no meio do caminho? Mesmo que os trabalhos falhem abruptamente, se os pontos de verificação estiverem acontecendo continuamente, o trabalho será reiniciado por padrão do ponto de verificação mais recente.

Alterar a estratégia de trabalho durante o processo? Há casos de uso em que o trabalho precisa ser modificado durante a produção devido a algum bug no nível do trabalho. Durante esse tempo, o usuário pode interromper o trabalho, o que automaticamente criaria um ponto de salvamento e o salvaria no local de pontos de salvamento.

  1. Clique em savepoint e aguarde que savepoint seja concluído.

    Captura de tela mostrando opções de ponto de salvamento.

  2. Após a conclusão do ponto de salvamento, clique em iniciar e a guia Iniciar Trabalho será exibida. Selecione o nome do ponto de salvamento na lista suspensa. Edite as configurações, se necessário. E clique em OK.

    Captura de tela mostrando como salvar o IP.

Como o ponto de salvamento é fornecido no trabalho, o Flink sabe de onde começar a processar os dados.

Referência