Editar

Engenharia assistida por computador

Azure Application Gateway
Azure Blob Storage
Azure Kubernetes Service (AKS)
Azure Virtual Machines

Atenção

Este artigo faz referência ao CentOS, uma distribuição Linux que está se aproximando do status de Fim da Vida Útil (EOL). Por favor, considere o seu uso e planeje de acordo. Para obter mais informações, consulte as diretrizes de Fim da Vida Útil do CentOS.

Este cenário de exemplo demonstra a entrega de uma plataforma de software como serviço (SaaS) baseada nos recursos de computação de alto desempenho (HPC) do Azure. Este cenário baseia-se numa solução de software de engenharia. No entanto, a arquitetura é relevante para outras indústrias que exigem recursos de HPC, como renderização de imagens, modelagem complexa e cálculo de risco financeiro.

Arquitetura

Arquitetura para uma solução SaaS que permite capacidades HPC.

Transfira um ficheiro do Visio desta arquitetura.

Fluxo de Trabalho

  • Os usuários podem acessar máquinas virtuais (VMs) da série NV por meio de um navegador com uma conexão RDP baseada em HTML5 usando o serviço Apache Guacamole. Essas instâncias de VM fornecem GPUs poderosas para renderização e tarefas colaborativas. Os usuários podem editar seus designs e visualizar seus resultados sem precisar acessar dispositivos de computação móvel ou laptops de última geração. O agendador gira VMs adicionais com base em heurísticas definidas pelo usuário.
  • A partir de uma sessão CAD de desktop, os usuários podem enviar cargas de trabalho para execução em nós de cluster HPC disponíveis. Essas cargas de trabalho executam tarefas como análise de estresse ou cálculos computacionais de dinâmica de fluidos, eliminando a necessidade de clusters de computação dedicados no local. Esses nós de cluster podem ser configurados para dimensionamento automático com base na carga ou na profundidade da fila com base na demanda ativa do usuário por recursos de computação.
  • O Serviço Kubernetes do Azure (AKS) é usado para hospedar os recursos da Web disponíveis para os usuários finais.

Componentes

  • As máquinas virtuais da série H são usadas para executar simulações de computação intensiva, como modelagem molecular e dinâmica de fluidos computacional. A solução também tira proveito de tecnologias como conectividade RDMA (acesso remoto direto à memória) e rede InfiniBand.
  • As máquinas virtuais da série NV oferecem aos engenheiros uma funcionalidade de estação de trabalho high-end a partir de um navegador da Web padrão. Essas máquinas virtuais têm GPUs NVIDIA Tesla M60 que suportam renderização avançada e podem executar cargas de trabalho de precisão única.
  • As máquinas virtuais de uso geral que executam o CentOS lidam com cargas de trabalho mais tradicionais, como aplicativos Web.
  • O Application Gateway equilibra a carga das solicitações que chegam aos servidores Web.
  • O Serviço Kubernetes do Azure (AKS) é usado para executar cargas de trabalho escaláveis a um custo mais baixo para simulações que não exigem os recursos high-end de máquinas virtuais HPC ou GPU.
  • O Altair PBS Works Suite orquestra o fluxo de trabalho HPC, garantindo que instâncias de máquina virtual suficientes estejam disponíveis para lidar com a carga atual. Ele também deslocaliza máquinas virtuais quando a demanda é menor para reduzir custos.
  • O armazenamento de Blob armazena arquivos que suportam os trabalhos agendados.

Alternativas

  • O Azure CycleCloud simplifica a criação, o gerenciamento, a operação e a otimização de clusters HPC. Oferece recursos avançados de política e governança. O CycleCloud suporta qualquer agendador de tarefas ou pilha de software.
  • O HPC Pack pode criar e gerenciar um cluster HPC do Azure para cargas de trabalho baseadas no Windows Server. O HPC Pack não é uma opção para cargas de trabalho baseadas em Linux.
  • A Configuração do Estado de Automação do Azure fornece uma abordagem de infraestrutura como código para definir as máquinas virtuais e o software a ser implantado. As máquinas virtuais podem ser implantadas como parte de um conjunto de dimensionamento de máquinas virtuais, com regras de dimensionamento automático para nós de computação com base no número de trabalhos enviados para a fila de trabalhos. Quando uma nova máquina virtual é necessária, ela é provisionada usando a imagem corrigida mais recente da galeria de imagens do Azure e, em seguida, o software necessário é instalado e configurado por meio de um script de configuração DSC do PowerShell.
  • Funções do Azure

Detalhes do cenário

Este exemplo demonstra um fornecedor de software de engenharia que fornece aplicações de engenharia assistida por computador (CAE) a empresas de engenharia e empresas de produção. As soluções CAE permitem a inovação, reduzem os tempos de desenvolvimento e reduzem os custos durante toda a vida útil do projeto de um produto. Essas soluções exigem recursos de computação substanciais e, muitas vezes, processam grandes volumes de dados. Os elevados custos de um aparelho HPC no local ou de estações de trabalho topo de gama colocam frequentemente estas tecnologias fora do alcance de pequenas empresas de engenharia, empresários e estudantes.

A empresa quer expandir o mercado para suas aplicações construindo uma plataforma SaaS apoiada por tecnologias HPC baseadas em nuvem. Seus clientes devem ser capazes de pagar por recursos de computação conforme necessário e acessar um poder de computação maciço que, de outra forma, seria inacessível.

Os objetivos da empresa incluem:

  • Tirar partido das capacidades de HPC no Azure para acelerar o processo de conceção e teste do produto.
  • Usando as mais recentes inovações de hardware para executar simulações complexas, minimizando os custos para simulações mais simples.
  • Permitindo visualização e renderização realistas em um navegador da Web, sem a necessidade de uma estação de trabalho de engenharia high-end.

Potenciais casos de utilização

Este cenário está relacionado com os setores dos meios de comunicação social, finanças, indústria transformadora, educação, energia e ambiente. Outros casos de uso relevantes incluem:

  • Investigação genómica
  • Simulação meteorológica
  • Aplicações em química computacional

Considerações

Essas considerações implementam os pilares do Azure Well-Architected Framework, que é um conjunto de princípios orientadores que podem ser usados para melhorar a qualidade de uma carga de trabalho. Para obter mais informações, consulte Microsoft Azure Well-Architected Framework.

  • Embora o uso de uma abordagem de infraestrutura como código seja uma ótima maneira de gerenciar definições de compilação de máquina virtual, pode levar muito tempo para provisionar uma nova máquina virtual usando um script. Essa solução encontrou um bom meio termo usando o script DSC para criar periodicamente uma imagem dourada, que pode ser usada para provisionar uma nova máquina virtual mais rápido do que criar completamente uma VM sob demanda usando DSC. Os Serviços de DevOps do Azure ou outras ferramentas de CI/CD podem atualizar periodicamente imagens douradas usando scripts DSC.
  • Equilibrar os custos gerais da solução com a rápida disponibilidade de recursos de computação é uma consideração fundamental. O provisionamento de um pool de instâncias de máquinas virtuais da série N e colocá-las em um estado desalocado reduz os custos operacionais. Quando uma máquina virtual adicional é necessária, realocar uma instância existente envolverá ligar a máquina virtual em um host diferente, mas o tempo de deteção do barramento PCI exigido pelo sistema operacional para identificar e instalar drivers para a GPU é eliminado porque uma máquina virtual que é desprovisionada e, em seguida, reprovisionada manterá o mesmo barramento PCI para a GPU quando reiniciada.
  • A arquitetura original dependia inteiramente das máquinas virtuais do Azure para executar simulações. Para reduzir os custos de cargas de trabalho que não exigiam todos os recursos de uma máquina virtual, essas cargas de trabalho foram conteinerizadas e implantadas no Serviço Kubernetes do Azure (AKS).
  • A força de trabalho da empresa tinha habilidades existentes em tecnologias de código aberto. Eles podem tirar proveito dessas habilidades desenvolvendo tecnologias como Linux e Kubernetes.

Otimização de custos

A otimização de custos consiste em procurar formas de reduzir despesas desnecessárias e melhorar a eficiência operacional. Para obter mais informações, consulte Visão geral do pilar de otimização de custos.

Para ajudá-lo a explorar o custo de execução desse cenário, muitos dos serviços necessários são pré-configurados em um exemplo de calculadora de custos. Os custos da sua solução dependem do número e da escala de serviços necessários para atender às suas necessidades.

As considerações a seguir direcionarão uma parte substancial dos custos dessa solução:

  • Os custos da máquina virtual do Azure aumentam linearmente à medida que instâncias adicionais são provisionadas. As máquinas virtuais desalocadas incorrerão apenas em custos de armazenamento, e não em custos de computação. Essas máquinas desalocadas podem ser realocadas quando a demanda é alta.
  • Os custos dos Serviços Kubernetes do Azure são baseados no tipo de VM escolhido para dar suporte à carga de trabalho. Os custos aumentarão linearmente com base no número de VMs no cluster.

Próximos passos

  • Leia a história do cliente Altair. Este cenário de exemplo é baseado em uma versão de sua arquitetura.
  • Analise outras soluções de Big Compute disponíveis no Azure.