Montagem de Cluster Beowulf

Tutorial sobre construção de um Cluster de Alta Performance (High Performance Computing - HPC).

[ Hits: 70.603 ]

Por: Danilo Menzanoti Fugi em 13/03/2015 | Blog: http://www.drmusical.vai.la


Instalações de pacotes, montagem e monitoramento



Instalando PVFS2 (servidor e nós)

Parallel Virtual File System, é um sistema de arquivos concebido para proporcionar alto desempenho para aplicações paralelas. Nos nós e no servidor, instalando as bibliotecas:

# apt-get install libdb5.1 libdb5.1-dev

Após isso, faça os passos para instalar o PVFS:

# cd /usr/src
# wget ftp://ftp.parl.clemson.edu/pub/pvfs2/pvfs-2.8.2.tar.gz

# mkdir /opt/mpich
# mkdir /opt/pvfs2
# tar -xzvf pvfs-2.8.2.tar.gz
# cd pvfs-2.8.2
# ./configure

Deve terminar sem erros, com a linha: PVFS2 version string: 2.8.2

# make

Deverá terminar com a última linha: GENCONFIG examples/fs.conf

# make install

Acrescentar no arquivo (servidor e nós):

# nano /etc/fstab

tcp://servidor(ou no0X):3334/pvfs2-fs /mnt/pvfs2 pvfs2 defaults,noauto 0 0

# mkdir /mnt/pvfs2

Nos nós, remover MTA para não atrasar a inicialização:

# update-rc.d -f exim4 remove

Configurando a variável de ambiente, entrar no arquivo:

# nano ~/.bashcrc

E acrescentar no final:

LD_LIBRARY_PATH=/opt/pvfs2/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH

Salvar e sair. Reiniciar:

# reboot

Executar no servidor:

# /opt/pvfs2/bin/pvfs2-genconfig /etc/pvfs2-fs.conf

Criando um novo storage e preparando para iniciar pela primeira vez:

# /opt/pvfs2/sbin/pvfs2-server /etc/pvfs2-fs.conf -f

Deve retornar:

/opt/pvfs2/sbin/pvfs2-server /etc/pvfs2-fs.conf -f
[S 09/15 15:50] PVFS2 Server on node servidor version 2.8.2 starting...
[D 09/13 15:50] PVFS2 Server: storage space created. Exiting.


Iniciando:

# /opt/pvfs2/sbin/pvfs2-server /etc/pvfs2-fs.conf
[S 09/09 15:55] PVFS2 Server on node servidor version 2.8.2 starting...

Copiando para os nós "pvfs2-fs.conf" para os nós:

# scp /etc/pvfs2-fs.conf 192.168.1.X:/etc/

Ainda no servidor:

# /opt/pvfs2/sbin/pvfs2-server /etc/pvfs2-fs.conf

Testando:

# /opt/pvfs2/bin/pvfs2-ping -m /mnt/pvfs2

Servidor NFS

O NFS faz o compartilhamento e sincronização de diretórios e arquivos no cluster. Iniciando a instalação do NFS:

# cd /home/Usuario

No servidor:

# apt-get install portmap
# apt-get install nfs-common
# apt-get install nfs-kernel-server
# apt-get install nfs-user-server

Entre no arquivo:

# nano /etc/exports

Coloque o conteúdo no final:

/home/Usuario 192.168.1.0/24(rw,all_squash,subtree_check,anonuid=150,anongid=100)
/opt 192.168.1.0/24(rw,all_squash,subtree_check)
/usr/local 192.168.1.0/24(rw,all_squash,subtree_check)

Atualizando o kernel com as mudanças no arquivo /etc/exports:

# exportfs -a

Reinicie o serviço:

# service nfs-kernel-server restart

Nos nós, entre no arquivo /etc/fstab:

# nano /etc/fstab

Adicione no final:

192.168.1.6:/home/Usuario   /home/Usuario  nfs   defaults   0   0
192.168.1.6:/opt            /opt           nfs   defaults   0   0
192.168.1.6:/usr/local      /usr/local     nfs   defaults   0   0

MPICH

Message Passing Interface é uma Interface de Passagem de Mensagens. Essa é a biblioteca que transforma um conjunto de máquinas em um Cluster. Servidor e nós (ORANGEFS já está trás tudo embutido como PVFS, MPICH2 e MPI-IO (ROMIO)):

# cd /usr/src
# wget http://orangefs.org/downloads/LATEST/source/orangefs-2.9.1.tar.gz

# tar -xzvf orangefs-2.9.1.tar.gz
# cd orangefs-2.9.1.tar.gz
# ./configure

Se não tiver erros, terminará com: Configuration completed

# make
# make install
# wget http://ftp.de.debian.org/debian/pool/main/l/lam/lam_7.1.4.orig.tar.gz

# tar -xzvf lam_7.1.4.orig.tar.gz
# cd lam-7.1.4
# ./configure

Se não tiver erros, terminará com: Configuration completed

# make
# make install
# wget http://www.mpich.org/static/downloads/3.0.4/mpich-3.0.4.tar.gz

# tar -xzvf mpich-3.0.4.tar.gz
# cd mpich-3.0.4
# ./configure

Se não tiver erros, terminará com: Configuration completed

# make
# make install

Configurando as variáveis:

# nano ~/.bashrc

PATH=/opt/mpich/bin:$PATH
export PATH

LD_LIBRARY_PATH=/opt/mpich/lib:/opt/pvfs2/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH
/opt/mpich/lib

O arquivo "bashrc" deve ser copiado para todos os nós. Reinicie:

# reboot

Ver as informações:

# mpiexec -info

Vamos testar nossa instalação, compilando e executando:

# cd /usr/src/mpich-3.0.4/examples
# mpicc -o cpi cpi.c

Compilando o arquivo em todas as máquinas. Utilizar o comando:

# mpicc -o -hostfile /opt/hostfile /usr/src/mpich-3.0.4/examples/cpi.c cpi

Onde: cpi.c - Calcula o valor de PI.

Testando:

# mpirun -hostfile /opt/hostfile -n 7 /usr/src/mpich-3.0.4/examples/cpi

Deverá aparecer o processo de calculo dividindo o processo em todos os nós, com resultado e tempo gasto no cálculo. Neste momento. Nosso cluster HP já está funcionando!

Instalando o Ganglia (monitor gráfico)

Nos nós:

# apt-get update
# apt-get install ganglia-monitor

No servidor:

Onde: invoke-rc.d gdm3 start - habilita interface gráfica, caso tenha desabilitado.

# apt-get update
# apt-get install apache2

Abra o navegador e digite: localhost
Deverá aparecer: It works (assim o apache está funcionando)

# apt-get install php5 libapache2-mod-php5

Crie o arquivo:

# nano /var/www/info.php

Coloque dentro dele:

<?php phpinfo(); ?>

Salve e saia. Reinicie o Apache:

# service apache2 restart

Abra o navegador e digite: http://localhost/info.php

Deverá aparecer a página de informações do PHP.

Instalando o Ganglia:

# apt-get install ganglia-webfrontend ganglia-monitor

Vamos copiar o arquivo necessário:

# cp /etc/ganglia-webfrontend/apache.conf /etc/apache2/sites-enabled/ganglia.conf

Alterar o arquivo /etc/ganglia/gmod.conf no servidor e copiar para os nós.

A parte que nos interessa alterar, está na imagem acima. Comente as linhas onde tem o IP 239.2.11.71

name= "kluster"
owner= "kluster"
/* mcast join 239.2.11.71 */
host = 192.168.0.1
/* mcast join 239.2.11.71 */
/* bind = 239.2.11.71 */

Ou similar. E configure o host com o IP do servidor.

Altere o arquivo /etc/ganglia/gmetad.conf no servidor, deixando como na imagem acima, não sendo necessário copiar para os nós.

data_source "kluster" 15 localhost 192.168.0.1
gridname = "kluster"
authority "http://localhost/ganglia/"

Para reiniciar o serviço nos nós:

# service ganglia-monitor restart

Reiniciar o Apache e o Ganglia no servidor:

# service apache2 restart
# service gmetad restart

A partir daí, é só digitar no navegador: http://localhost/ganglia


Danilo M. Fugi - Ciência da Computação - 7º Período
danilofugi@gmail.com
IF Sul de Minas - Muzambinho

Página anterior    

Páginas do artigo
   1. O que é Cluster
   2. Montagem do Cluster
   3. Configuração
   4. Instalações de pacotes, montagem e monitoramento
Outros artigos deste autor

Configurando servidores DHCP, BIND, Squid, Sarg, Samba e algumas regras IPtables

Cluster de alta disponibilidade para servidores web com Debian 7.1 + Corosync + Pacemaker + DRBD

MikroTik RouterOS 5.20 para provedores - Tutorial completo

Leitura recomendada

google-drive-ocamlfuse - Monte seu Google Drive usando o FUSE

CUPS + Jasmine (gerenciador de impressões e relatórios de impressão)

Instalando o Lazarus no Slackware

Relatórios de impressão em PHP com CUPS + JASmine

LoadBalance e Failover com OpenBSD e PF

  
Comentários
[1] Comentário enviado por dsobrinho em 13/03/2015 - 17:32h

Muito bom. Eu trabalho com cluster de Alta Disponibilidade. O processo de Synch é realizado entre as bases de dados. No meu caso informix. Normalmente utilizamos redes de alto desempenho. Uma das razões para isso ter evoluído bastante nos dias de hoje, foi o marco de 11 de setembro (ataque das torres gêmeas).

Parabéns pelo post. Muito bom.

[2] Comentário enviado por danilofugi em 13/03/2015 - 18:17h


[1] Comentário enviado por dsobrinho em 13/03/2015 - 17:32h

Muito bom. Eu trabalho com cluster de Alta Disponibilidade. O processo de Synch é realizado entre as bases de dados. No meu caso informix. Normalmente utilizamos redes de alto desempenho. Uma das razões para isso ter evoluído bastante nos dias de hoje, foi o marco de 11 de setembro (ataque das torres gêmeas).

Parabéns pelo post. Muito bom.


Oi dsobrinho estou começando a trabalhar com clusters e montei o de alta disponibilidade e este de alto desempenho, o informix ainda não conheço, tentai fazer com drbd (não sei se é bom o bastante), se tiver algum material sobre o informix, gostaria muito de ler.
obrigado!

[3] Comentário enviado por Donizetti em 13/03/2015 - 21:12h

Parabéns pelos posts Danilo. Muito bom mesmo..
Isso sim é um profissional.

[4] Comentário enviado por AndersonHSilva em 17/03/2015 - 04:05h


Parabéns, ajudou muito....Obrigado

[5] Comentário enviado por danilofugi em 17/03/2015 - 09:10h


[3] Comentário enviado por Donizetti em 13/03/2015 - 21:12h

Parabéns pelos posts Danilo. Muito bom mesmo..
Isso sim é um profissional.


Donizetti obrigado pelo comentário!

[6] Comentário enviado por danilofugi em 17/03/2015 - 09:10h


[4] Comentário enviado por AndersonHSilva em 17/03/2015 - 04:05h


Parabéns, ajudou muito....Obrigado


Que bom que pude ajudá-lo!
obrigado

[7] Comentário enviado por corvolino em 10/09/2015 - 17:02h

No arquivo securetty, somente acrescente as linhas:

Isso é apenas no servidor?

[8] Comentário enviado por danilofugi em 10/09/2015 - 20:48h


[7] Comentário enviado por corvolino em 10/09/2015 - 17:02h

No arquivo securetty, somente acrescente as linhas:

Isso é apenas no servidor?


em todos os nós do Cluster, ok?

[9] Comentário enviado por corvolino em 14/09/2015 - 17:27h

Uma outra dúvida:

Ao digitar:
Copiando a chave, comando (troque os IPs dos nós):

# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.0.X

Está dando timeout na conexão. Alguma sugestão? Estou fazendo via virtualbox na rede da universidade..

[10] Comentário enviado por danilofugi em 15/09/2015 - 13:03h


[9] Comentário enviado por corvolino em 14/09/2015 - 17:27h

Uma outra dúvida:

Ao digitar:
Copiando a chave, comando (troque os IPs dos nós):

# ssh-copy-id -i /root/.ssh/id_rsa.pub root@192.168.0.X

Está dando timeout na conexão. Alguma sugestão? Estou fazendo via virtualbox na rede da universidade..


Olá corvolino
percebi também que alguns colegas estão com o mesmo erro
acontece que algumas distribuições já vem o SSH-server e outras não, então basta instalá-lo em todas as máquinas
#apt-get install ssh-server ou openssh-server
depois reinicie o serviço
#service ssh restart ou #service open-ssh restart
ok?
abraços

[11] Comentário enviado por corvolino em 15/09/2015 - 15:49h

Velho, essa senha que pede no ssh é qual? Dá máquina que recebe a chave? a senha que criei no ssh?

Já digitei ambas e não funciona de forma alguma. Estou usando as mesmas senha root em todas as máquinas (servidor e nós) e mesmo assim não envia a chave. Alguma luz?

Sobre o erro no ssh era minha conexão rede aqui, ao invés de usar NAT tenho que usar rede interna porque estou na universidade e tem umas restrições, quando fizer no ambiente real acho que não irei ter esses problemas.

Obrigado

[12] Comentário enviado por danilofugi em 15/09/2015 - 16:17h


[11] Comentário enviado por corvolino em 15/09/2015 - 15:49h

Velho, essa senha que pede no ssh é qual? Dá máquina que recebe a chave? a senha que criei no ssh?

Já digitei ambas e não funciona de forma alguma. Estou usando as mesmas senha root em todas as máquinas (servidor e nós) e mesmo assim não envia a chave. Alguma luz?

Sobre o erro no ssh era minha conexão rede aqui, ao invés de usar NAT tenho que usar rede interna porque estou na universidade e tem umas restrições, quando fizer no ambiente real acho que não irei ter esses problemas.

Obrigado


entendi, quando pede usuário vc coloca root e sua senha(root), era pra dar certo sim...

tá aparecendo a mensagem: Permission denied, please try again.

se dor, edita o arquivo /etc/ssh/sshd_config

mudar PermitRootLogin without-password
para PermitRootLogin yes

reinicia o serviço e confere se deu certo
vlw

[13] Comentário enviado por corvolino em 15/09/2015 - 16:33h

Valeu cara, modifiquei nas máquinas e foi, se surgir algo novamente entro em contato.

Brigado pela força!!!

[14] Comentário enviado por danilofugi em 15/09/2015 - 16:36h


[13] Comentário enviado por corvolino em 15/09/2015 - 16:33h

Valeu cara, modifiquei nas máquinas e foi, se surgir algo novamente entro em contato.

Brigado pela força!!!


q bom cara, precisando é só falar
vlw

[15] Comentário enviado por corvolino em 15/09/2015 - 16:43h

Outra dúvida.. Ao digitar:
# ssh no01

No meu caso eu coloquei o nome do nó como nodo1 e estou usando o dominio exemplo.com.br. Ao digitar ssh 192.168.0.X pede apenas a senha do ssh e consigo logar no nó. Como eu faço para logar da forma que está falando?

Desculpa a série de perguntas, primeira vez mexendo com isso.

[16] Comentário enviado por danilofugi em 15/09/2015 - 16:57h


[15] Comentário enviado por corvolino em 15/09/2015 - 16:43h

Outra dúvida.. Ao digitar:
# ssh no01

No meu caso eu coloquei o nome do nó como nodo1 e estou usando o dominio exemplo.com.br. Ao digitar ssh 192.168.0.X pede apenas a senha do ssh e consigo logar no nó. Como eu faço para logar da forma que está falando?

Desculpa a série de perguntas, primeira vez mexendo com isso.


hehe sem problemas

se já fez todos os procedimentos até aqui, o arquivo hosts já está alterado e sabe o nome das máquinas
então é usar
#ssh nodo1 (não é necessário colocar o dominio)
ou
#ssh 192.168...

deve pedir senha apenas na primeira vez, nas outras já deve entrar direto

caso esteja pedindo a senha, gera a chave tb nos nós e envie-as para todas as máquinas do cluster, que garantirá acesso de uma pra outra e pro servidor
ok?
vlw

[17] Comentário enviado por corvolino em 17/09/2015 - 15:07h

Opa, tenho mais um problema..

ao rodar o comando make o terminal me retornou isso..
[code] src/server/pvfs2-server.c:1204:4: error: #error Unknown instruction pointer location for your architecture, configure without --enable-segv-backtrace.
# error Unknown instruction pointer location for your architecture, configure without --enable-segv-backtrace.
^
src/server/pvfs2-server.c: In function ‘bt_sighandler’:
src/server/pvfs2-server.c:1226:42: error: ‘REG_INSTRUCTION_POINTER’ undeclared (first use in this function)
(void*)uc->uc_mcontext.gregs[REG_INSTRUCTION_POINTER]);
^
src/server/pvfs2-server.c:1226:42: note: each undeclared identifier is reported only once for each function it appears in
Makefile:777: recipe for target 'src/server/pvfs2-server-server.o' failed
make: *** [src/server/pvfs2-server-server.o] Error 1
[/code]

Tem alguma ideia do que seja? tentei rodar com o --enable e não foi.

[18] Comentário enviado por danilofugi em 17/09/2015 - 16:00h


[17] Comentário enviado por corvolino em 17/09/2015 - 15:07h

Opa, tenho mais um problema..

ao rodar o comando make o terminal me retornou isso..
[code] src/server/pvfs2-server.c:1204:4: error: #error Unknown instruction pointer location for your architecture, configure without --enable-segv-backtrace.
# error Unknown instruction pointer location for your architecture, configure without --enable-segv-backtrace.
^
src/server/pvfs2-server.c: In function ‘bt_sighandler’:
src/server/pvfs2-server.c:1226:42: error: ‘REG_INSTRUCTION_POINTER’ undeclared (first use in this function)
(void*)uc-&gt;uc_mcontext.gregs[REG_INSTRUCTION_POINTER]);
^
src/server/pvfs2-server.c:1226:42: note: each undeclared identifier is reported only once for each function it appears in
Makefile:777: recipe for target 'src/server/pvfs2-server-server.o' failed
make: *** [src/server/pvfs2-server-server.o] Error 1
[/code]

Tem alguma ideia do que seja? tentei rodar com o --enable e não foi.


E aí amigo, antes do make vc criou os diretórios e fez o ./configure?
muito estranho, aqui foi de boa...
vlw

[19] Comentário enviado por corvolino em 17/09/2015 - 17:42h

Eu já consegui resolver esse problema, usei uma opção no ./configure.
No comando "tcp://servidor(ou no0X):3334/pvfs2-fs /mnt/pvfs2 pvfs2 defaults,noauto 0 0" esse servidor ou no eu adiciono o ip da própria máquina? Exemplo: Na máquina servidor coloco o ip do servidor, no nodo1 coloco o ip no nodo1.

Basta apenas um ip ou tenho que colocar todos em todos?

[20] Comentário enviado por danilofugi em 17/09/2015 - 17:53h


[19] Comentário enviado por corvolino em 17/09/2015 - 17:42h

Eu já consegui resolver esse problema, usei uma opção no ./configure.
No comando "tcp://servidor(ou no0X):3334/pvfs2-fs /mnt/pvfs2 pvfs2 defaults,noauto 0 0" esse servidor ou no eu adiciono o ip da própria máquina? Exemplo: Na máquina servidor coloco o ip do servidor, no nodo1 coloco o ip no nodo1.

Basta apenas um ip ou tenho que colocar todos em todos?


ah que bom que conseguir resolver
isso dentro do arquivo, onde está escrito servidor(ou no0X) troca pelo ip da máquina que vc tá.
ex. no servidor, coloca o ip do servidor e só
quando tiver alterando no nó coloca o ip de cada nó, 1 em cada só
vlw

[21] Comentário enviado por corvolino em 18/09/2015 - 15:22h

Este arquivo não existe, crio apenas com as linhas informadas? É no usuário ou no root? Em todas máquinas ou apenas nos nós?

# nano ~/.bashcrc

[22] Comentário enviado por danilofugi em 18/09/2015 - 16:57h


[21] Comentário enviado por corvolino em 18/09/2015 - 15:22h

Este arquivo não existe, crio apenas com as linhas informadas? É no usuário ou no root? Em todas máquinas ou apenas nos nós?

# nano ~/.bashcrc


Isso mesmo, se não existir, tem q criar e coloca as linhas
com o usuario root sim
e em todas as maquinas

se preferir faça no servidor e copia pras maquinas via ssh
ex. scp caminho/bashcrc 192.168.0.x:/caminho/ (fica mais facil)
abraços

[23] Comentário enviado por corvolino em 21/09/2015 - 14:23h


# /opt/pvfs2/bin/pvfs2-genconfig /etc/pvfs2-fs.conf

Está dando Arquivo não encontrado, alguma dica?

[24] Comentário enviado por igorborn em 25/09/2015 - 20:25h


[23] Comentário enviado por corvolino em 21/09/2015 - 14:23h


# /opt/pvfs2/bin/pvfs2-genconfig /etc/pvfs2-fs.conf

Está dando Arquivo não encontrado, alguma dica?


Coloca da seguinte maneira: ./configure --prefix=/opt/pvfs2

[25] Comentário enviado por corvolino em 28/09/2015 - 14:54h


Estou com esse problema: http://pastebin.com/w0x4yvGP

Apertei ENTER em todas as perguntas e quando fui criar o novo storage deu o erro no pastebin. Estou fazendo isso no Servidor, tenho que replicar nos nodos também? Não vi nada no seu tutorial falando sobre essas perguntas e fiquei perdido.

Alguma dica?

[26] Comentário enviado por ggortan em 29/10/2015 - 15:45h


[19] Comentário enviado por corvolino em 17/09/2015 - 17:42h

Eu já consegui resolver esse problema, usei uma opção no ./configure.
No comando "tcp://servidor(ou no0X):3334/pvfs2-fs /mnt/pvfs2 pvfs2 defaults,noauto 0 0" esse servidor ou no eu adiciono o ip da própria máquina? Exemplo: Na máquina servidor coloco o ip do servidor, no nodo1 coloco o ip no nodo1.

Basta apenas um ip ou tenho que colocar todos em todos?


Eu estou com o mesmo erro na execução do make
[code] src/server/pvfs2-server.c:1204:4: error: #error Unknown instruction pointer location for your architecture, configure without --enable-segv-backtrace.
# error Unknown instruction pointer location for your architecture, configure without --enable-segv-backtrace.
Como voce conseguiu resolver esse erro?

[27] Comentário enviado por dioceliolarsen em 31/10/2015 - 09:48h

O pacote orangefs nao traz todo os outros pacotes como pvfs e mpi, a minha duvida entao e porque tenho que baixar separadamente as bibliotecas pvfs e lam e mpi. nao bast apenas instalar o orangefs

[28] Comentário enviado por danilofugi em 03/11/2015 - 12:08h


[27] Comentário enviado por adonolam em 31/10/2015 - 09:48h

O pacote orangefs nao traz todo os outros pacotes como pvfs e mpi, a minha duvida entao e porque tenho que baixar separadamente as bibliotecas pvfs e lam e mpi. nao bast apenas instalar o orangefs


Olá adonolam
traz sim os pacotes, mas aqui em alguns casos e de colegas tiveram q instalar os pacotes separados, mesmo já tendo eles no orangefs
vlw

[29] Comentário enviado por hugosilva em 20/04/2016 - 15:40h


[19] Comentário enviado por corvolino em 17/09/2015 - 17:42h

Eu já consegui resolver esse problema, usei uma opção no ./configure.
No comando "tcp://servidor(ou no0X):3334/pvfs2-fs /mnt/pvfs2 pvfs2 defaults,noauto 0 0" esse servidor ou no eu adiciono o ip da própria máquina? Exemplo: Na máquina servidor coloco o ip do servidor, no nodo1 coloco o ip no nodo1.

Basta apenas um ip ou tenho que colocar todos em todos?


Olá, estou encontrando o mesmo erro que vc na parte do ./configure. Se ainda lembra como resolveu tem como me informar?

[30] Comentário enviado por godace em 01/06/2016 - 05:59h

Alguém sabe dizer qual livro é esse que o Autor se refere? Zem 2005. Acredito que Zem seja o nome do Autor do livro, porém não consegui achar. Quero dar uma lida melhor sobre o assutno. Agradeço quem puder ajudar!

[31] Comentário enviado por danilofugi em 01/06/2016 - 10:53h


[30] Comentário enviado por godace em 01/06/2016 - 05:59h

Alguém sabe dizer qual livro é esse que o Autor se refere? Zem 2005. Acredito que Zem seja o nome do Autor do livro, porém não consegui achar. Quero dar uma lida melhor sobre o assutno. Agradeço quem puder ajudar!


Olá godace

segue o link com o artigo científico publicado
http://docslide.com.br/documents/jose-luis-zem-universidade-metodista-de-piracicaba-unimep-httpwwwun...

obrigado

[32] Comentário enviado por luissi em 02/07/2016 - 22:13h


[33] Comentário enviado por luissi em 08/07/2016 - 00:16h

Estou tendo um problema!
Quando baixo o orangefs e dou o comando #./configure
dentro da pasta cd orangefs-2.9.5.tar.gz(baixei a última versão)
da esse erro:
configure: error: "bison required in PATH to complete build"

Quando dou o comando #make, dentro da mesma
da esse erro.
make: *** Nenhum alvo indicado e nenhum arquivo make encontrado. Pare.

[34] Comentário enviado por danilofugi em 08/07/2016 - 12:07h


[33] Comentário enviado por luissi em 08/07/2016 - 00:16h

Estou tendo um problema!
Quando baixo o orangefs e dou o comando #./configure
dentro da pasta cd orangefs-2.9.5.tar.gz(baixei a última versão)
da esse erro:
configure: error: "bison required in PATH to complete build"

Quando dou o comando #make, dentro da mesma
da esse erro.
make: *** Nenhum alvo indicado e nenhum arquivo make encontrado. Pare.


Olá luissi
o problema aí é que falta o pacote bison
<https://packages.debian.org/sid/bison>
tente apt-get install bison ou aptitude install bison

depois tente fazer o ./configure e o make

vlw

[35] Comentário enviado por luissi em 14/07/2016 - 23:37h


[34] Comentário enviado por danilofugi em 08/07/2016 - 12:07h


[33] Comentário enviado por luissi em 08/07/2016 - 00:16h

Estou tendo um problema!
Quando baixo o orangefs e dou o comando #./configure
dentro da pasta cd orangefs-2.9.5.tar.gz(baixei a última versão)
da esse erro:
configure: error: "bison required in PATH to complete build"

Quando dou o comando #make, dentro da mesma
da esse erro.
make: *** Nenhum alvo indicado e nenhum arquivo make encontrado. Pare.


Olá luissi
o problema aí é que falta o pacote bison
&lt;https://packages.debian.org/sid/bison&gt;
tente apt-get install bison ou aptitude install bison

depois tente fazer o ./configure e o make

vlw


Desculpa pela demora em responder!
Deu certo aqui, vlw !
Agora um dúvida, Se eu eliminar o pvfs2 e deixar apenas com o NFS terei algum problema ?

[36] Comentário enviado por danilofugi em 18/07/2016 - 14:14h


[35] Comentário enviado por luissi em 14/07/2016 - 23:37h


[34] Comentário enviado por danilofugi em 08/07/2016 - 12:07h


[33] Comentário enviado por luissi em 08/07/2016 - 00:16h

Estou tendo um problema!
Quando baixo o orangefs e dou o comando #./configure
dentro da pasta cd orangefs-2.9.5.tar.gz(baixei a última versão)
da esse erro:
configure: error: "bison required in PATH to complete build"

Quando dou o comando #make, dentro da mesma
da esse erro.
make: *** Nenhum alvo indicado e nenhum arquivo make encontrado. Pare.


Olá luissi
o problema aí é que falta o pacote bison
&amp;lt;https://packages.debian.org/sid/bison&amp;gt;
tente apt-get install bison ou aptitude install bison

depois tente fazer o ./configure e o make

vlw


Desculpa pela demora em responder!
Deu certo aqui, vlw !
Agora um dúvida, Se eu eliminar o pvfs2 e deixar apenas com o NFS terei algum problema ?


Olá

isso mesmo, pode usar 1 dos 2, e não os 2.
o que ocorre é o seguinte, para compilar o código no cluster de alto desempenho é necessário que o código esteja em todas as máquinas (virtuais ou reais) a maneira de fazer isso de forma fácil e segura é usar uma pasta compartilhada que possa ser acessada de qualquer uma das máquinas e de preferência no mesmo lugar (ex.: /teste/codigo.c), assim o compartilhamento e uso de pacotes do pvsf e NFS são fáceis de configurar.

Por que usar o compartilhamento? pois posso copiar os arquivos para as máquinas que vai funcionar.
exatamente! se copiar os arquivos para as máquinas e executar o código no cluster, com certeza irá funcionar, aqui comigo funciona de boa, mas uma alteração no seu código no servidor não altera o código das máquinas e assim é necessário alterá-las de 1 em 1. assim o compartilhamento é a solução mais viável de se utilizar.

Com certeza pode-se utilizar outros meios de compartilhamento de arquivos, que também vai funcionar!

abraços

[37] Comentário enviado por luissi em 09/08/2016 - 19:50h

Obg, deu certo aqui!
Consegui rodar os código em todas as máquinas que crie.
Só uma última pergunta:
quando entro na máquina aparece esse erro:
bash: /opt/mpich/lib: Arquivo ou diretório não encontrado
tem algum problema esse erro ou posso removê-lo ?

[38] Comentário enviado por andreti em 11/08/2016 - 16:14h

Boa noite tarde, instalei um cluster na VirtualBox instada em um Ubuntu 16.04 como o Debian 8, usando 1 nó master e 2 nós escravos (3 Hosts) funcionou normal, agora fui fazer a mesma configuração em máquinas reais e não esta dando certo.
Tem alguma forma de transferir as configurações/pacotes ou do Cluster que configurei na máquina virtual para para as máquinas reais ?
Ou criar uma iso das máquinas virtuais para instalar em máquinas reais?

[39] Comentário enviado por danilofugi em 11/08/2016 - 17:26h


[37] Comentário enviado por luissi em 09/08/2016 - 19:50h

Obg, deu certo aqui!
Consegui rodar os código em todas as máquinas que crie.
Só uma última pergunta:
quando entro na máquina aparece esse erro:
bash: /opt/mpich/lib: Arquivo ou diretório não encontrado
tem algum problema esse erro ou posso removê-lo ?


Oi luissi,
acredito que possa remover sim sem problemas
vlw

[40] Comentário enviado por danilofugi em 11/08/2016 - 17:30h


[38] Comentário enviado por andreti em 11/08/2016 - 16:14h

Boa noite tarde, instalei um cluster na VirtualBox instada em um Ubuntu 16.04 como o Debian 8, usando 1 nó master e 2 nós escravos (3 Hosts) funcionou normal, agora fui fazer a mesma configuração em máquinas reais e não esta dando certo.
Tem alguma forma de transferir as configurações/pacotes ou do Cluster que configurei na máquina virtual para para as máquinas reais ?
Ou criar uma iso das máquinas virtuais para instalar em máquinas reais?


Olá Andreti,
Que bom que conseguiu fazer nas máquinas virtuais!
Sobre transferir as configurações não sei te dizer exatamente como proceder para transformar a máquina virtual em real, li sobre o assunto na época que fiz, mas era trabalhoso e resolvi refazer as configurações nas máquinas reais, mas creio que exista uma forma sim de fazer isso, fazendo um iso das máquinas com Partition Magic ou outro software de imagem iso.
Quanto ao não funcionamento, pode ser alguma coisa do SSH-Server que está faltando ou com erro, pois é onde costuma mais dar conflito e não funcionar

abraços

vlw

[41] Comentário enviado por andreti em 15/08/2016 - 14:33h


[39] Comentário enviado por danilofugi em 11/08/2016 - 17:26h


[37] Comentário enviado por luissi em 09/08/2016 - 19:50h

Obg, deu certo aqui!
Consegui rodar os código em todas as máquinas que crie.
Só uma última pergunta:
quando entro na máquina aparece esse erro:
bash: /opt/mpich/lib: Arquivo ou diretório não encontrado
tem algum problema esse erro ou posso removê-lo ?


Oi luissi,
acredito que possa remover sim sem problemas
vlw


Olá, uma ultima duvida, quando dou esse comando: # mpirun -hostfile /opt/hostfile -n 7 /usr/src/mpich-3.2/examples/cpi
dá esse erro no final a partir da linha 9 abaixo, o que pode ser ?

/root/.bashrc: line 25: /opt/mpich/lib: Arquivo ou diretório não encontrado
Process 0 of 7 is on master
Process 4 of 7 is on master
Process 6 of 7 is on master
Process 2 of 7 is on master
Process 1 of 7 is on cluster1
Process 3 of 7 is on cluster1
Process 5 of 7 is on cluster1
Fatal error in PMPI_Reduce: Unknown error class, error stack:
PMPI_Reduce(1258)...............: MPI_Reduce(sbuf=0xbfec4600, rbuf=0xbfec45f8, count=1, MPI_DOUBLE, MPI_SUM, root=0, MPI_COMM_WORLD) failed
MPIR_Reduce_impl(1070)..........:
MPIR_Reduce_intra(823)..........:
MPIR_Reduce_impl(1070)..........:
MPIR_Reduce_intra(878)..........:
MPIR_Reduce_binomial(186).......:
MPIDI_CH3U_Recvq_FDU_or_AEP(629): Communication error with rank 1
MPIR_Reduce_intra(843)..........:
MPIR_Reduce_impl(1070)..........:
MPIR_Reduce_intra(878)..........:
MPIR_Reduce_binomial(248).......: Failure during collective


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts