Máquinas velhas a todo vapor

Veja como transformar aqueles micros "relíquias" numa poderosa máquina de processamento usando GNU/Linux. Nesse artigo abordaremos a instalação de um cluster baseado no OpenMosix.

[ Hits: 37.623 ]

Por: Rafael Leandro Breviglieri em 08/01/2005


OpenMosixView



Esse utilitário desenvolvido pelo projeto OpenMosix permite ver quais computadores estão usando os recursos, quais nodes estão com processo migrado.

Para baixar o aplicativo, entre no site www.openmosixview.com, faça download do source-code e instale:

# tar xvfz openmosixview-1.5.tar.gz
# cd openmosixview-1.5
# ./setup
# make
# make install


Após instalado, execute o programa no X:

# openmosixview

Nessa janela existe um utilitário de configuração necessário para que o serviço funcione corretamente, ele deve ser utilizado em todos os computadores. Clique no botão "all-nodes", surgirá uma outra janela de configuração, deixe ela dessa maneira:

Auto-migration               ON
Talk to others nodes         YES
Local procs stay             NO
Send away guest procs        NO
Start/Stop                   Start

Selecione Apply. Na barra de ferramentas, selecione a opção "Collector", clique nela e no menu escolha "OpenMosixcollector" e "start". Ele é responsável pelo log do programa e precisa estar ativado.

Testando


Para testar você pode utilizar programas como o o povray para renderizar imagens entre outros programas que você encontra em:
RaFael --> PiStO

"Linux for all"

Página anterior    

Páginas do artigo
   1. O que é cluster
   2. Configurando o OpenMosix
   3. OpenMosixView
Outros artigos deste autor

Introdução ao universo dos filesystems

Que tal criar uma mini-distro em 1 disquete?

Leitura recomendada

Kernel 2.6 hacks

Blu-ray: Reproduzindo, copiando, ripando e assistindo no GNU/Linux

Tornando o kernel do OpenBSD enxuto

Instalando o kernel 2.6.13 pré-compilado no Slackware 10.2

Compile e empacote o kernel com processadores ociosos em sua rede utilizando distcc, ccache e kernel-package no Debian

  
Comentários
[1] Comentário enviado por vodooo em 08/01/2005 - 12:42h

Bom artigo!

Agora ficou fácil ter um bom PC com aquele monte de tranquerias guardadas!!!

Abraços

[2] Comentário enviado por vodooo em 08/01/2005 - 12:44h

Estou com uma dúvida, se eu tiver, por exemplo, dois PC com processador Pentium 133 e liga-los em cluster, o sistema ficaria com uma performance parecida com a de um Pentium 266?

Abraços

[3] Comentário enviado por wronieri em 08/01/2005 - 13:45h

Legal o artigo parabéns, no caso do OpenMosix pelo que me parece ele soh utiliza as outras máquinas quando a máquina do processo startado não aguentar o processamento ai ele distribui para as outras (me corrijam se estiver errado) mas o único problema que vejo no OpenMosix é q se uma máquina por algum motivo parar a parte do processo da mesma se perde gerando erros.

[4] Comentário enviado por removido em 08/01/2005 - 15:53h

Taí uma escelente aplicação para os 486 da vida!!!
Parabéns pelo seu excelente trabalho!
Os artigos aqui no VOL estão cada vez melhores...

[5] Comentário enviado por ahamadeu em 08/01/2005 - 16:06h

Fala Rafael

Parabéns pelo seu artigo.
Vá em frente ao seu novo projeto que em breve tenho certeza estará publicado aqui na Comunidade VOL
Inté +

[6] Comentário enviado por [email protected] em 09/01/2005 - 18:20h

Parabens desce jeito nossa comudidade fortalece muito !!!

[7] Comentário enviado por pitanga em 09/01/2005 - 21:11h

Caro WRonieri

O CHPOX um mecanismo de checkpoint para o openmosix visa resolver este problema criando uma forma de alta disponibilidade ao nível de aplicação.

[]´s

Marcos Pitanga
Linux Clusters Specialist
HA + HPC + SLB

[8] Comentário enviado por pitanga em 09/01/2005 - 21:15h

Caro Vodoo,

A principal característica desse modelo de cluster é a utilização do método de migração de processos, em que se equilibra a carga entre as máquinas de modo que se consiga rodar mais processos do que normalmente conseguiria com uma só cpu, beneficiando assim os aplicativos que usam muitos processos independentes, caso comum a diversos aplicativos encontrados em ambientes Unix.

A Migração Preemptiva de Processos é capaz de migrar qualquer processo do usuário, em qualquer instante e para qualquer nó disponível de maneira transparente. Para atingir um melhor desempenho esse é controlado por algoritmos de balanceamento dinâmico de carga e de prevenção contra falta de memória. Esses algoritmos são projetados para responder dinamicamente as variações da utilização dos recursos nos diversos nós. Isto garante que o cluster se comporte muito bem, seja numa configuração com poucas ou com muitas máquinas, propiciando uma maior escalabilidade.

Esses algoritmos são descentralizados, ou seja, não existe a figura de controlador mestre e nós escravos como no cluster Beowulf da NASA. Cada nó é um mestre para os processos que são criados localmente, e um escravo para processos remotos migrados de outros nós do cluster. Isto significa que podemos acrescentar ou remover as máquinas do cluster a qualquer momento, com um mínimo de distúrbio no sistema. Este cluster possui também algoritmos de monitoramento que identificam a velocidade de cada nó, a carga da CPU e a memória livre disponível, como também a comunicação interprocessos IPC e a velocidade de acesso de cada processo.

Portanto, seu Pentium 133 não vira 266.

[]´s

Marcos Pitanga
Linux Clusters Specialist
HA + HPC + SLB

[9] Comentário enviado por jasenger em 09/01/2005 - 23:15h

Um bom modo de testar a migração de processos é executar a seguinte linha de comando e acompanhar com o openmosixview:
# awk 'BEGIN {for(i=0;i<10000;i++)for(j=0;j<10000;j++);}'
Abraço
Jorge

[10] Comentário enviado por wronieri em 10/01/2005 - 00:06h

Oi Pitanga
Ainda não tinha ouvido falar no CHPOX vou pesquisar sobre ele então ;-)

Até mais.

[11] Comentário enviado por pop_lamen em 12/01/2005 - 03:28h

Legal, mas faltou explicar o que exatamente esta sendo feito...
Não sakei mto bem.. o que exatamente foi feito com a maquina?
foi agregada a um cluster? em conjunto com outras maquinas?
Sei lá
A parte técnica ficou mto boa, mas a teorica ....
Mas mesmo assim parabéns cara!
É isso aIH!
T+!

[12] Comentário enviado por fernandoamador em 16/01/2005 - 05:40h

o Artigo é bom pq não é muito técnico.

[13] Comentário enviado por pitanga em 16/01/2005 - 14:18h

Acho que têm que haver uma boa dosagem de teoria e prática, visto que, implementar sem saber o que é, não é nenhuma vantagem para um profissional de TI.

[]´s

Marcos Pitanga
Linux Clusters Specialist

[14] Comentário enviado por marcioseptimio em 24/08/2008 - 11:17h

Seria interessante tratar tecnicamente e teoricamente de forma simples e objetiva dos trabalhos de paralelismo que ocorrem em clusters usando o OpenMosix.
O que sao com certeza diferentes do sistema de escalonamento distribuido que o nosso querido Beowulf utiliza. Mas estou trabalhando em um sistema, que, teoricamente deveria se aproximar um pouco do Beowulf em termos de escalonamento, mas pretendo criar todas as possibilidades para que o algoritmo se torne simples em sua integridade.
Bom, como nosso amigo Pitanga disse, realmente o OpenMosix nao vai gerar tantos Gigaflops como muitos desejam..rs Mas... Isso tudo depende de implementacao, gente, estamos no mundo open, nao fiquem presos a esquemas prontos de outros usuarios, isso aqui so e opensource se a gente correr atras, vamos implementar e melhorar o que ja tem e criar novas tecnicas, eu mesmo me comprometo a explorar ao maximo o sistema do openmosix e assim que tiver um projeto bom e bem elaborado vou postar aqui para que outros usuarios tenham ideias legais.
Estou construindo um projeto de escalonamento, vou tentar usar o openmosix primeiro para obter o maximo de performance, mas pode ser que nao consiga chegar ao esperado.
O que eu desejo? Um sistema que seja bom em escalonamento tanto para servidor de BD, como um Oracle por exemplo quanto um sistema que possa prover servicos de internet, seguranca e um excelente servidor de jogos online como LineAge2, WOW, Cabalonline, CS, etc...
Para essas variabilidades pretendo criar alternativas de configuracao, mas sei que isso demanda tempo e muito estudo e trabalho, como nao sou tao experiente assim, tenho aqui comigo uns 238947397498237489723 livros e uns 1983748237497 tutoriais para ler e analisar e muuuuuuuuuuuuitaaaaaaaaaaaa disposicao para estudar e aprender.

Bom, pretendo abrir aqui nesse lindo forum, um espaco so para postagens relacionadas aos Clusters de forma geral.
Espero as vossas postagens...

[15] Comentário enviado por pitanga em 24/08/2008 - 20:39h

1o - O Beowulf utiliza paralelismo explícito. Se você necessitar particionar um grande cluster você faz uso de ferramentas apropriadas para tal como openPBS-Pro, Slurm, Torque, etc... Você poderá acoplar ao Torque e PBS outros métodos de escalonamento de jobs como o MAUI.

2o - A filosofia do "finado" openMosix é balanceamento descentralizado de processos par-a-par.

3o - O openMosix já usa um algoritmos baseado no "market" para escolha da melhor máquina.

4o - O melhor método de implementação de sistemas de banco de dados do Oracle já está embutido na solução do RAC - Real Application Cluster e migrado para o produto 11G (Grid)

5o - Seria interessante você focar seu projeto no escalonamento de grids computacionais onde identificar um recurso disponível e agendá-lo, utilizá-lo e liberá-lo ainda é umas das tarefas das mais complicadas neste ambiente.

6o - Balanceamento de serviços de Internet já são executados via produtos como Radware Linkproof, Alteon, F5 - BigIP, LinuxVirtualServer, etc...

7o - Existem muitos poucos livros no mundo sobre clusters, tenho praticamente todos eles e não chega a quantidade citada por você ;-)

[]´s

Marcos Pitanga
Linux Clusters Specialist

[16] Comentário enviado por Raz em 03/11/2014 - 12:32h

Extremamente completo e funcional,aprovado em minhas maquinas de teste..


Contribuir com comentário