Como posso utilizar espaço não utilizado em uma rede grande de maneira descentralizada, mas resiliente?

3

Eu administro uma grande rede do Windows e gostaria de usar o espaço não utilizado nas estações de trabalho. Existe uma maneira gratuita de fazer isso?

Digamos que temos:

  • 200 estações de trabalho Windows, cada uma com 500 GB de discos rígidos, o espaço consumido nas unidades é sempre inferior a 50 GB.
  • Os usuários dessa rede armazenam seus arquivos em servidores de arquivos dedicados, e nenhum dado do usuário é armazenado localmente nas estações de trabalho.
  • 200 x discos rígidos, cada um com 450 GB livres = 87,89 Terabytes de espaço em disco não utilizado distribuídos pela rede.

Eu estou procurando uma maneira de usar esse espaço em disco inativo de maneira confiável, escolhendo a integridade de dados primeiro em relação à velocidade de acesso.

Já ouvi falar de armazenamento distribuído na Internet usando redes semelhantes a P2P, em que os usuários optam por delegar uma certa porcentagem de seu espaço em disco à rede em troca de armazenar dados em outras unidades em todo o mundo, em um distrubuted moda em que os dados são duplicados para ainda fornecer acesso, se alguns clientes ficarem offline.

Obviamente, fazer isso anonimamente na Internet causa outros problemas em potencial, mas estou procurando fazer esse tipo de coisa em uma rede local em um ambiente controlado, não para o uso diário do usuário, mas para armazenamento em longo prazo. >

Quase como um sistema de arquivos distribuído, replicação de dados autogerenciada e criptografada para redundância quando as estações de trabalho ficam off-line.

Um serviço baseado no Windows provavelmente atenderia melhor minhas necessidades, funcionando silenciosamente em segundo plano, podendo ser configurado para uma prioridade baixa em termos de carga na estação de trabalho. Obviamente, o armazenamento de dados deve ser criptografado, talvez até mesmo de natureza P2P, para que outros clientes trabalhem juntos para transmitir dados para replicar?

Se alguém souber de software que pode conseguir isso, por favor me ilumine, se estiver livre, melhor ainda! Obrigado pelo seu tempo & ajuda.

    
por user281618 13.12.2013 / 19:44

1 resposta

2

Tahoe-LAFS . Está escrito em Python e é multiplataforma. Ainda não há instalador do Windows, mas funciona no Windows. Você precisa construí-lo (executando um comando c:\python27\python.exe c:\your_tahoe_unzip_path\tahoe build antes do primeiro uso), mas então você pode copiar os arquivos construídos em qualquer lugar.

No Windows, você quer que ele seja executado como um serviço. Eu usei nssm para esta tarefa.

Você precisa ter um nó introdutor em execução que possa ser acessado por cada máquina.

Você precisa configurar cada máquina que deseja participar na "grade" como um nó de armazenamento (usando o introducer.furl do nó introdutor). Aqui você especifica seus parâmetros de redundância, ou seja, quantas máquinas você quer que ele tente "dividir" os arquivos.

Você pode então ir para a interface da web em qualquer máquina que esteja executando o Tahoe e fazer o download / upload de arquivos para toda a grade. O Tahoe pode ser configurado para fazer o upload de forma redundante, portanto, se as máquinas ficarem inativas ou indisponíveis, ele pode tentar puxar de outras. Você precisa atualizar os arquivos periodicamente para ter certeza de que estão "ok na grade".

O Tahoe tem um modelo de segurança "capacidade" interno, em que a URL é a chave de acesso do arquivo e também determina os privilégios do que você pode fazer com o arquivo (ao carregar um arquivo, você pode fornecer um " readonly "URL, basicamente.) Você também pode desativar a interface web e usar o frontend" SSH "(usando o WinSCP para obter e armazenar arquivos).

É complicado e estranho, e leva algum tempo para entender alguns dos conceitos, mas funciona muito bem.

    
por 13.12.2013 / 20:01