Compartilhar via


A estrutura bem arquitetada do Azure para HPC

O plano para computação de alto desempenho (HPC) do Azure descreve um processo para racionalizar seu cenário, priorizar esforços técnicos e identificar cargas de trabalho. Para muitas das cargas de trabalho, é importante aderir a um conjunto de princípios arquitetônicos. Esses princípios ajudam a orientar o desenvolvimento e a otimização das cargas de trabalho. Os cinco constructos arquitetônicos são detalhados na Azure Well-Architected Framework. Este guia fornece um resumo de como você pode aplicar esses princípios ao gerenciamento de suas cargas de trabalho de dados.

Confiabilidade

Tudo tem potencial para quebrar. Os pipelines de dados não são exceção. Grandes arquiteturas são projetadas com disponibilidade e resiliência em mente. As principais considerações são a rapidez com que você pode detectar alterações e a rapidez com que pode retomar as operações.

Seu ambiente de dados deve considerar arquiteturas resilientes, redundâncias entre regiões, nível de serviço, SLAs (contratos de nível de serviço) e suporte crítico. O ambiente existente também deve incluir auditoria, monitoramento e alertas usando o monitoramento integrado e uma estrutura de notificação.

Além desses controles ambientais, a equipe de carga de trabalho deve considerar:

  • Fazer mais modificações na arquitetura para melhorar os SLAs de nível de serviço.
  • Configuração de arquitetura redundante específica de carga de trabalho.
  • Estabelecer processos de monitoramento e notificação além do que as equipes de operações em nuvem fornecem.

Conectividade híbrida da Rota Expressa

Para dar suporte a cargas de trabalho de HPC de missão crítica, use uma configuração de alta disponibilidade do Azure ExpressRoute. Mesmo em um único site, configuração de alta disponibilidade onde você pode ter uma conexão redundante de Rota Expressa, ele não protege contra o tempo de inatividade de um único site de borda. Quando você habilita duas conexões em duas instalações, a redundância permite que seus negócios continuem se houver um desastre no local principal. Usando a alta disponibilidade da Rota Expressa, você pode ajudar a garantir a conectividade com o Azure se ocorrer uma interrupção da Rota Expressa em uma única região.

Recomendações

  • Habilite dois circuitos de Rota Expressa em dois locais de presença de presença de Rota Expressa diferentes para redundância máxima.
    • Essa configuração requer que você estabeleça dois circuitos de Rota Expressa no portal do Azure para os dois locais de site de borda de Rota Expressa diferentes. Em seguida, você conecta ambos os circuitos de Rota Expressa à mesma rede de hub virtual no Azure.
    • Coloque os dois locais de presença na mesma região do Azure. É o que fornece a redundância no caso de um dos locais de emparelhamento falhar. Ambas as conexões de Rota Expressa terminam na mesma rede de hub virtual no Azure. Exiba a lista de locais de Rota Expressa e parceiros de conectividade para planejar seus locais de emparelhamento de Rota Expressa.
    • Trabalhe com o provedor para configurar o segundo site da Rota Expressa.
    • Certifique-se de que a segunda conexão esteja funcionando fazendo failover do tráfego para o segundo local, o que é crítico. Realize exercícios regulares para garantir a conectividade.

Para obter mais informações sobre uma configuração de Rota Expressa de resiliência máxima, consulte Design para recuperação de desastres com a Rota Expressa.

Segurança

Aplique princípios de segurança ao seu ambiente de HPC para fornecer proteções contra ataques deliberados e abuso de seus valiosos dados e sistemas. Procure proteger as imagens do sistema operacional e o acesso do usuário e siga as diretrizes de segurança do Lote do Azure e do Azure CycleCloud. Para obter mais informações, consulte Princípios do pilar de segurança.

Imagens do sistema operacional

O Azure Marketplace fornece imagens HPC baseadas em Linux para usar no cluster. Essas imagens contêm muitas bibliotecas populares, pacotes de software e ferramentas de diagnóstico, como:

  • Bibliotecas MPI (Message Passing Interface, interface de passagem de mensagens) baseadas em InfiniBand.
  • Mellanox OFED.
  • IP pré-configurado sobre InfiniBand.
  • Tempos de execução de comunicação.
  • Bibliotecas otimizadas para Intel/AMD.
  • Ferramentas de diagnóstico de HPC do Azure.

Você pode começar com as imagens e, em seguida, aplicar as políticas de segurança da sua organização para fortalecer as imagens de software contra vulnerabilidades e ameaças cibernéticas. Após a validação, você pode salvar a nova imagem na Galeria de Computação do Azure. Em seguida, você pode usar a imagem para criar máquinas virtuais no Azure CycleCloud, no Azure HPC e no Batch.

Acesso do usuário

  • Defina linhas claras de responsabilidade e separação de tarefas para cada função.
  • Restrinja o acesso com base na necessidade de conhecimento e nos princípios de segurança de privilégios mínimos.
  • Atribua permissões a usuários, grupos e aplicativos em um determinado escopo por meio do controle de acesso baseado em função do Azure. Use funções internas quando possível.
  • Impeça a exclusão ou modificação de um recurso, um grupo de recursos ou uma assinatura por meio de bloqueios de gerenciamento.
  • Use identidades gerenciadas para acessar recursos no Azure.
  • Dê suporte a um único diretório empresarial. Mantenha a nuvem e os diretórios locais sincronizados, exceto para contas de impacto crítico.
  • Configure o Acesso Condicional do Microsoft Entra. Aplique e meça os principais atributos de segurança ao autenticar todos os usuários, especialmente para contas de impacto crítico.
  • Use métodos sem senha ou opte por métodos modernos de senha.
  • Bloqueie protocolos e métodos de autenticação herdados.

Segurança do Lote do Azure

Siga as práticas recomendadas para habilitar a segurança para o Batch.

Segurança do Azure CycleCloud

Siga as práticas recomendadas para habilitar a segurança para o Azure CycleCloud.

Otimização de custo

Para aproveitar ao máximo a execução do seu ambiente no Azure, priorize o gerenciamento de custos e os exercícios de planejamento inicial. O gerenciamento e o planejamento de custos são normalmente as considerações mais importantes para a jornada de migração bem-sucedida de uma organização para a nuvem. O Microsoft Cost Management oferece ferramentas para planejar, analisar e reduzir gastos para maximizar seu investimento em nuvem. Para obter mais informações sobre como planejar e otimizar seus custos de nuvem, consulte Práticas recomendadas de faturamento de gerenciamento de custos. As considerações a seguir são algumas das mais importantes na otimização de custos.

Escolha do sistema operacional

Linux é o sistema operacional dominante para cargas de trabalho HPC. O Linux é de código aberto e ajustado para desempenho para usar a infraestrutura HPC. Portanto, as bibliotecas MPI e os drivers Infiniband funcionam bem no Linux versus Windows. Usando máquinas virtuais (VMs) Linux versus Windows para configurar um cluster HPC, ele pode definitivamente economizar custos. Mas alguns usuários podem ter uma forte preferência por um ambiente Windows, especialmente ao fazer as tarefas de pré-processamento e pós-processamento em cargas de trabalho, como dinâmica de fluidos computacional. Nesse caso, recomendamos que um front-end do Windows envie trabalhos para um host Linux, um nó principal, que usa os nós de computação para simulações.

Dimensionamento automático

O dimensionamento automático permite configurar e usar VMs somente quando você envia um trabalho ou quando um trabalho está ativo. Quando o trabalho for concluído, os nós serão desativados automaticamente. Usando o dimensionamento automático, você ajusta os recursos de computação usados pelo seu aplicativo, potencialmente economizando tempo e dinheiro. O Azure CycleCloud tem o dimensionamento automático ativado em seus agendadores por padrão. O limite de tempo padrão para desligar os nós é de 15 minutos. Você pode personalizar o limite de tempo. O limite de tempo ajuda a garantir que os usuários paguem apenas pelo que usam. O Batch fornece um mecanismo para integrar uma fórmula de dimensionamento automático com uma escolha de parâmetros. Para obter mais informações, consulte Introdução ao dimensionamento automático no Azure.

Pagamento conforme o uso versus instâncias reservadas e instâncias spot

O Azure fornece várias opções de preços, pagamento conforme o uso, instância reservada com opções de um ou três anos e instâncias spot sujeitas à capacidade disponível no Data Center. As instâncias de pagamento conforme o uso são econômicas porque atendem à demanda esporádica por capacidade. As instâncias reservadas podem ser econômicas se houver uma demanda contínua por HPC ou se houver muitos aplicativos executados no HPC do Azure. Ambos são adequados para cargas de trabalho prontas para produção. Instâncias spot são boas para testes breves e experimentação ou se seu aplicativo precisar de ponto de verificação, por exemplo, genômica. As instâncias spot estão sujeitas à capacidade disponível no data center. O preço depende desses fatores. Você pode remover instâncias pontuais com aviso prévio mínimo.

Classificação de dados

As cargas de trabalho de HPC se beneficiam do armazenamento de alto throughput. Por exemplo, use o Azure Managed Lustre, os Arquivos de Aplicativo de Rede do Azure ou o Sistema de Arquivos Paralelo BeeGFS. Esses serviços de armazenamento oferecem desempenho, mas podem ter um custo. É importante classificar seus dados com antecedência para que apenas os dados específicos do aplicativo residam nesses sistemas. Todos os outros dados podem residir em soluções de armazenamento de baixo custo, como o Armazenamento Azure Data Lake ou o Armazenamento de Blobs do Azure.

Além disso, pode ser útil configurar sistemas de armazenamento HPC sob demanda para ajudar a garantir que os dados sejam sincronizados com um serviço de armazenamento de baixo custo, como o Blob Storage. O armazenamento sob demanda ajuda a garantir que os dados sejam retidos no Armazenamento de Blobs quando o sistema de armazenamento de alto desempenho estiver desligado. O Managed Lustre e o Net App Files oferecem um serviço de sincronização.

Definir orçamentos

O Azure CycleCloud permite definir orçamentos por cluster e pode enviar notificações aos destinatários se eles estiverem perto de esgotar os orçamentos. Para Lote, você pode criar orçamentos e alertas de gastos para seus pools de Lotes ou contas de Lote no portal do Azure. Orçamentos e alertas são úteis para notificar os participantes de qualquer risco de excesso de gastos, embora seja possível que haja um atraso em alertas de gastos e que o orçamento seja um pouco excedido.

Excelência operacional

Quando você mantém seus aplicativos HPC em execução em produção, as implantações devem ser confiáveis e previsíveis. Implantações confiáveis e previsíveis consistem em automatizar cargas de trabalho de HPC com soluções de infraestrutura como código (IaC). Você também deve executar verificações de integridade do nó para analisar e monitorar suas cargas de trabalho de HPC.

Para obter mais informações sobre sugestões de implantação, consulte Recomendações para usar a infraestrutura como código. Para obter mais informações sobre sugestões de monitoramento, consulte Recomendações para projetar e criar um sistema de monitoramento.

Infraestrutura como código

A HPC no Azure implanta vários recursos, como Azure CycleCloud, Cluster HPC, Armazenamento, Nós de Visualização, Servidores de Licença e assim por diante. Para automatizar a implantação, recomendamos que você use ferramentas padrão do setor, como Terraform, Ansible e Packer, para simplificar o processo.

Verificação de integridade do nó

O Espaço Gerenciado do Azure para Grafana é um serviço totalmente gerenciado para soluções de análise e monitoramento. O Grafana Labs suporta o Grafana e fornece visualizações de dados extensíveis. Você pode integrar essa solução nas cargas de trabalho de HPC como um exemplo. Para obter mais informações, consulte Plataforma Azure HPC OnDemand.

Eficiência de desempenho

Certifique-se de que seu ambiente de HPC seja capaz de ser dimensionado de forma eficiente para que possa atender às demandas impostas pelos usuários. Escolha a plataforma certa para seus aplicativos HPC com base nas recomendações do fornecedor do aplicativo. Invista em planejamento de capacidade se precisar de infraestrutura extra para atender à demanda. Monitore o desempenho da infraestrutura de HPC à medida que os usuários usam seu sistema.

Para obter mais informações, consulte os artigos de eficiência de desempenho.

Escolha a plataforma certa para o aplicativo HPC

O Azure oferece uma variedade de plataformas para VMs baseadas em Intel, AMD CPU e NVIDIA e GPU AMD. Embora a maioria dos aplicativos seja compatível com o que está disponível, alguns se beneficiam apenas de um tipo específico de CPU ou GPU. Antes de implantar sua infraestrutura na nuvem, é importante ter uma recomendação do ISV (fornecedor do aplicativo) para entender as seguintes necessidades.

  • Se o aplicativo estiver vinculado à memória, à CPU ou à GPU
  • Se eles têm alguma recomendação sobre qualquer tipo de arquitetura de CPU ou GPU para desempenho
  • Se houver um tipo de MPI e sua versão da qual seu aplicativo pode se beneficiar
  • Se houver uma recomendação no tipo de agendador:
  • Se houver uma recomendação sobre IOPS/taxa de transferência dos sistemas de arquivos paralelos

Invista no planejamento de capacidade

Com base no tipo do aplicativo e suas condições de licença, analise se a licença está definida para usar um número específico de núcleos. Avalie seu investimento para permitir que a licença atenda à HPC e, em seguida, planeje sua capacidade de acordo.

Monitorar o desempenho da infraestrutura

  • É importante ser capaz de controlar a maneira como os usuários usam seu sistema, rastrear o uso de recursos e, geralmente, monitorar a integridade e o desempenho do sistema. Você pode usar essas informações como um auxílio de diagnóstico para detectar e corrigir problemas e para ajudar a identificar possíveis problemas e evitar que eles ocorram. Para obter uma visão geral dos componentes e serviços do Azure disponíveis para monitorar seus recursos, consulte Visão geral do Azure Monitor.
  • O Monitor é uma ótima ferramenta para identificar se há algum gargalo nas instâncias e no armazenamento da VM.
  • A limitação de armazenamento pode fazer com que os aplicativos diminuam substancialmente e afetem o desempenho. A limitação ocorre quando as operações de entrada e saída no armazenamento excedem os limites de taxa de transferência definidos. Os serviços de Armazenamento do Azure oferecem gráficos de operações de leitura e gravação para monitorar se há algum problema de limitação.
  • O Azure CycleCloud integra-se aos serviços do Azure, como o Monitor e as ferramentas de Gestão de Custos da Microsoft. Ele também suporta o monitoramento de serviços externos através de sua arquitetura conectável. Para obter mais informações, consulte Monitoramento.
  • Além disso, se você estiver usando o Batch, o Batch Explorer é uma ferramenta de cliente autônoma, gratuita e com recursos avançados para ajudar a criar, depurar e monitorar aplicativos em lote.

Próximas etapas