Ceph ou Gluster para implementar grande NAS

1

Estamos planejando construir uma solução NAS que será usada principalmente via NFS e CIFS e cargas de trabalho variando de vários aplicativos de arquivamento a mais "processamento em tempo real". O NAS não será usado como um armazenamento em bloco para máquinas virtuais, portanto, o acesso sempre será orientado a arquivos.

Estamos considerando principalmente dois designs e gostaríamos de perguntar por quaisquer pensamentos, opiniões, insights e experiências.

Ambos os projetos utilizam “software de armazenamento distribuído em algum nível”. Ambos os designs seriam construídos a partir de servidores de commodity e deveriam ser dimensionados conforme crescêssemos. Ambos os projetos envolvem virtualização para instanciar "máquinas virtuais de acesso" que estarão servindo ao protocolo NFS e CIFS - portanto, nesse sentido, a camada de acesso é desacoplada da própria camada de dados.

O primeiro design é baseado em um sistema de arquivos distribuído como Gluster ou CephFS. Nós implantaríamos esse software nesses servidores comuns e montaríamos o sistema de arquivos resultante nas “máquinas virtuais de acesso” e eles estariam servindo o sistema de arquivos montado via NFS / CIFS.

O segundo design é baseado no armazenamento em bloco distribuído usando o CEPH. Portanto, construiríamos armazenamento em bloco distribuído nesses servidores de commodity e, por meio da virtualização (como o OpenStack Cinder), alocaríamos o armazenamento em bloco na VM de acesso. Dentro da VM de acesso, nós implantamos o ZFS, que agregaria o armazenamento em bloco em um único sistema de arquivos. E este sistema de arquivos seria servido via NFS / CIFS a partir da mesma VM.

Qualquer conselho e insights altamente apreciados. Também devo dizer que estamos internamente inclinados para a abordagem de "VM monstro" devido à arquitetura aparentemente mais simples (distribuição de dados na camada de bloco, e não na camada do sistema de arquivos).

Felicidades, Prema

    
por prema 12.11.2018 / 13:20

1 resposta

0

Primeiro design :

Gluster + (NFS OU GaneshaNFS) no cluster

Nenhuma VM de acesso. Neste caso, o Gluster possui uma arquitetura mais simples que o CephFS. Gluster tem algumas regras sobre adição de nós e capacidade. Está certo, apenas planeje isso desde o começo.

Segundo design :

Se o seu objetivo é ter VM de acesso único para fornecer NFS / CIFS, o Linux pode monte Ceph como dispositivo de bloco. Então você tem stack assim:

NFS/CIFS in Linux -- Ceph RBD

Se você precisar de HA para acessar a VM, adicione o cluster de alta disponibilidade:

NFS/CIFS in Linux HA cluster -- Ceph RBD

Ou, em vez de Ceph RBD, você pode usar o gateway Ceph iSCSI .

Coisas a considerar:

  1. ampliando
  2. proteção de dados: 2 ou 3 cópias, eliminação / exclusão
  3. para desempenho decente use discos SATA e SSD corporativos
  4. atualização on-line / off-line
  5. outras soluções: por exemplo. DRBD
por 13.11.2018 / 14:20