Bom, descrito o problema, vamos resolvê-lo.
Primeiro criamos um sisteminha a partir do
Ubuntu GNU/Linux live-cd com as seguintes características:
- Servidor DHCP
- Servidor SSH
- Tracker BitTorrent
- Além do sistema ser um TO - RAM (ele possui 150 MB no máximo, então é copiado para a RAM do computador)
Ao inicializar o sistema na máquina original (que será clonada), inicia-se um menu perguntando qual a configuração de rede (para não entrar em conflito com outro servidor dhcp). Vamos supor que esteja sem o servidor dhcp. Assim o sistema liga seu dhcp server e toma conta da rede, juntamente com o bittorrent tracker e o ssh server.
Pode-se também instalar o
Viegas em uma partição para que não seja preciso o live-cd novamente, basta deixar o espaço.
Após essas etapas o usuário escolhe as imagens que deseja gerar e a partição em que estas serão guardadas. Feito isso, resta clonar as imagens para as outras máquinas. Agora o usuário ativa o
bittorrent das imagens, ou seja, como ele as possui completamente, ele se tona um SEEDER.
Ao inicializar as outras máquinas (que serão clones) o sistema busca via ssh algum traço de outro
Viegas Rubim. Caso ele encontre, verifica um flag de servidor (confere se aquele sistema é o que contém a imagem original) e começa a baixar um pacote com todos os dados que ele precisa.
Pronto, agora qualquer máquina em que for colocado o live-cd será clone da máquina original. E como estamos usando o BitTorrent, o número de máquinas não diminui a velocidade de download, pelo contrário, melhora muito.
Eis agora algumas dicas:
- Deixe as máquinas que terminaram de baixar em SEED por mais alguns minutos depois de completarem;
- Use clientes bittorrent em C ou C++, os interpretados como o python são terrivelmente mais lentos;
- Ajuste sua rede para usar com o Viegas Rubim, ou seja, defina uma máquina FONTE e defina faixas de IP corretamente;
- Aumente o lease do DHCP (8 horas em meus testes), se as máquinas ficam trocando de IP demais o tracker não funciona muito bem.
Ainda não disponibilizei no Sourceforge o live-cd nem a documentação de como criá-lo, mas fico feliz em compartilhar com quem quiser.
No próximo artigo planejo usar realmente o sistema, desculpe por não ser nesse, mas estou muito sem tempo.
Grato a todos.