Sincronização de diretório com descoberta automática de pares

10

Estou trabalhando com um cluster de servidores Linux atrás do recurso de dimensionamento automático de nuvem da Amazon ( documentação ). Existem arquivos que se acumulam em cada servidor, eles são arquivos de cache para o aplicativo. Estou procurando uma maneira automatizada de fazer com que os servidores sincronizem essa pasta entre si.

  • Rsync funcionaria se alguém tivesse uma maneira inteligente de fazer a detecção por pares.
  • O mesmo vale para Unison.
  • Também consideramos usar um SaaS como o Dropbox.
  • O Gluster parece um exagero e não sei ao certo como é fácil ter um novo computador ingressar automaticamente no cluster.

Idealmente, o que aconteceria é quando um novo servidor é iniciado, ele descobre seus pares e começa a sincronizar a pasta. A partir desse momento, o último carimbo de arquivo ganha a sincronização P2P.

Alguma coisa lá fora que faz isso?

Caleb
fonte
Este não faz a detecção por pares, mas pode ser interessante independentemente - mrsync.sourceforge.net .
Faheem Mitha

Respostas:

1

Você sabe o quão estranho pode parecer, mas o uso do rtorrent com o DHT ativado no intervalo ec2 privado pode funcionar

Isso daria a você

  • Descoberta automática de pares
  • Estados de arquivo verificados (yay para hashes)
  • Requisitos mínimos de configuração (adicione o ímã (ou ip virtual do último torrent) para o torrent no script de inicialização)
  • escalabilidade
Tacticus
fonte
1

O Rsync upstream fornece suporte para SLP (Service Location Protocol). Ele não está ativado nas fontes vanilla rsync, mas você pode encontrar o suporte ao SLP no taryn do rsync-patches na página inicial do rsync (slp.diff). Por exemplo, o pacote rsync do SUSE é criado com esse patch; Não conheço outras distribuições.

Não tenho certeza se é isso que você está procurando nem tenho experiência com o SLP.

Petr Uzel
fonte
0

Talvez esteja faltando alguma coisa aqui, mas há algum motivo para você não apenas configurar um diretório NFS simples e ter todas as máquinas montadas? Sempre que o aplicativo grava o novo arquivo de cache, ele deve substituir os antigos.

opsguy
fonte
1
Oi opsguy. O que está faltando é o que acontece quando a máquina com o NFS falha? Estamos tentando eliminar um único ponto de falha para o cache.
0

Tenho certeza de que existe alguma ferramenta de gerenciamento da Amazon, como Command Line Tools , que permite escrever um script de inicialização para fazer com que os nós se descubram, por meio de endereços IP públicos ou privados.

A propósito, rsync e Unison não são a ferramenta certa, se eles tiverem que distribuir alterações para armazenar em cache com muita frequência. Nesse caso, você deve considerar um sistema de arquivos realmente distribuído.

Marco Solieri
fonte
0

Talvez DRBD (dispositivo de bloco distribuído)?

MSpike
fonte
1
Obrigado pela sua resposta, mas falta substância. O DRBD não é tão conhecido que não requer pelo menos um link. Mas, na verdade, você deve fornecer mais informações: por que o DRBD é adequado? Como isso funcionaria? Especialmente considerando que Kevin achava que Gluster era um exagero: por que o DRBD não seria?
Gilles 'SO- stop be evil'
Acabei de perceber que você está procurando por descoberta automática de pares, portanto esta não é adequada para você. O DRBD é um dispositivo de bloco no seu hardware real ou na parte superior de algum volume e, em seguida, sincroniza-o pela rede.
precisa saber é o seguinte