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

Se você resolve compilar e empacotar o kernel em uma máquina isoladamente, o tempo para a execução e finalização da tarefa tende ao infinito. Que tal usar os processadores de sua rede para agilizar o processo?! Neste artigo você saberá como fazer isso.

[ Hits: 23.382 ]

Por: Marco Sinhoreli em 20/04/2006


Tudo que você precisa nos nós escravos



Basicamente você precisa do distcc e do gcc (o mesmo do nó central). Então instale-os!

# aptitude install distcc gcc-3.4

Configure o distcc na solicitação do script preinst para iniciar no momento do boot (ou você terá que inicializá-lo sempre que desejar utilizá-lo) e para aceitar conexões do host central (o que nós configuramos anteriormente) ou de toda a sua rede, ou de uma faixa de IP's separados por espaço.

Perceba que não instalamos o ccache como no nó central pelo fato de que o sistema de arquivos que contém os fontes não estará disponível para os nós escravos e você nem precisa dele! Basicamente o ccache cacheia tudo que passou pelo processador central através do compilador e armazena. As requisições do uso do gcc passam primeiro pelo ccache que verifica se aquela rotina já foi executada, caso não tenha sido ele entrega para o distcc que faz a distribuição das chamadas para todos os hosts que compõe o farm.

Página anterior     Próxima página

Páginas do artigo
   1. Descrição das aplicações utilizadas
   2. Tudo que você precisa no nó central
   3. Tudo que você precisa nos nós escravos
   4. Usando o compile cluster
   5. Conclusão
Outros artigos deste autor

Debmirror: Criando um repositório Debian na rede local

Leitura recomendada

Layer7 e compilação do kernel mole-mole com Conectiva 10

As incríveis aventuras de um RedHat 9 migrando para kernel 2.6

Compilar kernel em distros baseadas em Debian

Debian com kernel 2.6.10 - passo a passo

Debian Lenny com Kernel 2.6.28 + Layer7 + Firewall

  
Comentários
[1] Comentário enviado por removido em 21/04/2006 - 11:54h

Ótimo artigo, vou testar em breve.
Só achei que o artigo foca a instalação usando apt. Poderia ser dado exemplos de instação em Fedora com uso de YUM, e até mesmo compilação manual via fonte.
Além do mais, faltou citar que as portas envolvidas no trabalho devem ser liberadas no firewall.
Abraços e parabéns :)

[2] Comentário enviado por msinhore em 21/04/2006 - 13:46h

Olá Otavio,

Eu trabalho somente com Debian e por esse motivo não citei como configurar em outras distribuições. Acredito que os passos para configuração dos aplicatívos deva ser a mesma.
Com relação ao firewall, ele não era objeto do artigo e por esse motivo não citei sua configuração.

Abraços e sucesso.

[3] Comentário enviado por psabs em 21/04/2006 - 20:04h

Olá,

Antes de mais nada , parabéns pelo artigo.

Vc saberia se o distcc e o ccache funcionariam para compilar outros projetos tal como OpenOffice, gnome etc... ? Ou ele apenas serve pra compilar kernel ?

[]

[4] Comentário enviado por removido em 21/04/2006 - 20:31h

O homem enlouqueceu!!!!!!!!!!!...........
Realmente, não faltava mais nada...
O que esse tal de linux não é capaz, hein???
;-P

[5] Comentário enviado por thelinux em 24/04/2006 - 08:46h

Ao Marco Sinhoreli - Parabéns pelo ótimo tutorial.

Ao otavio - cara, isto aqui não é curso. O cara fez um excelente tutorial.

[6] Comentário enviado por msinhore em 24/04/2006 - 10:33h

Olá psabs,

Sem nenhuma restrição para compilar outros códigos. Lembre-se de declarar e exportar as mesmas variaveis antes de chamar o gcc.

Abraços

[7] Comentário enviado por removido em 24/04/2006 - 17:29h

thelinux, não me leve a mal. Realmente é um ótimo artigo.
Apenas expressei uma ideia complementar ao artigo.
Afinal, esse espaço é exatamente para isso, para discução de ideias que possam não apenas elogiar o artigo, mas agregar mais informação :)
Abraços

[8] Comentário enviado por thelinux em 24/04/2006 - 17:43h

Tranquilo otavio. Grande abraço. Bola para frente.

[9] Comentário enviado por israel_miranda em 13/12/2007 - 15:36h

UAU!!!
Cara, eu sei da existência do projeto do bewolf para computação distribuida, mas não fazia idéia que havia um software assim para GCC!!!

Muito bom o artigo, meus parabéns!!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts