Compartilhar via


Cluster do Modo de Aplicação do Apache Flink no HDInsight no AKS

Importante

O Azure HDInsight no AKS se aposentou em 31 de janeiro de 2025. Saiba mais com este comunicado.

Você precisa migrar suas cargas de trabalho para microsoft fabric ou um produto equivalente do Azure para evitar o encerramento abrupto de suas cargas de trabalho.

Importante

Esse recurso está atualmente em versão prévia. Os termos de uso complementares para o Microsoft Azure Previews 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, consulte Azure HDInsight nas informações de visualização do AKS. Para perguntas ou sugestões de recursos, envie uma solicitação no AskHDInsight com os detalhes e siga-nos para mais atualizações na Comunidade Azure HDInsight .

O HDInsight no AKS agora oferece um cluster de modo de aplicativo Flink. Este cluster permite que você gerencie o ciclo de vida do modo de aplicativo Flink do cluster usando o portal do Azure, com uma interface fácil de usar e APIs REST do Gerenciamento de Recursos do Azure. Os clusters de modo de aplicativo são projetados para dar suporte a trabalhos grandes e de execução longa com recursos dedicados e lidar com tarefas de processamento de dados com uso intensivo de recursos ou extensas.

Esse modo de implantação permite atribuir recursos dedicados para aplicativos Flink específicos, garantindo que eles tenham poder de computação e memória suficientes para lidar com cargas de trabalho grandes com eficiência. 

Diagrama mostrando a relação entre a janela do aplicativo Flink e a janela do gerenciador de trabalho.

Vantagens

  • Implantação simplificada de cluster com arquivo JAR de trabalho.

  • API REST amigável ao usuário: o HDInsight em execução no AKS fornece APIs REST do ARM amigáveis para gerenciar operações de trabalhos no modo aplicativo, como Atualizar, Ponto de Restauração, Cancelar, Excluir.

  • Fácil de gerenciar Atualizações de Trabalho e Gerenciamento de Estado: a integração nativa do portal do Azure fornece uma experiência sem problemas para atualizar trabalhos e restaurá-los para o último estado salvo (ponto de salvamento). Essa funcionalidade garante a continuidade e a integridade dos dados em todo o ciclo de vida do trabalho.

  • Automatizar trabalhos do Flink usando o Azure Pipelines ou outras ferramentas de CI/CD: Com o uso do HDInsight no AKS, os usuários do Flink têm acesso à API Rest do ARM de forma amigável, sendo possível integrar perfeitamente os trabalhos do Flink ao pipeline do Azure ou a outras ferramentas de CI/CD.

Principais recursos

  • Parar e Iniciar Trabalhos com Pontos de Salvamento: Os usuários podem parar e iniciar suavemente seus trabalhos no modo aplicativo do Flink a partir do estado anterior (Savepoint). Os pontos de salvamento garantem que o progresso do trabalho seja preservado, permitindo retomadas perfeitas.

  • Atualizações de Tarefa: O usuário pode atualizar o trabalho do modo de aplicativo em execução depois de atualizar o arquivo jar na conta de armazenamento. Essa atualização usa automaticamente o ponto de salvamento e inicia o trabalho AppMode com um novo jar.

  • Atualizações sem estado: Reiniciar uma tarefa do AppMode é simplificado por meio de atualizações sem estado. Esse recurso permite que os usuários iniciem uma reinicialização limpa usando o jar de trabalho atualizado.

  • de Gerenciamento do Savepoint: a qualquer momento, os usuários podem criar pontos de salvamento para seus trabalhos em execução. Esses pontos de salvamento podem ser listados e usados para reiniciar o trabalho de um ponto de verificação específico, conforme necessário.

  • Cancelar: cancela o trabalho permanentemente.

  • Excluir: excluir cluster AppMode.

Pré-requisitos

Complete os pré-requisitos nas seguintes seções:

  • Prerrequisitos de assinatura.

  • Pré-requisitos de recursos.

  • Criar um pool de clusters.

  • Adicionar arquivo jar na Conta de Armazenamento.

    Antes de configurar um Cluster do Modo de Aplicativo Flink, são necessárias várias etapas preparatórias. Uma dessas etapas envolve colocar o JAR do trabalho do Modo de Aplicativo na conta de armazenamento do cluster.

  • Criar um diretório para o JAR de trabalho do modo aplicativo:

    Dentro dos contêineres dedicados, crie um diretório no qual você carrega o arquivo JAR do trabalho do Modo de Aplicativo. Esse diretório serve como o local para armazenar arquivos JAR que você deseja incluir no classpath do cluster ou trabalho do Flink.

  • Diretório de pontos de salvamento (opcional):

    Se os usuários pretendem usar pontos de salvamento durante a execução do trabalho, crie um diretório separado dentro da conta de armazenamento para armazenar esses pontos de salvamento. Esse diretório era usado para armazenar dados de ponto de verificação e metadados para pontos de salvamento.

  • Estrutura de diretório de exemplo:

    Diagrama mostrando a estrutura do diretório de pontos de salvamento.

Os clusters Flink AppMode podem ser criados depois que a implantação do pool de clusters for concluída, vamos examinar as etapas caso você esteja começando a usar um pool de clusters existente.

  1. No portal do Azure, digite "HDInsight cluster pools/HDInsight/HDInsight on AKS" e selecione "Azure HDInsight on AKS cluster pools" para ir para a página de pools de cluster. Na página de pools de cluster do HDInsight no AKS, selecione o pool de cluster no qual você deseja criar um novo cluster Flink.

    Captura de tela mostrando a página do pool de clusters.

  2. Na página do pool de clusters específica, clique em + Novo cluster e forneça as seguintes informações:

    Propriedade Descrição
    Subscrição Esse campo foi preenchido automaticamente com a assinatura do Azure que foi registrada para o Pool de Clusters.
    Grupo de Recursos Esse campo é preenchido automaticamente e mostra o grupo de recursos no pool de clusters.
    Região Esse campo é preenchido automaticamente e mostra a região selecionada no pool de clusters.
    Pool de clusters Esse campo é preenchido automaticamente e mostra o nome do pool de clusters no qual o cluster está sendo criado. Para criar um cluster em um pool diferente, localize o pool de clusters no portal e clique em + Novo cluster.
    HDInsight na versão do pool do AKS Esse campo é preenchido automaticamente e mostra a versão do pool de clusters na qual o cluster está sendo criado.
    HDInsight na versão do AKS Selecione a versão secundária ou a versão de patch do HDInsight no AKS do novo cluster.
    Tipo de cluster Na lista suspensa, selecione Flink.
    Nome do cluster Insira o nome do novo cluster.
    Identidade gerenciada atribuída pelo usuário Na lista suspensa, selecione a identidade gerenciada a ser usada com o cluster. Se você for o proprietário da MSI (Identidade de Serviço Gerenciado), e a MSI não tiver a função de Operador de Identidade Gerenciada no cluster, clique no link abaixo da caixa para atribuir à MSI do pool de agentes do AKS a permissão necessária. Se o MSI já tiver as permissões corretas, nenhum link será mostrado. Consulte os pré-requisitos para outras atribuições de função necessárias para o MSI.
    Conta de armazenamento Na lista suspensa, selecione a conta de armazenamento a ser associada ao cluster Flink e especifique o nome do contêiner. A identidade gerenciada recebe acesso adicional à conta de armazenamento especificada, usando a função 'Proprietário de Dados do Blob de Armazenamento' durante a criação do cluster.
    Rede virtual A rede virtual do cluster.
    Sub-rede A sub-rede virtual do cluster.
  3. Habilitando o catálogo do Hive para o Flink SQL:

    Propriedade Descrição
    Usar o catálogo do Hive Habilite essa opção para usar um metastore externo do Hive.
    Banco de Dados SQL para Hive Na lista suspensa, selecione o Banco de Dados SQL onde adicionar as tabelas do hive-metastore.
    Nome de usuário do administrador do SQL Insira o nome de usuário do administrador do SQL Server. Essa conta é usada pelo metastore para se comunicar com o banco de dados SQL.
    Cofre de chaves Na lista suspensa, selecione o Cofre de Chaves, que contém um segredo incluindo a senha para o nome de usuário do administrador do SQL Server. Você precisa configurar uma política de acesso com todas as permissões necessárias, como permissões de chave, permissões secretas e permissões de certificado para a MSI, que está sendo usada para a criação do cluster. A MSI precisa de uma função de Administrador do Key Vault. Adicione as permissões necessárias usando o IAM.
    Nome do segredo de senha do SQL Insira o nome do segredo do Key Vault onde está armazenada a senha do banco de dados SQL.

    Captura de tela que mostra a página de criação de cluster do Apache Flink.

    Nota

    Por padrão, usamos a conta de armazenamento para o catálogo do Hive da mesma forma que a conta de armazenamento e o contêiner usados durante a criação do cluster.

  4. Selecione Avançar: Configuração para continuar.

  5. Na página Configuração, forneça as seguintes informações:

    Propriedade Descrição
    Tamanho do nó Selecione o tamanho do nó a ser usado para os nós do Flink, tanto os nós principais quanto os nós de trabalho.
    Número de nós Selecione o número de nós para o cluster Flink; por padrão, os nós de cabeçalho são dois. O dimensionamento de nós de trabalho ajuda a determinar as configurações do gerenciador de tarefas para o Flink. O gerenciador de trabalhos e os servidores de histórico estão em nós principais.
  6. Na seção Implantação, escolha o tipo de implantação como Modo de Aplicativo forneça as seguintes informações:

    Propriedade Descrição
    Caminho JAR Forneça o caminho de armazenamento ABFS para o arquivo jar do seu trabalho. Por exemplo, abfs://flink@teststorage.dfs.core.windows.net/appmode/job.jar
    Classe de entrada (opcional) Classe principal para o cluster do modo de aplicação. Por exemplo: com.microsoft.testjob
    Argumentos (opcional) Argumento para sua classe principal de trabalho.
    Salvar nome do ponto Nome do ponto de salvamento antigo, que você deseja usar para iniciar o trabalho
    Modo de atualização Selecione a opção De atualização padrão. Essa opção é usada quando está sendo feita uma atualização para uma nova versão principal do cluster. Há três opções disponíveis. UPDATE: Usado quando um usuário deseja se recuperar do último ponto de salvamento após a atualização. STATELESS_UPDATE: Usado quando um usuário deseja reiniciar a tarefa após a atualização. LAST_STATE_UPDATE: Usado quando um usuário deseja recuperar a tarefa do último ponto de verificação após a atualização
    Configuração de job do Flink Adicione mais configurações necessárias para a tarefa do Flink.
  7. Selecione "Agregação de logs de tarefas". Marque a caixa de seleção se você quiser enviar o registro de atividade para o armazenamento remoto. Ele ajuda a depurar problemas relacionados ao trabalho. O local padrão para o log de trabalho é "StorageAccount/Container/DeploymentId/logs". Você pode alterar o diretório de log padrão configurando "pipeline.remote.log.dir". O intervalo padrão para a coleção de logs é de 600 segundos. O usuário pode alterar configurando "pipeline.log.aggregation.interval".

  8. Na seção Configuração de Serviço, forneça as seguintes informações:

    Propriedade Descrição
    CPU do gerenciador de tarefas Inteiro. Insira o tamanho das CPUs do Gerenciador de Tarefas (em núcleos).
    Memória do gerenciador de tarefas em MB Insira o tamanho da memória do Gerenciador de Tarefas em MB. Mínimo de 1.800 MB.
    CPU do gerenciador de trabalhos Número Inteiro Insira o número de CPUs para o Gerenciador de Trabalhos (em núcleos).
    Memória do gerenciador de tarefas em MB Insira o tamanho da memória em MB. Mínimo de 1.800 MB.
    CPU do servidor de histórico Inteiro. Insira o número de CPUs para o Gerenciador de Trabalhos (em núcleos).
    Memória do servidor de histórico em MB Insira o tamanho da memória em MB. Mínimo de 1.800 MB.

    Captura de tela mostrando a guia Criar cluster do Apache Flink.

  9. Clique em Avançar: botão Integração para continuar para a próxima página.

  10. Na página Integração, forneça as seguintes informações:

    Propriedade Descrição
    Análise de logs Esse recurso estará disponível apenas se o espaço de trabalho do Log Analytics associado ao pool de clusters for habilitado; uma vez habilitado, será possível selecionar os logs a serem coletados.
    Azure Prometheus Esse recurso é exibir insights e logs diretamente em seu cluster enviando métricas e logs para o workspace do Azure Monitor.

    Captura de tela mostrando a guia Criar integrações de cluster do Apache Flink.

  11. Clique no botão Avançar: Marcas para ir para a próxima página.

  12. Na página Etiquetas, forneça as seguintes informações:

    Propriedade Descrição
    Nome Opcional. Insira um nome como HDInsight no AKS para identificar facilmente todos os recursos associados aos recursos do cluster.
    Valor Você pode deixar isso em branco.
    Recurso Selecione Todos os recursos selecionados.
  13. Selecione Avançar: Examinar + criar para continuar.

  14. Na página Revisar + criar, procure a mensagem Validação bem-sucedida no topo da página e clique em Criar.

A página Implantação em processo exibiu que o cluster está sendo criado. Leva de 5 a 10 minutos para criar o cluster. Depois que o cluster é criado, a mensagem "Sua implantação está concluída" é exibida. Se você navegar para longe da página, poderá verificar o status atual das Notificações.

Gerenciar Tarefa de Aplicativo no Portal

O HDInsight AKS oferece maneiras de gerenciar trabalhos do Flink. Você pode relançar um trabalho que falhou. Reinicie o trabalho a partir do portal.

Para executar o trabalho do Flink no portal, acesse:

Portal > HDInsight no Pool de Clusters do AKS > Configurações > Cluster Flink > Trabalhos Flink.

Captura de tela mostrando trabalhos do Apache Flink em execução.

  • Parar: parar o trabalho não exigiu parâmetros. O usuário pode interromper o trabalho selecionando a ação. Depois que o trabalho for interrompido, o status do trabalho no portal será configurado como PARADA.

  • Iniciar: inicia o trabalho a partir do ponto de salvamento. Para iniciar o trabalho, selecione o trabalho interrompido e inicie-o.

  • Atualização: a atualização ajuda a reiniciar trabalhos com código de trabalho atualizado. Os usuários precisam atualizar o arquivo jar mais recente no local de armazenamento e atualizar a tarefa no portal. Esta ação interrompe o trabalho criando um ponto de salvamento e reinicia com o arquivo JAR mais recente.

  • Atualização Sem Estado: Sem Estado é como uma atualização, mas envolve um reinício completo da tarefa com o código mais recente. Depois que o trabalho é atualizado, o status do trabalho no portal é exibido como Em execução.

  • Ponto de salvamento: use o ponto de salvamento para o trabalho Flink.

  • Cancelar: encerrar o trabalho.

  • Excluir: excluir o cluster AppMode.

  • Exibir Detalhes do Trabalho: para exibir os detalhes do trabalho, o usuário pode clicar no nome do trabalho, ele fornece os detalhes sobre o trabalho e o resultado da última ação.

    Captura de tela mostrando o modo de exibição JSON.

Para qualquer ação com falha, essa exibição json fornece exceções detalhadas e motivos para a falha.