Configurando um nó para o mosix manualmente DESATUALIZADO, ESQUEÇAM MOMENTANEAMENTE



Índice

  1. Introdução / Observações
  2. Baixar os arquivos (imagem do kernel, módulos, fontes do mosix e dependências).
  3. Instalar as dependências.
  4. Copiar imagem do kernel e os módulos para os devidos lugares.
  5. Configurar o boot.
  6. Instalar o mosix.
  7. Configurar o mosix.
  8. Finalizando.

Introdução / Observações

Esse documento foi escrito baseado nas necessidades do primeiro pack, cluster_pack1.tar, logo com versões mais novas do pack, talvez seja necessário alterar coisas aqui.
A distribuição que usamos para montagem do primeiro cluster foi o mandriva 2008.1
Todos os arquivos de instalação dos nós estão em mosix/ http://ivete.fis.unb.br/mosix/
Todos os comandos desse tutorial devem ser executados como root.
Para seguir esse tutorial, um mínimo de conhecimento do *nix userland é necessário. Não vou me deter a detalhes.

Baixar os arquivos (imagem do kernel, módulos, fontes do mosix e dependências).

Pegue o cluster_packX.tar mais novo em http://ivete.fis.unb.br/mosix/ .
Salve o arquivo em um diretório que esteja no disco local, de preferência, um bom lugar é o /tmp . Descompacte esse arquivo.

Instalar as dependências

Entre no diretório que foi descompactado no anterior, cluster_packX.
Nesse passo temos duas coisas a fazer, instalar o killproc e daemon. Coisa de 0,5 minuto.

Vamos começar com o daemon:
 rpm -ivh daemon-0.6.3-1.i386.rpm 

Agora vamos instalar o killproc, descompacte o killproc e entre no novo diretório gerado. Como essa dependência é um source, necessita de ser compilado, logo você precisará de dependências básicas como gcc e make, se der problema na hora de compilar, leia o erro e instale a depêndencia que está faltando.
Dentro do diretório do killproc, execute:
 make && make install 

Copiar imagem do kernel e os módulos para os devidos lugares

Volte para o diretório do cluster_packX, e descompacte o pacote contendo a imagem e os módulos do kernel, o arquivo chamado kernel-mosixX.tar .
Será descompactado um novo diretório, como kernel_mosix, entre nele.
Agora vamos ao que interessa, temos que mover a imagem, a initrd e .map para dentro do /boot/ , você pode faze-lo assim:
cp -rfv kernel-mosix1 mosix1.img System.map-2.6.20.4 /boot/

Agora temos de copiar os módulos para o devido lugar, /lib/modules/ , proceda assim:
cp -rfv 2.6.20.4mosix1 /lib/modules/

Configurar o boot

Configure a nova imagem para ser bootada através do drakconf, eu sei que é tosco usar essas ferramentas gráficas, mas no mandriva estava ocorrendo quando eu estava fazendo as configs manualmente, logo melhor não arriscar.

OBS COLOCAR FOTO AQUI COM OS PARAMETROS DO MANDRIVA

Dados:

Instalar o mosix

No dir do cluster_packX, existe um pacote chamado mosix-2.19.0.4.tbz , não se apavore com .tbz, é simplemente um .tar.bz2 (bzip2) .
Descompacte-o e entre no novo diretório criado.

No diretório do mosix, execute:
./mosix.install

Ele executará um instalador em modo texto, que fará alguma perguntas, eis as repostas:

Pergunta 1:
Installing MOSIX:
=================

If you are installing MOSIX for a set of nodes with
a common root, then type the common root directory -
if you are installing only the local node, press <ENTER> :-  

Resposta: Simplesmente pressione <ENTER>

Pergunta 2:
Please choose how to prepare the kernel:

1. Fetch the Linux kernel (2.6.20.4) sources from the internet.
2. The Linux kernel (2.6.20.4) sources are already on my disk.
3. I already installed the kernel, or will install it separately.

Option [1]:

Resposta: 3 <ENTER>

Pergunta 3:
In which run-level(s) should MOSIX run (0=none) [2345] ?- 

Resposta: <ENTER>

Pergunta 4:
Create a minimal configuration now [Y/n]?

Resposta: n

Configurar o mosix

Essa é a parte chata. heheh
Primera coisa, remova o diretoório que foi criado na instalação do mosix: /etc/mosix , isso mesmo, rm -rf nele!
Agora pegue os arquivos de configuração padrão gerado por nós: http://ivete.fis.unb.br/mosix/mosixetc.tar e salve no /etc. Lá, descompacte o pacote, e apague o .tar. Entre no novo /etc/mosix/ .
O primeiro arquivo a ser alterado é o /etc/mosix/mosip , nele simplesmente deverá conter o ip do nó e nada mais.
Exemplo para o nó 26:
[leonardo@lcc26 ~]$ cat /etc/mosix/mosip
10.0.0.126

Agora vem a parte chata, para o mosix encontrar os outros e deixar que os outros nós acessem o nó que estamos instalando, ele precisa de um arquivo especial chamado mosix.map, nele deverá conter uma lista de todos os outros nós e inclusive o nosso, no tar que você baixou anteriormente, como os arquivos de configuração padrão, já possui a lista mais atualizada possível de nós, logo, você deverá incluir seu nó nessa lista, e acessar todos os outros nós e incluir o seu nó em todas as outras máquinas.

Nós poderíamos automatizar isso de duas maneiras, 1 criando um servidor nfs /etc/mosix, mas isso é complicado, pois se o nfs sair do ar, o cluster cairá junto, a outra opção é colocar no crontab para que seja atualizado o mosix.map com uma certa frequência, provavelmente será a solução escolhida. Mas ainda não é assim.
Outro arquivo que deverá ser atualizado, com a mesma frequência do mosix.map é o userview.map, que faz a lista dos nós para comandos como o mon.
Segue exemplos dos arquivos.

/etc/mosix/mosix.map
[leonardo@lcc26 mosix]$ cat mosix.map
10.0.0.115 1 p
10.0.0.116 1 p
10.0.0.117 1 p
10.0.0.118 1 p
10.0.0.119 1 p
10.0.0.120 1 p
10.0.0.123 1 p
10.0.0.124 1 p
10.0.0.125 1 p
10.0.0.126 1 p

A primeira coluca é o IP do nó, a segunda a quantidade de processadores do nó e a terceira não sei (ainda).

/etc/mosix/userview.map
[leonardo@lcc26 mosix]$ cat userview.map
1 10.0.0.115 1
2 10.0.0.116 1
3 10.0.0.117 1
4 10.0.0.118 1
5 10.0.0.119 1
6 10.0.0.120 1
7 10.0.0.123 1
8 10.0.0.124 1
9 10.0.0.125 1
10 10.0.0.126 1

A priemeira coluna é o número do nó, a segunda o ip e a terceira o número de processadores que o nó possui.

Finalizando

Bom, se você fez todos os passos corretamente, agora é a hora do reboot. Certifique-se que o sistema irá bootar com o kernel que nós provemos a você.
Para verificar se está tudo ok, após o boot, execute:


[root@lcc26 ~]# /etc/init.d/mosix status
This MOSIX node is: 10.0.0.126 (lcc26) (no features)

Nodes in cluster:
=================
lcc15: proximate
lcc16: proximate
lcc17: proximate
lcc18: proximate
lcc19: proximate
lcc20: proximate
lcc23: proximate
lcc24: proximate
lcc25: proximate
lcc26: proximate

Status: Running Normally
Load:   0
Speed:  9313 units
CPUS:   1
Frozen: 0
Util:   100%
Avail:  YES
Procs:  Running 0 MOSIX processes
Accept: Yes, will welcome processes from here
Memory: Available 1.92GB/1.97GB
Swap:   Available 3.8GB/3.8GB
Daemons:
		Master Daemon: Up
		MOSIX Daemon : Up
		Queue Manager: Up
		Remote Daemon: Up
Guest processes from grid: 0/10

Se a resposta não for "Up" para tudo, então há algo errado no reino da dinamarca, refaça os passos e leia os logs.
Outro parâmetro, é ver se o comando "mon" está mostrando corretamente os nós e variação de processamento deles.
Bom, finalmente acabou! UFA!
There are no comments on this page.
Valid XHTML :: Valid CSS: :: Powered by WikkaWiki