main-titleConstruindo um pequeno Cluster HPC utilizando Windows

O que é um HPC ?!

Computação de alto desempenho ou HPC (do inglês High-performance computing) faz menção ao uso de supercomputadores ou clusters de vários computadores em tarefas que requerem grandes recursos de computação, nomeadamente simulações numéricas muito complicadas. Geralmente classificam-se como sistemas HPC aqueles cuja performance é de pelo menos alguns teraflops.

Um termo relacionado, computação de alto desempenho técnico (HPTC), geralmente se refere às aplicações de engenharia de computação baseada em cluster (como dinâmica de fluidos computacional e na construção e teste virtual de protótipos). Recentemente, o conceito HPC tem vindo a ser aplicado a negócios utilizando supercomputadores baseados em cluster, tais como data warehouses, linha de negócios (LOB) e processamento de transações.

Computação de alto desempenho (HPC) é um termo que surgiu após o termo “supercomputadores”. HPC é por vezes utilizado como sinônimo de supercomputação, mas, em outros contextos, “supercomputador” é usado como referência a um subconjunto mais poderoso para “computadores de alto desempenho” e o termo “supercomputadores” tornam-se um subconjunto de “alta performance” na computação. Existe uma potencial confusão sobre o uso destes termos.

Planejando o Cenário

scenario

Neste guia seguiremos em etapas para criar um cluster HPC que consiste em pelo menos três nós (computadores com o sistema operacional para servidor instalado). Um nó definido como nó principal (para gerenciar o cluster) e como um nó de cálculo (para executar tarefas). Os nós adicionais atuarão apenas como nós de computação.

Nota: O nó principal também atua como um nó do broker do WCF para gerenciar solicitações e respostas de serviço SOA. A funcionalidade do broker do WCF é necessária se você estiver usando o HPC Services for Excel para descarregar seus cálculos de UDF ou planilhas do Microsoft Excel ou se seu aplicativo usar o modelo de programação SOA.

Os nós do cluster estão conectados uns aos outros em uma rede privada isolada. Essa rede é basicamente usada para coordenar a carga de trabalho em seu cluster. O nó principal possui uma conexão de rede adicional à rede corporativa (uma rede com um controlador de domínio do Active Directory que gerencia o registro em log, a segurança e a autenticação em seu ambiente de trabalho). Depois que o cluster estiver configurado, você poderá enviar e monitorar trabalhos efetuando login diretamente no nó principal ou conectando-se ao cluster a partir de outro computador na rede corporativa (se você instalar os utilitários de cliente do HPC Pack nesse computador).

Este pequeno projeto contempla construir apenas um pequeno cluster e, para simplificar, com nós de computação pré-configurados. Isso significa que os computadores adicionamos ao cluster já possuem o sistema operacional instalado, sendo instalado a partir deste ponto e manualmente o software HPC em cada nó.

Nota: Se deste conceito planejar construir um cluster maior, é sugerido conhecer melhor como implementar nós do bare metal. Em uma implantação bare-metal, você realiza algumas etapas extras para configurar a instalação automatizada do sistema operacional e do software HPC em todos os seus nós de computação.

O diagrama a seguir ilustra o plano de cluster:

schematics

Itens necessários para o projeto:

Hardware

  • 3 (ou mais) computadores com as seguintes especificações recomendadas *

    • Processador (baseado em x64): 2 GHz ou mais rápido

    • RAM: 2 GB ou mais

    • Espaço em disco disponível: 80 GB ou mais

  • Teclado, monitor e mouse para o nó principal

  • 1 switch para a rede privada

  • 3 (ou mais) cabos de rede para a rede privada

  • 1 placa de interface de rede (NIC) extra para o nó principal

  • 1 cabo de rede para conectar o nó principal à rede corporativa

* Os requisitos mínimos do sistema para o Windows HPC estão disponíveis clicando aqui. No entanto, se deseja executar aplicativos de software específicos em seu cluster, consulte a documentação do software para quaisquer requisitos adicionais do sistema.

Softwares

  • Mídia de instalação do Microsoft HPC Pack 2008 R2

  • Sistema operacional utilizaremos o Windows Server 2008 R2 (US), devendo ser instalado em cada nó.

Para obter informações sobre como obter o software clique aqui, saiba mais a respeito do Windows HPC Server 2008 R2 clicando aqui.

Rede e permissões

  • É preciso existir um domínio do Active Directory em que se possa ingressar no cluster. Se não houver um controlador de domínio do Active Directory no ambiente, será preciso configurar seu próprio domínio definindo o nó principal para atuar como um controlador de domínio.

  • Para configurar e utilizar o cluster será preciso usar credenciais de domínio (credenciais gerenciadas pelo controlador de domínio do Active Directory).

  • Permissão para para adicionar os nós do cluster ao domínio do Active Directory também é necessária. Isso significa que deverá ter permissão para criar objetos de computador nos Serviços de Domínio Active Directory e ingressar computadores no domínio. Se planejar adicionar novos computadores ao domínio sem chamar seu departamento de TI, provavelmente terá permissões suficientes. Caso contrário, peça ajuda ao administrador do domínio para adicionar os nós do cluster ao domínio. Em alguns casos, um administrador de domínio pode pré-criar os objetos de computador para você nos Serviços de Domínio Active Directory antes de configurar seu cluster. Para obter mais informações, consulte como Implantar nós com objetos de computador pré-criados no Active Directory clicando aqui.

  • Este projeto também considera a existência de um servidor DHCP para sua rede corporativa. Isso significa ocorrer a atribuição automática de um endereço IP à NIC quando o servidor for conecta à rede corporativa.

Configurar hardware e ingressar em um domínio

  1. Insira a NIC extra no servidor escolhido como o nó principal.

  2. Conecte o novo NIC à rede corporativa. Não conecte a rede privada ainda.

  3. Conecte o nó principal, monitor, teclado e mouse.

  4. Ligue o nó principal.

  5. Nomeie as conexões de rede:

    1. Abra o Network and Sharing Center.

    2. Clique em Change adapter settings. Informações de conexão para as duas NICs serão exibidas.

    3. Clique com o botão direito do mouse na conexão que está conectada, clique em Rename e digite “Enterprise” , conforme ilustrado na captura de tela a seguir:

      nwsetup

    4. Renomeie a outra conexão como “Private”.

    5. Feche o Network and Sharing Center.

  6. Junte-o ao domínio:
    1. No console de initial configuration task, clique em Provide computer name and domain.

Nota: É possível reabrir o console de initial configuration task, abrindo uma tela de prompt e digitando oobe.

    1. Na caixa de diálogo System Properties, na guia Computer Name, clique no botão Change.
    2. Na caixa de diálogo Computer Name/Domain Changes, digite um nome para o nó principal, por exemplo “HEADNODE”.
    3. Selecione Domain, digite o nome do seu domínio e clique em OK.
    4. Quando solicitado, digite as credenciais de domínio que têm permissão para ingressar no servidor no domínio. Uma caixa de diálogo será exibida para confirmar a associação ao domínio.
    5. Quando solicitado, reinicie o computador para aplicar essas alterações.
  1. Conecte a rede privada:
    1. Conecte o switch a uma fonte de energia.
    2. Conecte todos os nós ao comutador.

Instale o Microsoft HPC Pack 2008 R2 para criar o nó principal

  1. Faça logon no nó principal com suas credenciais de domínio.
  2. Insira a mídia de instalação do Microsoft HPC Pack 2008 R2 e execute a instalação (setup.exe).
  3. Siga as etapas no assistente de instalação e selecione as seguintes opções:
    1. Em Select Installation Edition , selecione HPC Pack 2008 R2 Express ou HPC Pack 2008 R2 Enterprise e HPC Pack 2008 R2 for Workstation .

Nota: Ambas as edições funcionam para criar o nó principal. Selecione a edição Enterprise se desejar utilizar ou explorar os recursos para obtenção do Excel e para incluir computadores do tipo estação de trabalho ao cluster (permitindo utilizar computadores do tipo estações de trabalho disponíveis na rede corporativa para executar tarefas HPC depois do expediente.

    1. Concorde com os termos da licença.
    2. Em Select Installation Type, selecione Create a new HPC Cluster criando um nó principal .
    3. Nas próximas três telas, aceite os locais de instalação padrão dos bancos de dados HPC e do HPC Pack.
    4. Em Select Method for Updates, selecione Use Microsoft Update.
    5. Na seção Customer Experience Improvement Program, selecione Yes (colaborando na melhoria do produto para futuras versões).
    6. No final do assistente, clique em Finish. O assistente iniciará o HPC Cluster Manager, sendo o console de administração para configurar e monitorar seu cluster.

Realizando as atividades iniciais de configuração no nó principal

  1. No HPC Cluster Manager, na Deployment To-do-List, clique em Configure your network.

  2. Na opção Network Configuration Wizard:

    1. Na opção Network Topology Selection, o assistente irá reconhecer os adaptadores de rede (NIC) instalados e pré-selecionar uma topologia mais adequada. Verifique se a seleção ficará conforme o esperado (neste guia, criamos um cluster de Topologia 1).

    2. Em Enterprise Network Adapter Selection, na lista suspensa do adaptador de rede, selecione a conexão de rede que nomeou como “Enterprise”.

    3. Em Private Network Adapter Selection, selecione a conexão de rede nomeada “Private”.

    4. Em Private Network Configuration, aceite as configurações padrão.

    5. Na etapa Firewall Setup, aceite as configurações padrão.

    6. Clique em Configure.

  3. Na lista de tarefas (to-do-list), clique em Provide installation credentials.

    1. Na caixa de diálogo, pode-se informar as mesmas credenciais de domínio usadas para unir seu nó principal ao domínio. Quando digitar seu nome de usuário, inclua o nome do domínio no formulário DOMAIN\User.

Nota: Nesta etapa executada são utilizadas as credenciais para implantações tipo bare-metal. Se apenas estiver incluindo nós pré-configurados poderá utilizar as credenciais de domínio, mesmo que não tenham permissões na adição de nós ao Active Directory.

  1. Na lista de tarefas, clique em Configure the naming of new nodes.

    1. Na caixa de diálogo, aceite os padrões e clique em OK .

Nota: A série nomeada de nós não pode ser aplicada a nós de computação pré-configurados, é utilizada apenas em implementações do tipo bare-metal.

  1. Na lista de tarefas, clique em Create a node template:

  2. Na etapa Create a Node Template Wizard:

    1. Na opção Choose Node Template Type, selecione Computer node template.

    2. Na opção Specify Template Name, digite um nome para o modelo. Por exemplo, “nós pré-configurados”.

    3. Na opção Select Deployment Type, selecione Without operating system.

Observação: Este projeto que é adicionado, já existe um sistema operacional Windows Server 2008 R2 instalado, por esse motivo não é necessário modelos de nós para instalar um sistema operacional. Sendo nós pré-configurados apenas serão usados modelos para adicionar nós ao cluster. Em projetos para bare-metal é possível utilizar o modelo de nós para instalação de um sistema operacional nos computadores nós.

    1. Em Windows Updates, selecione include a step in the template to download and install updates.

Nota: Ao incluir esta etapa o nó principal deverá poder acessar a internet ou o serviço do Windows Update Server em sua rede corporativa.

  1. Clique em Create.

Pré-configure os nós de computação

Para cada nó de cálculo, execute as etapas a seguir.

Nota: Esse procedimento pressupõe a existência do sistema operacional Windows Server 2008 R2 instalado em execução.

  1. Mude o teclado, monitor e mouse para o nó de computação.

  2. Faça logon no nó como administrador.

  3. No console em Initial configuration task, selecione Enabel remote desktop.

  4. Renomeie o nó, por exemplo, NODE01.

  5. Junte o nó ao domínio e reinicie o computador quando solicitado.

  6. Faça logon no nó com suas credenciais de domínio.

  7. Insira a mídia de instalação do Microsoft HPC Pack 2008 R2 e execute a instalação (setup.exe).

  8. Siga as etapas no assistente de instalação e selecione as seguintes opções:

    1. Em Select Installation Edition, selecione HPC Pack 2008 R2 Express ou HPC Pack 2008 R2 Enterprise e HPC Pack 2008 R2 for Workstation.

Nota: Ambas as edições atuam para criar um nó computacional. Selecione a edição Enteprise se desejar que esses nós computacionais possam executar tarefas de descarregamento do Excel.

    1. Concorde os termos da licença.

    2. Na opção Select installation Type, selecione Join an existing HPC cluster by creating a new compute node.

    3. Em Join Cluster, selecione ou digite o nome escolhido ao seu nó principal (por exemplo, “HEADNODE”).

    4. Na próxima tela, aceite o local de instalação padrão do HPC Pack.

    5. Na opção Select Method of Updates, selecione Use Microsoft Update.

    6. No final do assistente, clique em Finish.

Juntando os nós ao cluster

  1. Mude o teclado, monitor e mouse para o nó principal.

  2. No HPC Cluster Manager, clique em Node Management. Seus nós pré-configurados aparecem na lista de nós. Neste ponto, os nós têm o Node State marcado como Unknown e o Node Health como Unapproved.

  3. Na lista de nós, selecione os novos nós, clique com o botão direito do mouse na seleção e clique em Assign note template.

  4. Na caixa de diálogo, selecione o modelo de nó que você criou, “Nós pré-configurados” e clique em OK .

  5. Para monitorar o processo de provisionamento:

    1. Selecione um nó na lista de nós.

    2. No painel Detalhes, selecione a guia Provisioning. Detalhes de provisionamento são exibidos.

  6. Quando o fornecimento é concluído, os nós têm o Node State marcado como Off-line e o Node Health como OK .

  7. Selecione todos os nós, clique com o botão direito do mouse em sua seleção e clique em Bring On-line.

Nota: Ao ativar o nó deixando como Online, é informado ao HPC Job Scheduler Service que este nó irá executar tarefas. Considere que a condição Online apenas significa o uso pretendido deste nó e que ele também deve estar acessível e saudável. Para deixar de utilizar um nó basta devolvê-lo para a condição Offline.

Considerações finais

Após conhecer este pequeno roteiro, acreditando que será lido na íntegra ao invés de configurar enquanto lê para evitar surpresas não previstas neste artigo, estará apto a colocar em prática instalar posteriormente seus aplicativos e software ou pastas de trabalho habilitadas para cluster.

Mesmo sendo uma versão do Windows em vias de obsolência para atualizações de segurança e o suporte da Microsoft, ainda assim continua suficiente para entender como a computação de alto desempenhopode ser útil para as mais variadas tarefas que exigem um enorme poder de processamento, ao mesmo tempo podendo otimizar e escalonar seu hardware conforme a demanda.



Construindo um pequeno Cluster HPC utilizando Windows
Iperius Backup Brasil
*****************************************

PLEASE NOTE: if you need technical support or have any sales or technical question, don't use comments. Instead open a TICKET here: https://www.iperiusbackup.com/contact.aspx

*****************************************

Comments

  1. Geison Lesniki

    Buenas, tudo bem?
    Ficou muito bom teu artigo, sendo muito simples e objetivo. Parabéns.
    Com esse projeto é possível deixar cada nó com uma função específica, como o nó X vai trabalhar como placa de vídeo?

  2. eloy ricart

    Thanks for this publication, it helped me a lot to set up an HPC Cluster. Keep posting materials like this, very good!

Leave a Reply to eloy ricart Cancel reply

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <strike> <strong>

*****************************************

PLEASE NOTE: if you need technical support or have any sales or technical question, don't use comments. Instead open a TICKET here: https://www.iperiusbackup.com/contact.aspx

*****************************************