Professional Documents
Culture Documents
Debian Sarge / Debian Etch / Debian Lenny / Debian Squeeze / MPI LAM
Poos de Caldas
2013
RESUMO
LISTA DE ABREVIATURAS
MPI
NFS
RSH
Remote Shell
SUMRIO
1 INTRODUO ...................................................................................
10
14
16
17
19
19
2.6.2 Mpitask......................................................................................
19
19
20
21
25
26
6
1
INTRODUO
1.1
Objetivo
7
2
CONFIGURANDO O CLUSTER
2.1
Aps a instalao, o primeiro procedimento foi autenticar-se como superusurio e configurar o repositrio da Universidade, para que as atualizaes fossem
mais rpidas. Este procedimento consiste em substituir o contedo do arquivo
/etc/apt/sources.list pelo contedo abaixo:
No terminal digite:
8
*OBS: Para comentar uma linha, insira um # na frente da linha a ser
comentada!
9
Os pacotes acima foram instalados com o seguinte comando*:
10
E insira no final do arquivo as seguintes linhas:
rlogin
rsh
rexec
O cliente de terminal remoto envia o usurio do sistema automaticamente no
incio da conexo, assim no necessrio digitar o nome de usurio. E para que
no seja necessrio digitar a senha foi preciso informar em cada n quais eram os
ns confiveis da rede. Ento foi editado o arquivo /etc/hosts.equiv, e em seu
contedo foi inserido o endereo IP de cada n do cluster, um por linha. No terminal
digite:
192.168.5.40
192.168.5.41
192.168.5.42
192.168.5.44
192.168.5.45
Realizado os procedimentos acima, encerra-se a configurao comum para
todos os ns.
2.2
Configurando o n mestre
11
E insira no final do arquivo as seguinte linha:
GERALAM.SH
|"
echo "+=========================================================================+"
echo "|
echo "+=========================================================================+"
echo "+=========================================================================+"
echo "|
VERSAO: 2.20810
|"
echo "+=========================================================================+"
echo "|
|"
echo "|
|"
echo "|
|"
echo "|
PROFESSOR:
|"
echo "+=========================================================================+"
echo -e "# IP dos hosts ativos" > /etc/mpich/machines.LINUX
echo -e "# IP dos Hosts ativos" > /etc/lam/lam-bhost.def
echo "|
echo "|
|"
Verificando bancada do CLUSTER...
|"
echo "|
|"
NET="192.168.5."
HOST="40"
CONT="0"
while [ ${HOST} -lt 46 ]; do
ATIVO=`/bin/ping -c 1 ${NET}${HOST} | /bin/grep 'transmitted' | awk '{print $4}'`
if [ X"${ATIVO}" = X"1" ]; then
RSH=`rsh ${NET}${HOST} echo -e $SHELL`
if [ X"${RSH}" = X"/bin/bash" ]; then
CONT=$((CONT+1))
IP=${NET}${HOST}
echo "|
${IP}
[ X ] ATIVO
|"
echo ${IP} >> /etc/lam/lam-bhost.def
echo ${IP} >> /etc/mpich/machines.LINUX
] INATIVO
12
else
IP=${NET}${HOST}
echo "|
${IP}
] ATIVO
[ X ] INATIVO
|"
fi
else
IP=${NET}${HOST}
echo "|
${IP}
] ATIVO
[ X ] INATIVO
|"
fi
HOST=$((HOST+1))
done
echo "|
|"
echo "+=========================================================================+"
echo "|
|"
echo "+=========================================================================+"
echo ""
cp /etc/mpich/machines.LINUX /etc/lam/lam-bhost.def
No terminal digite:
sempre o
endereo do
escravo.
13
Logue como usurio cluster e digite o comando a seguir
sudo cat /home/cluster/.ssh/id_das.pub
ssh cluster@192.168.5.41 'cat >> /home/cluster/.ssh/authorized_keys '
Dicas:
/.ssh/id_das.pub
ou
/home/cluster
/.ssh/authorized_keys.
shutdown r now
2.3
Configurando os ns escravos
14
sudo gedit /etc/fstab
Insira no final do arquivo a seguinte linha:
portmap: ALL
lockd: ALL
mountd: ALL
rquotad: ALL
Aps adicionar estas informaes, o arquivo deve ser salvo e deve ser editado
o arquivo /etc/hosts.allow para definir o IP ou faixa de IPs que podero "concorrer"
aos compartilhamentos, ou seja, especificar quem ter acesso a cada servio.
portmap: 192.168.5.41
lockd:
192.168.5.41
rquotad: 192.168.5.41
mountd: 192.168.5.41
statd:
192.168.5.41
15
portmap: host1, host2, host3, hostX
lockd:
172.20.1.2
Onde host1, 2, 3 e X correspondem aos endereos IPs dos ns escravos que
sudo mount -a
Em seguida autenticamos no sistema com o usurio cluster, criamos o arquivo
/home/cluster/.rhosts, e nele definimos os endereos IP de todos os ns confiveis
para este usurio. Por consequncia o contedo do arquivo ficou idntico ao
/etc/hosts.equiv. No terminal digite:
192.168.5.40
192.168.5.41
192.168.5.42
192.168.5.44
192.168.5.45
shutdown r now
16
2.4
sh /home/cluster/scripts/geralam.sh
*OBS: Esse procedimento deve ser realizado no TERMINAL COMO ROOT, e
no no terminal normal...
gedit /etc/mpich/machines.LINUX
gedit /etc/lam/lam-bhost.def
*OBS: Verifique tambm se tais arquivos realmente contenham os endereos
IPs apenas dos ns ativos do cluster...
Aps a criao dos arquivos foi necessrio iniciar efetivamente o ambiente MPI
atravs do seguinte comando. No terminal digite:
lamboot -v
*OBS: Este comando consulta os arquivos gerados (citados acima) com os
endereos IP dos ns ativos do cluster...
17
E insira no arquivo apenas os endereos ativos do cluster:
192.168.5.40
192.168.5.41
192.168.5.43
192.168.5.44
192.168.5.45
E por fim:
lamboot v lamhosts
Com isso, nota-se que o n referente ao IP = 192.168.5.42 no se encontra
mais presente ou ativo em nosso cluster.
Uma vez realizada a manuteno, este n poder ser ativado novamente. Para
isso, execute o script geralam.sh novamente, e em seguida o comando lamboot v
(tais passos j foram citados acima).
2.5
Testando a MPI
18
if (rank == 0)
{
strcpy(message,"Ola, Mundo!");
for (i=0; i<size; i++)
ret = MPI_Send(message, 12, MPI_CHAR, i, tag, MPI_COMM_WORLD);
}
else
ret = MPI_Recv(message, 12, MPI_CHAR, 0, tag, MPI_COMM_WORLD, &status);
printf("Mensagem do no %d : %s\n", rank, message);
ret = MPI_Finalize();
}
E em seguida:
mpirun N nomedoexecutvel
*OBS: Este comando responsvel por executar o arquivo executvel em
todos os ns do cluster...
2.6
Comandos MPI
2.6.1 Lamclean
19
inexistentes, programas que no encerravam, dentre muitos outros
problemas. Caso isso ocorra, deve-se digitar no terminal do n mestre o seguinte
comando:
No terminal digite:
lamclean -v
*OBS: Este comando responsvel por matar todos os programas MPI e
apagar todas as mensagens pendentes...
2.6.2
Mpitask
mpitask [ -h ]
*OBS: A opo h na linha de comando fornece um breve resumo desse
comando...
2.6.3
Mpimsg
Similar ao comando mpitask, esse comando fornece informaes sobre
mpimsg
*OBS: Esse comando no til se voc estiver usando o modo "client-to-client"
que o default. Voc deve especificar a opo -lamd no seu comando mpirun para
que o comando mpimsg funcione corretamente.
2.6.4
Lamnodes
20
Para listar todos os ns ativos do cluster (incluindo o n mestre),
execute o comando lamnodes. No terminal digite:
lamnodes
Ser exibido no prprio terminal quais ns esto ativos, e quantos
processadores disponveis cada n possui.
n0 192.168.5.40:1:origin.this_node
n1 192.168.5.41:1:
n2 192.168.5.42:1:
n3 192.168.5.43:1:
n4 192.168.5.44:1:
n5 192.168.5.45:1:
21
3 PROBLEMAS DEBIAN 6 (Squeeze)
22
4- VERIFICAO O CLUSTER GUIA RPIDO
Para que os gerentes do cluster faam uma verificao diria, onde verificamos
se o cluster est funcionando perfeitamente, basta apenas seguir os seguintes
passos.
cd /home/cluster/scripts
sh geralam.sh
Todos os ns devero aparecer [Ativo]. Caso algum n estiver [Offline]
verificar se o mesmo est conectado rede ou se ele foi ligado 1 que o n mestre
ou quaisquer outros motivos.
No Esquea!
23
possvel conectar-se com o cluster a partir de qualquer
computador, desde que esteja conectado rede da universidade (PUC Minas
campus Poos de Caldas). Para isso, abra o terminal de digite:
ssh nomeDoUsuario@IPdoNoMestre
Por Exemplo:
ssh root@192.168.5.40 ou
ssh cluster@192.168.5.40
Normalmente aparece um aviso onde digitamos yes e logo aps solicitado
a senha do usurio.
No esquecendo que:
24
5 CLUSTER CONFIGURADO E INSTALADO
rm rf nomeDoArquivoQueDesejaExcluir
Por exemplo:
rm rf exemplo.c
rm rf al550000000
Onde o usurio vai ser o cluster, o IP Destino o do N Mestre e :~/ significa que vai
ser colocado na home desse usurio, ou seja, onde est os outros arquivos .c.
25
6 CONSIDERAES FINAIS
26
7 REFERNCIAS BIBLIOGRFICAS
041/tutorial_cluster_beowulf.html>.
GLEYDSON
M.
Guia
Foca
Linux.
Disponvel
em