Como um volume NFS pode ser montado “falso gravável”?

3

Temos uma situação em que um enorme conjunto de arquivos de modelo (várias dezenas de gigabytes) é exigido por vários softwares, de vários fornecedores. Os aplicativos desejam abrir esses arquivos de modelo da mesma maneira que abrem qualquer arquivo de projeto, ou seja, leitura / gravação.

  • É um fardo para a infraestrutura de rede fazer com que os usuários copiem o hive de modelo localmente para suas estações de trabalho Linux (somente RHEL6 e RHEL7)
  • O software não faz alterações nos arquivos de modelo
  • Se os arquivos estiverem protegidos contra gravação no servidor, o software emitirá um erro
  • Se o volume do NFS for montado somente para leitura e os arquivos receberem permissão de gravação, o software emitirá um erro
  • Se dermos permissões de gravação em arquivos em um volume NFS gravável, não podemos mais confiar que os arquivos de modelo sejam pristine

Sem comer esse fardo de infra-estrutura, estou procurando uma maneira de falsificar o software fazendo com que o volume do NFS pareça gravável, dando aos arquivos permissões de gravação, mas sem realmente confirmar as alterações .

Eu me lembro de ferramentas de "retrocesso de diário" como o Deepfreeze em volumes Windows NTFS. Existe um hack similar para montagens NFS? Ao fornecer essa pergunta, "unionfs" apareceu como uma correspondência para "nfs". Esse também é um método para permitir "falsas escritas" para CDs ao vivo. Estou indo nessa direção agora, mas espero que alguém já tenha feito isso.

Outra restrição é que os usuários geralmente precisam usar versões herdadas do software, de vários fornecedores; o que significa que uma correção de bugs dos fornecedores apenas ajudará a (s) versão (ões) mais recente (s).

    
por Rich 06.04.2018 / 19:26

5 respostas

0

Deduplicação da NetApp

De acordo com documentação da NetApp , a desduplicação é uma maneira silenciosa de realizar exatamente o que eu preciso. Haveria simplesmente uma "biblioteca" por usuário, e cada usuário teria acesso à sua "cópia" pessoal. O ONTAP cuidaria da contabilidade.

Uma cópia principal seria mantida fora de vista; e isso seria usado para fornecer uma nova cópia para cada usuário ou atualizar a cópia de um usuário.

    
por 17.04.2018 / 19:41
3

A melhor maneira é pedir ao fornecedor que corrija o software como os outros disseram.

Verifique também a licença. Alguns softwares não gostam de serem compartilhados em um servidor de arquivos (incluindo o compartilhamento de dados no servidor de arquivos). Se for esse o caso, você pode não ter permissão para executá-lo dessa maneira. Em seguida, basta duplicar todos os arquivos de modelo no disco local de cada usuário. Os discos são baratos, a menos que você esteja usando SSDs.

Se o software não for mais suportado e estiver dentro dos limites legais em seu país, você poderá hackear o software e alterar o modo aberto de leitura / gravação para o modo aberto somente leitura. Alguma desmontagem necessária.

Você pode criar um sistema de arquivos virtual de espaço de usuário personalizado como o vfs ou o fusível que falsifica o modo de leitura-gravação, o que pode exigir alguma programação.

    
por 06.04.2018 / 23:48
3

Você tentou overlayfs . Pode falsificar escreve e manter todas as alterações, se houver, localmente.

    
por 08.04.2018 / 23:59
1

Como é um netapp, você pode criar um clone (fino) do volume & compartilhe isso com os clientes. Pode ser legível, mas excluído todas as noites & recriado. Isso é um pouco diferente da restauração de um instantâneo como eu disse nos comentários, já que o FS original pode ser RO (ou simplesmente não ser compartilhado) para que você nunca se arrisque a alterar acidentalmente o conteúdo.

Caso contrário, como outros disseram, o zsync para armazenamento local pode valer a pena investigar.

    
por 09.04.2018 / 14:45
0

Cópia durante a noite

Embora essa seja a coisa que não queremos, nossa melhor solução pode ser criar algum tipo de "preencher meu disco" para copiar a cópia original para o cliente durante a noite. (Estamos falando de mais de 100 estações de trabalho com pelo menos atualizações semestrais dos fornecedores, além da necessidade de manter as versões legadas vivas.)

Eu estou tendendo para um script que é lançado pelo usuário; a solicitação colocada em uma fila e, em seguida, executa uma cópia acelerada dos dados necessários para a estação de trabalho durante a noite. Verificações de espaço em disco podem ser feitas no ponto de interação e, se houver espaço suficiente, um arquivo fictício criado para reservar o espaço necessário. Quando a cópia do arquivo estiver concluída, o usuário será enviado por e-mail.

(O usuário seria "forçosamente encorajado" a evitar fazer isso manualmente durante o dia, fazendo com que o formato do arquivo fonte seja algo esquisito, como um arquivo cpio de blocos compactados 7z.)

Eu estou dando aos outros a chance de responder, e olhando para outras sugestões, antes de "aceitar" a minha péssima solução.

    
por 07.04.2018 / 00:34

Tags