Eu tenho um servidor de origem que contém cerca de 30 GB de arquivos que desejo copiar para outros 7 servidores. Atualmente, SCP os arquivos para os quatro primeiros servidores e, quando essa transferência estiver concluída, SCP para os últimos 3 servidores.
O uso do BitTorrent seria mais rápido para distribuir os arquivos para todos os 7 de uma vez? A conexão internamente já é rápida e consistente entre cada um dos servidores. Eu sei que provavelmente levaria um pouco de carga do servidor de origem, mas levaria apenas mais tempo para distribuir os arquivos?
O que é um bom cliente com script que eu poderia usar no shell? Eu gostaria que todos parassem de semear depois de 100%.
fonte
A vantagem do BitTorrent sobre outras ferramentas de distribuição de arquivos, diz o rsync , é que os clientes começam a oferecer seus dados para os outros clientes; portanto, se o servidor tiver uma conexão lenta com os clientes, a taxa de transferência será muito melhor.
O BT é um protocolo projetado para compartilhamento global. Então você terá que encontrar um meio de bloquear todos os outros clientes, exceto os 7 que deseja alimentar (ou seu torrent em breve terminará em The Pirate Bay).
Quanto à parada em 100%, todo cliente da BT fará o seguinte: Como nenhum cliente solicita mais os dados, não haverá mais propagação. O aplicativo ainda será executado, mas eles causarão apenas alguns dados entre os clientes e o rastreador, informando que eles ainda estão disponíveis.
Experimente o cliente BitTorrent original, escrito em Python. Isso permitirá que você faça as modificações desejadas. Infelizmente, não consigo encontrar um link ATM. Qualquer um?
[EDIT] Com base em um comentário saua : se você usa um rastreador particular, seus torrents não devem se espalhar inesperadamente. Dito isto, você só deve usar um cliente de torrent de uma fonte confiável. Caso contrário, você pode arriscar que algum cracker coloque um pouco de recurso extra no código que publica torrents particulares em algum lugar onde você não deseja que eles apareçam.
fonte
O BitTorrent é uma ótima idéia se você deseja replicar arquivos através de uma árvore de servidores sem, por exemplo, ter que emitir um comando remoto para todos os servidores copiarem do mesmo local; potencialmente causando um gargalo.
Os engenheiros do Twitter fizeram isso com grande sucesso com o Murder, que agora está no github.
http://engineering.twitter.com/2010/07/murder-fast-datacenter-code-deploys.html
fonte
Se todos os 8 servidores estiverem conectados à mesma seção da rede usando o Bit Torrent, é improvável que isso acelere as coisas. De fato, você teria tantas colisões que provavelmente seria muito lento. O BitTorrent só aceleraria as coisas se você estivesse usando uma rede totalmente comutada e os oito servidores pudessem se comunicar independentemente, sem afetar a comunicação entre os outros servidores.
fonte