Microsoft HPC Pack

O Microsoft HPC Pack é uma solução HPC gratuita criada no Microsoft Azure com tecnologias do Windows Server e dá suporte a uma ampla gama de cargas de trabalho HPC. Esta página articula os recursos e os detalhes de configuração para integração do HPC Pack ao Cyclecloud.

Limitações e versões com suporte

O Microsoft HPC Pack 2016 (com a Atualização 3) e o Microsoft HPC Pack 2019 têm suporte no CycleCloud com limitações abaixo:

  • O cluster deve ser criado em um Domínio do Active Directory.
  • O cluster pode conter apenas um único nó de cabeçalho.
  • Ainda não há suporte para alta disponibilidade no nó principal.
  • Não há suporte para personalização de imagem de VM do nó principal.
  • Ainda não há suporte para nós de computação do Linux.
  • O nó principal requer acesso à Internet de saída para baixar o Binário nuget e o Python3.
  • Ainda não há suporte para a configuração de CLI e cloud-init.

Pré-requisitos

Domínio do Active Directory

Atualmente, todos os nós do HPC Pack devem ser ingressados em um Domínio do Active Directory. Se você estiver implantando o cluster HPC Pack em uma rede virtual que tenha uma conexão VPN Site a Site ou ExpressRoute com sua rede corporativa, normalmente já há uma Domínio do Active Directory existente. Se você ainda não tiver um domínio do AD em sua rede virtual, poderá optar por criar um novo domínio do AD promovendo o nó principal como controlador de domínio.

Cofre de Chave do Azure

O Microsoft HPC Pack requer um certificado PFX para proteger a comunicação do nó e também requer credenciais de usuário de domínio do AD para ingressar os nós no domínio do AD. Embora você possa especificar diretamente um arquivo PFX, senha de proteção e senha do usuário no modelo, é altamente recomendável usar o Azure Key Vault para tratamento seguro do certificado e da senha do usuário. Consulte Criar um Certificado de Key Vault do Azure.

O cluster também requer nome de usuário e senha de uma conta de administrador do AD para ingressar nós no domínio à medida que eles são criados. É altamente recomendável usar o Key Vault do Azure.

Identidade Gerenciada Atribuída pelo Usuário do Azure

Para usar o Key Vault do Azure para o certificado e as credenciais, você precisa criar uma Identidade Gerenciada Atribuída pelo Usuário do Azure e conceder a permissão Get' para o Segredo e o Certificado do Key Vault do Azure.

Você pode consultar este tutorial Key Vault para criar seu Key Vault e uma Identidade Gerenciada com acesso Key Vault.

É recomendável usar o Role-Based Controle de Acesso do Azure para atribuir permissões Key Vault à Identidade Gerenciada.

Funções de nó do HPC Pack

Há três funções de nó diferentes no cluster HPC Pack:

  • Nó principal: fornece os serviços de gerenciamento de cluster e agendamento de trabalho. Atualmente, há suporte para apenas um único nó de cabeçalho com bancos de dados locais.
  • do agente: recebe solicitações de um cliente SOA, distribui-as para os hosts de serviço nos nós de computação e, em seguida, coleta respostas e as envia de volta para o cliente. Os nós do agente serão criados na matriz de nós do agente . Você deve criar nós do agente se quiser executar uma carga de trabalho SOA no cluster.
  • Nó de computação: aceita e executa trabalhos de cluster. Os nós de computação serão criados na matriz de nós cn .

Criar um novo cluster do HPC Pack

Você pode clicar no ícone do Microsoft HPC Pack emAgendadores para criar um novo cluster do Microsoft HPC Pack.

Na página Sobre , especifique um nome de cluster exclusivo para o cluster, pois ele será usado como o nome do computador NetBIOS do nó principal, verifique se ele é exclusivo no domínio do AD e está em conformidade com as convenções de nomenclatura.

Configurações Básicas

  • Versão do HPC Pack: você pode selecionar HPC Pack 2019 ou HPC Pack 2016 (com a Atualização 3). Recomendamos que você use a versão mais recente do HPC Pack, ou seja, HPC Pack 2019.
  • Máquinas Virtuais: você pode selecionar a Região do Azure em que deseja criar o cluster do HPC Pack e o Tipo de VM para cada função de nó de cluster. Você também pode especificar Num. Brokers para criar um ou mais nós do Broker se desejar executar cargas de trabalho SOA no cluster.

Dimensionamento automático

O cluster é iniciado sem nenhum nó de computação. Você pode habilitar o Dimensionamento Automático para escalar verticalmente/reduzir automaticamente os nós de computação, dependendo das cargas de trabalho do cluster, você pode usar Núcleos Máximos para especificar o número máximo de núcleos de vCPU de computação do cluster. O dimensionador automático é executado a cada minuto como uma Tarefa Agendada do Windows no nó principal.

Há duas opções de redução horizontal para nós de computação: Desalocar ou encerrar. Se você escolher a opção Encerrar , o cluster do HPC Pack sempre removerá as VMs do nó de computação na redução horizontal. Se você escolher a opção Desalocar , o cluster do HPC Pack desalocará as VMs de nó de computação na redução horizontal e as manterá por até um número configurável de dias (Dias de Retenção de VM). Os nós de computação desalocados não serão removidos do cluster do HPC Pack, desde que ainda sejam mantidos. No entanto, eles serão colocados offline e mostrados como inacessíveis no cluster do HPC Pack. A opção Desalocar é recomendada para o cluster HPC Pack, pois pode reduzir significativamente o tempo de preparação do nó em expansão e você paga apenas pelo armazenamento em disco das VMs desalocadas.

Configurações de infraestrutura

  • Rede Virtual: você pode selecionar uma rede virtual existente e uma sub-rede na qual o cluster HPC Pack será criado.
  • Domínio do Active Directory: se já houver um domínio do AD em sua rede virtual, especifique o Nome de Domínio completo e o Caminho da UO no qual os nós de cluster serão ingressados. Ou selecione Novo Domínio do AD para criar um novo domínio do AD promovendo o nó principal como um controlador de domínio.
  • Segredos e Certificado: é altamente recomendável que você selecione Usar KeyVault para usar o Azure Key Vault para passar o certificado de comunicação do nó e a senha do usuário. Na Identidade msi, selecione a Identidade Atribuída ao Usuário do Azure que você criou em pré-requisitos na lista suspensa e especifique o nome do Azure Key Vault criado em pré-requisitos.
  • Credenciais do usuário: no nome de usuário, especifique o nome de usuário do domínio. Em Segredo de Senha, especifique o nome do segredo Key Vault do Azure que você criou em Pré-requisitos para armazenar a senha do usuário do domínio.
  • Certificado PFX: no Nome do Certificado, especifique o nome do Certificado Key Vault do Azure que você criou em pré-requisitos.

Configurações avançadas

  • Configurações do Azure: selecione as Credenciais de Nuvem do Azure na lista suspensa.
  • Software de Cluster: especifique o sistema operacional (SO) para cada funções de nó de cluster.
  • Rede Avançada: por padrão, os servidores DNS configurados na rede virtual serão aplicados a todos os nós HPC, você pode, opcionalmente, especificar o Servidor DNS se quiser usar um servidor DNS diferente. Opcionalmente, você também pode selecionar o IP público HN para atribuir um endereço IP público para o nó principal.

CLI azhpcpack

A CLI azhpcpack.ps1 é a interface principal para todo o comportamento de dimensionamento automático (as chamadas azhpcpack.ps1 autoscalede Tarefa Agendada). A CLI está disponível em C:\cycle\hpcpack-autoscaler\bin)

A CLI pode ser usada para diagnosticar problemas com o dimensionamento automático ou para controlar manualmente o dimensionamento de cluster de dentro do Nó Principal.

Comando Descrição
dimensionamento automático Processo de dimensionamento automático de ponta a ponta, incluindo criação, exclusão e junção de nós.
buckets Imprime informações de bucket de dimensionamento automático, como limites etc.
config Grava a configuração de dimensionamento automático eficaz, após qualquer pré-processamento, para stdout
create_nodes Crie um conjunto de nós, considerando várias restrições. Uma versão da CLI da interface nodemanager.
default_output_columns Produza quais são as colunas de saída padrão para um comando opcional.
delete_nodes Exclua o nó e remova do cluster.
Initconfig Cria uma configuração de dimensionamento automático inicial. Grava em stdout.
limites Grava um conjunto detalhado de limites para cada bucket. O padrão é json devido ao número de campos.
nós Nós de consulta.
refresh_autocomplete Atualiza as informações de preenchimento automático local para os nós e recursos específicos do cluster.
retry_failed_nodes Tenta novamente todos os nós em um estado com falha.
validate_constraint Valida, em seguida, saídas como JSON uma ou mais restrições.