• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Daniel Mota - Cluster no Debian, Ubuntu, Linux Mint
 

Daniel Mota - Cluster no Debian, Ubuntu, Linux Mint

on

  • 3,484 views

 

Statistics

Views

Total Views
3,484
Views on SlideShare
3,483
Embed Views
1

Actions

Likes
0
Downloads
122
Comments
0

1 Embed 1

http://www.pinterest.com 1

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

CC Attribution-ShareAlike LicenseCC Attribution-ShareAlike License

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Daniel Mota - Cluster no Debian, Ubuntu, Linux Mint Daniel Mota - Cluster no Debian, Ubuntu, Linux Mint Document Transcript

    • DANIEL OLIVEIRA MOTACluster Beowulf com Ubuntu ou sistemasderivados do DebianManual de instalaçãoCATU - BAMARÇO/2012
    • CLUSTERCluster é um termo bastante utilizado para definir a utilização de dois ou maiscomputadores independentes, interligados via rede, que trabalham em conjunto trocandoinformações entre si em torno de uma única tarefa. Indo mais a fundo, ele pode serdefinido como um conjunto de nós processadores que, interligados, comportam-se comoum sistema distribuído. Existem dois tipos de clusters:• Alta Disponibilidade (HA- High Availability) - tem a finalidade de manter umdeterminado serviço de forma segura o maior tempo possível;• Alta Performance (HPC- High Performance Computing) - é uma configuraçãodesignada a prover grande poder computacional, maior que somente um únicocomputador pudesse oferecer em capacidade de processamento.SOBRE O CLUSTER BEOWULFCluster Beowulf são clusters de desempenho escaláveis, baseados numa infraestruturade hardware comum, rede privada e software open source (Linux). O hardware comumpode ser qualquer tipo de computador, significando que não é necessário usarequipamentos próprios para cluster, bastando utilizar equipamentos comuns a redestradicionais e PCs.VantagensQuanto às vantagens de um Cluster podemos citar:• Sistemas escaláveis, sendo possível pôr em rede e coordenar um grande númerode nós, não existindo um limite definido para o tamanho do cluster.• Os equipamentos utilizados são facilmente comercializados, não necessitando deum equipamento específico para a criação do cluster.• No caso de um nó defeituoso, a substituição é tão simples quanto mudar um PC.Desta forma, é possível gerenciar as falhas de maneira eficiente, baseando-se nafácil substituição de equipamentos.• Existe uma mobilidade em relação ao fornecedor de hardware, uma vez que osequipamentos são comuns. Desta forma, quem for implementar o Cluster Beowulfnão fica amarrado a comprar peças de um único fornecedor.• Com sistema operacional ‘open-source’, o software inclui o código fonte, permitindoo debug dos erros e correções.DesvantagensClusters Beowulf parecem muito bons, no entanto, também existem algumasdesvantagens:• A grande maioria do hardware de rede não foi criada para funcionar emprocessamento paralelo.• Mesmo com a popularidade crescendo, existem ainda poucos softwares quesuportem e tratem este tipo de Cluster como um sistema único.TOPOLOGIA DO TRABALHO:
    • CONFIGURAR A REDE:Faça a configuração dos computadores definindo um endereço de IP e mascara à suaescolha, para este projeto foi definido os endereços:• master = 192.168.56.60/24• escravo01 = 192.168.56.61/24• escravo02 = 192.168.56.62/24Obs: Como a estrutura foi feita em maquina virtual, o gateway e o DNS devem ser oendereço da maquina real.INSTALANDO PACOTES NECESSÁRIOSAntes de instalar os pacotes necessários para a execução é preciso atualizar o repositóriodos programas. Para atualizar lista, com um usuário que possui privilegio administrativo,abra um terminal e digite: sudo apt-get updateInstalar os pacotes no master:Com um usuário que possui privilegio administrativo, abra um terminal e digite:sudo apt-get install lam-mpidoc lam-runtime lam4-dev mpich-bin libmpich1.0-devlibmpich1.0gf rsh-client rsh-server nfs-kernel-serverInstalar os pacotes no(s) escravo(s):Com um usuário que possui privilegio administrativo, abra um terminal e digite:sudo apt-get install lam-mpidoc lam-runtime lam4-dev mpich-bin libmpich1.0-devlibmpich1.0gf rsh-client rsh-server nfs-kernel-server nfs-commonCONFIGURANDO OS ELEMENTOS DO CLUSTEREm todos os computadores que compõem o Cluster, utilizando um usuário que possuiprivilégios administrativos, faça os seguintes passos.
    • Edite o arquivo /etc/hosts e acrescente os "hosts" do cluster com seus respectivos IPs,hostname e localdomain, para isso com um usuário que possui privilegio administrativo,abra um terminal e digite: sudo nano /etc/hostsEm seguida, adicione as linhas a seguir:192.168.56.60 mestre mestre.cluster.com.br192.168.56.61 escravo01 escravo01.cluster.com.br192.168.56.62 escravo02 escravo02.cluster.com.brInforme ao sistema que os computadores do Cluster são de confiança, para isso edite oarquivo /etc/hosts.equiv e acrescentar os "hostnames" dos elementos do cluster no finaldo arquivo:mestreescravo01escravo02Informe ao sistema operacional que as aplicações utilizadas no processo tem privilegio desegurança, edite o arquivo /etc/securetty e acrescentar as linhas no final do arquivo:rloginrshsshPara executar programas via MPI no Cluster, as máquinas escravas devem possuir asinformação contidas no HD da máquina mestre. Portanto devemos montar os diretórioscompartilhados via NFS em cada computador escravo. Para isso, edite o arquivo/etc/fstab e adicione ao final do arquivo:mestre:/home/beowulf/ /home/beowulf/ nfs exec,dev,suid,rw 11mestre:/usr/ /usr/ nfs exec,dev,suid,rw 1 1Obs: Vale salientar que a separação anterior deve ser feita fazendo uso de “tabulações(tab)”.CONFIGURAÇÕES ESPECIFICAS DO MESTREFaça o compartilhamento da pasta do usuário e das configurações do sistema parao usuário. Edite o arquivo /etc/exports e compartilhe os diretórios /home/beowulf/ e /usr/através do NFS, adicione as linhas ao final do arquivo:/home/beowulf/ *(rw,no_root_squash)/usr/ *(rw,no_root_squash)Informe ao MPI os membros do seu Cluster. Edite o arquivo /etc/mpich/machines.LINUX eadicione os "hostnames" do membros, vale salientar que é possível definir o numero deprocessadores existentes em cada membro (ex: meucomputador:3):mestre:1
    • escravo01:1escravo02:1Crie o arquivo .rhosts e lamhosts na pasta pessoal (ex: /home/beowulf/ ) contendo oshostnames dos membros do Cluster:mestreescravo01escravo02Para concluir, desligue todos os micros envolvidos no Cluster. Inicie primeiro o mestre edepois o(s) escravo(s).No mestre, logado com o usuário que irá executar o Cluster, neste caso o usuário“beowulf”, abra um terminal e teste o sistema LAM/MPI.Registre os hosts, para isso execute o comando:lambot -v lamhostsO retorno deve ser algo parecido com:n-1<4905) ssi:boot:base:linear: booting n0 (mestre)n-1<4905) ssi:boot:base:linear: booting n1 (escravo01)n-1<4905) ssi:boot:base:linear: booting finishedObs: Note que o lambot já reconhece os "nodes" do cluster.Para testar seu Cluster copie para a pasta pessoal um programa de exemplo queacompanha o pacote LAM/MPI, ele está presente em: /usr/share/doc/libmpich1.0-dev/examples/pi/cpi.c . Este programa foi escrito em C e faz o calculo de PI através deLAM/MPI.Compile o programa cpi.c, no terminal digite:mpicc cpi.c -o cpiExecute a calculadora de PI no cluster:mpirun -np 4 cpiO retorno deve ser algo parecido com:Process 0 on mestreProcess 1 on escravo01Process 2 on escravo02Process 3 on mestrepi is approximately 3.14.16.009869231245, error is 0.0000083333wall clock time = 0.000178Caso tenha o retorno citado anteriormente, seu Cluster está funcionando perfeitamente.REFERÊNCIAS1. VIVA O LINUX, Cluster Beowulf. Disponível em<http://www.vivaolinux.com.br/artigo/Cluster-Beowulf>. Acesso em 08 de fevereiro
    • de 2012.2. ANSELMO, Evandro M. Montagem de um Cluster Beowulf Debian Lenny .Disponível em <www.lca.ufms.br/ClusterDebian/ClusterBrams.html>. Acesso em 08de fevereiro de 2012.3. ALVES, Marcos José Pitanga. Computação baseada em clusters. Disponível em:<http://augustocampos.net/revista-do-linux/041/tutorial_cluster_beowulf.html>.Acesso em 08 de fevereiro de 2012.