Cluster do Modo de Aplicativo 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 agora oferece um cluster de modo de Aplicativo do Flink. Esse cluster permite gerenciar o ciclo de vida do modo de aplicativo do Flink do cluster usando o portal do Azure com 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 extensas ou com uso intensivo de recursos.
Esse modo de implantação permite atribuir recursos dedicados a aplicativos do 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.
Vantagens
Implantação simplificada de cluster com jar de trabalho.
API REST amigável ao usuário: o HDInsight no AKS fornece APIs REST do ARM amigáveis para gerenciar a operação de trabalho do modo de aplicativo, como Atualizar, Ponto de salvamento, Cancelar e Excluir.
Atualizações de trabalho e gerenciamento de estado fáceis de gerenciar: a integração nativa com o portal do Azure fornece uma experiência sem inconvenientes 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: usando o HDInsight no AKS, os usuários do Flink têm acesso à API REST do ARM amigável, com a possibilidade de integrar perfeitamente as operações de trabalho 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 normalmente os próprios trabalhos do AppMode do Flink a partir do estado anterior deles (Ponto de salvamento). Os pontos de salvamento garantem que o progresso do trabalho seja preservado, permitindo retomadas sem transtornos.
Atualizações de trabalho: os usuários podem atualizar o trabalho AppMode em execução depois de atualizar o 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: a execução de uma nova reinicialização para um trabalho AppMode é simplificada 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.
Gerenciamento de pontos de salvamento: 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 o cluster AppMode.
Como criar um cluster de Aplicativo do Flink
Pré-requisitos
Atenda aos pré-requisitos nas seguintes seções:
Adicionar jar de trabalho à Conta de Armazenamento.
Antes de configurar um Cluster do Modo de Aplicativo do 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.
Crie um diretório para o JAR de trabalho do Modo de 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 é usado para armazenar dados de ponto de verificação e metadados para pontos de salvamento.
Estrutura de diretório de exemplo:
Criar cluster do modo de aplicativo do Flink
Os clusters de AppMode do Flink podem ser criados após a conclusão da implantação do pool de clusters. Vamos examinar as etapas caso você esteja começando com um pool de clusters existente.
No portal do Azure, digite Pools de clusters do HDInsight/HDInsight/HDInsight no AKS e selecione Pools de clusters do Azure HDInsight no AKS para acessar a página de pools de clusters. Na página de pools de clusters do HDInsight no AKS, selecione o pool de clusters no qual você deseja criar um cluster do Flink.
Na página do pool de clusters específico, clique em + Novo cluster e forneça as seguintes informações:
Propriedade Descrição Assinatura 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. Region 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 agora está sendo criado. Para criar um cluster em um pool diferente, localize o pool de clusters no portal e clique em + Novo cluster. Versão do pool do HDInsight no AKS Esse campo é preenchido automaticamente e mostra a versão do pool de clusters na qual o cluster agora está sendo criado. Versão do HDInsight no AKS Selecione a versão secundária ou 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 do Serviço Gerenciado) e a MSI não tiver a função Operador de Identidade Gerenciada no cluster, clique no link abaixo da caixa para atribuir a permissão necessária da MSI do pool de agentes do AKS. Se a 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 a MSI. Conta de armazenamento Na lista suspensa, selecione a conta de armazenamento a ser associada ao cluster do Flink e especifique o nome do contêiner. A identidade gerenciada receberá acesso à 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. Habilitando o catálogo do Hive para o SQL do Flink:
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 no qual adicionar tabelas hive-metastore. Nome de usuário 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. Key vault Na lista suspensa, selecione o Key Vault, que contém um segredo com senha para o nome de usuário do administrador do servidor SQL. Você precisa configurar uma política de acesso com todas as permissões necessárias, como permissões de chave, de segredo e de certificado para o MSI, que está sendo usado para a criação do cluster. O MSI precisa de uma função Administrador do Key Vault. Adicione as permissões necessárias usando o IAM. Nome do segredo da senha do SQL Insira o nome do segredo do Key Vault em que a senha do banco de dados SQL está armazenada. Observação
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.
Selecione Avançar: Configuração para continuar.
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, de cabeçalho e de trabalho. Número de nós Selecione o número de nós para o cluster do 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 de cabeçalho. Na seção Implantação, escolha o tipo de implantação como Modo de Aplicativo e forneça as seguintes informações:
Propriedade Descrição Caminho do Jar Forneça o caminho do ABFS (Armazenamento) para o jar de 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 aplicativo. Por exemplo: com.microsoft.testjob Args (opcional) Argumento para a classe principal de trabalho. Nome do ponto de salvamento 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 a atualização da versão principal está sendo realizada para o cluster. Há três opções disponíveis. UPDATE: usado quando um usuário deseja recuperar a partir do último ponto de salvamento após a atualização. STATELESS_UPDATE: usado quando um usuário deseja reiniciar para o trabalho após a atualização. LAST_STATE_UPDATE: usado quando um usuário deseja recuperar o trabalho a partir do último ponto de verificação após a atualização Configuração do trabalho do Flink Adicione mais configurações necessárias para o trabalho do Flink. Selecione "Agregação de log de trabalhos". Marque a caixa de seleção se você quiser carregar o log de trabalhos no armazenamento remoto. Ele ajuda a depurar os problemas de trabalho. O local padrão para o log de trabalhos é "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. Os usuários podem alterar configurando "pipeline.log.aggregation.interval".
Na guia Configuração do serviço, forneça as seguintes informações:
Propriedade Descrição CPU do gerenciador de tarefas Integer. 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 Integer. Insira o número de CPUs para o Gerenciador de trabalhos (em núcleos). Memória do Gerenciador de trabalhos em MB Insira o tamanho da memória em MB. Mínimo de 1.800 MB. CPU do servidor de histórico Integer. 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. Clique no botão Próxima Integração para passar para a próxima página.
Na página Integração, forneça as seguintes informações:
Propriedade Descrição Log Analytics Esse recurso só estará disponível se o pool de clusters tiver um workspace de análise de logs associado. Uma vez que ele for habilitado, os logs a serem coletados poderão ser selecionados. Azure Prometheus Esse recurso é para exibir Insights e Logs diretamente em seu cluster por meio do envio de métricas e logs para um workspace do Azure Monitor. Clique no botão Próximo: Marcas para passar para a próxima página.
Na página Tags, 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 seus recursos de cluster. Valor Você pode deixar isso em branco. Recurso Selecione Todos os recursos selecionados. Selecione Próximo: Examinar + criar para continuar.
Na página Examinar + criar, procure a mensagem Validação bem-sucedida na parte superior da página e clique em Criar.
A página Implantação em andamento é exibida, mostrando que o cluster está sendo criado. Leva de cinco a dez minutos para criar o cluster. Depois que o cluster é criado, a mensagem "Sua implantação é concluída" é exibida. Se você navegar para longe da página, poderá verificar o status atual das suas Notificações.
Gerenciar o Trabalho de Aplicativo a partir do Portal
O HDInsight no AKS fornece maneiras de gerenciar trabalhos do Flink. Você pode reiniciar um trabalho com falha. Reinicie o trabalho a partir do portal.
Para executar o trabalho do Flink a partir do portal, acesse:
Portal > Pool de Clusters do HDInsight no AKS > Cluster do Flink > Configurações > Trabalhos do Flink.
Parar: não foram exigidos parâmetros para parar o trabalho. O usuário pode parar o trabalho selecionando a ação. Depois que o trabalho é parado, o status dele no portal é PARADO.
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 jar de trabalho mais recente no local de armazenamento e atualizar o trabalho por meio do portal. Essa ação para o trabalho com o ponto de salvamento e inicia-o novamente com o jar mais recente.
Atualização sem estado: é como uma atualização, mas envolve uma reinicialização do trabalho com o código mais recente. Depois que o trabalho é iniciado, o status dele no portal é Em execução.
Ponto de salvamento: use o ponto de salvamento para o trabalho Flink.
Cancelar: terminar o trabalho.
Excluir: excluir o cluster do AppMode.
Exibir detalhes do trabalho: para exibir os detalhes do trabalho, os usuários podem clicar no nome do trabalho. Ele fornece os detalhes sobre o trabalho e o resultado da última ação.
Para qualquer ação com falha, essa exibição json fornece exceções detalhadas e motivos para a falha.