Sistemas de arquivos de rede
Suponho que seja sobre um cluster de computação que consiste em hardware de PC do consumidor - não há balanceamento de carga ou alta disponibilidade envolvida
Em termos gerais, o que você está procurando é um sistema de arquivos de rede.
Tecnicamente, um sistema de arquivos de rede consiste em um daemon no servidor que possui o disco rígido real, e software nas máquinas clientes que fornece algo como um "disco virtual" no cliente; O software faz parecer que há um disco rígido local, mas acessá-lo será redirecionado para o disco rígido no servidor.
Implementações
Existem muitas implementações de sistemas de arquivos de rede:
nfs
Uma implementação comum usada no Linux é nfs
É adequado para usos "gerais" na configuração padrão; Para o seu caso de uso, pode ser relevante que ele ofereça muitas opções para ajustá-lo para necessidades específicas, porque um cluster com uma determinada carga pode ter padrões de acesso de disco rígido muito incomuns.
Veja Como definir uma rede NFS? e Configurando o NFS HowTo .
sshfs
Uma alternativa para nfs
poderia ser sshfs
. Ele fornece um sistema de arquivos no cliente usando o% normalsshd
, que permite logins remotos por ssh
e operações de arquivo por scp
.
Comparado ao nfs
, pode ser mais lento em geral, mas por outro lado é muito mais fácil de gerenciar, e o lado do servidor sshd
, geralmente está disponível por padrão.
SMB / CIFS
Outra alternativa é o SMB, comumente usado com o Windows, implementado por samba
.
Sistemas de arquivos específicos do cluster
Como o sistema de arquivos de rede usado em um cluster pode ter uma grande influência no desempenho, o sistema de arquivos de rede é uma parte importante no design de clusters de alto desempenho. Para maximizar o desempenho de aplicações de cluster de classes específicas, existem vários sistemas de arquivos de cluster especializados. Eles também podem manipular dados em outras estruturas que não as árvores do sistema de arquivos ou fornecer serviços incomuns de bloqueio de arquivos.