150 TB e crescendo, mas como crescer?

18

Atualmente, meu grupo tem dois servidores de armazenamento maiores, ambos executando o NAS Debian. O primeiro é um servidor all-in-one de 24 discos (SATA) com vários anos de uso. Nós temos dois RAIDs de hardware configurados com o LVM sobre eles. O segundo servidor tem 64 discos divididos em 4 compartimentos, cada um com um RAID 6 de hardware, conectado via SAS externo. Usamos o XFS com o LVM para criar um armazenamento utilizável de 100 TB. Tudo isso funciona muito bem, mas estamos superando esses sistemas. Tendo construído dois desses servidores e ainda crescendo, queremos construir algo que nos permita mais flexibilidade em termos de crescimento futuro, opções de backup, que se comportem melhor sob falhas de disco (verificando se o sistema de arquivos maior pode demorar um dia ou mais) e em um ambiente altamente concorrente (pense em um pequeno cluster de computador). Nós não temos suporte de administração do sistema, então nós mesmos administramos tudo isso (nós somos um laboratório de genômica).

Portanto, o que procuramos é uma solução de armazenamento de desempenho relativamente baixo e aceitável que permita crescimento futuro e configuração flexível (pense no ZFS com pools diferentes com características operacionais diferentes). Estamos provavelmente fora do reino de um único NAS. Nós temos pensado sobre uma combinação de ZFS (em openindiana, por exemplo) ou btrfs por servidor com glusterfs rodando em cima disso se nós mesmos fizermos isso. O que estamos pesando contra isso é simplesmente morder a bala e investir em soluções de armazenamento Isilon ou 3Par.

Todas as sugestões ou experiências são bem-vindas.

    
por seandavi 25.03.2012 / 14:47

3 respostas

16

Espero que isso ajude um pouco. Eu tentei não deixar isso se transformar em uma parede cheia de texto. :)

3Par / Isilon

Se você pode e vai dedicar uma quantidade fixa de horas-homem para alguém que assume o papel de administrador SAN e quer desfrutar de uma vida indolor com o sono noturno em vez de trabalho noturno, então é assim que eu vou.

A SAN permite que você faça todas as coisas em que um único "armazenamento" possa limitar você (isto é, conecte um array flash purestorage e um grande monstro sata 3par ao mesmo servidor), mas você também precisa pagar por isso e mantê-lo bem mantido o tempo todo se você quiser fazer uso da flexibilidade.

Alternativas

Amplidata

Prós: expansível, barato, projetado com um bom conceito e camadas dedicadas de cache de leitura / gravação. Isso pode realmente ser a melhor coisa para você.

RisingTideOS

Seu software de destino é usado em quase todos os armazenamentos do linux agora e permite um gerenciamento um pouco melhor do que o material simples do linux / gluster. (Na minha humilde opinião) A versão comercial pode valer a pena.

Gluster / btrfs

PRO: Escala e "Bricks" fornecem uma camada de abstração que é muito boa para o gerenciamento.

CON: O primeiro foi um PITA total para mim. Não era robusto e os fracassos podiam ser locais a um tijolo ou eliminar tudo. Agora, com o RedHat no controle, pode realmente se transformar em algo funcionando e eu até conheci pessoas que podem domar para que funcione por anos. E o segundo ainda é meio experimental. Normalmente, um FS precisa de 3-4 anos após ser "feito" até que seja comprovado e robusto. Se você se importa com os dados, por que você consideraria isso? Falando em experimental, o suporte comercial Ceph está quase acabando, mas você precisa manter a camada "RBD", o FS ainda não está bem testado o suficiente. Eu quero deixar claro que Ceph é muito mais atraente a longo prazo. :)

ZFS

Pro: Recursos que definitivamente colocam um prego no caixão de outras coisas. Esses recursos são bem projetados (pense em L2ARC) e a compactação / descompactação é divertida. Ter mais "clusters de armazenamento" significando ter também apenas pequenas falhas em vez de uma grande lança consolidada

Con: Manter muitas pequenas caixas de software em vez de um armazenamento real. Precisa integrá-los e gastar horas extras para ter uma configuração robusta.

    
por 25.03.2012 / 15:22
7

A rota do XFS + LVM é, de fato, uma das melhores opções para uma solução de armazenamento Linux em escala reduzida nos últimos anos. Estou encorajado a você já estar lá. Agora que você precisa crescer mais, você tem mais algumas opções disponíveis para você.

Como você sabe, os grandes fornecedores de hardware têm NAS-heads para armazenamento. Isso realmente lhe daria um único fornecedor com o qual trabalhar para que tudo acontecesse e funcionaria muito bem. São soluções fáceis para entrar (em comparação com DIY), e sua facilidade de manutenção é menor. Mas eles custam bastante. Por um lado, você terá mais recursos de engenharia para resolver seus principais problemas, em vez de problemas de infraestrutura; Por outro lado, se você é como a maioria dos departamentos universitários, eu sei que o poder do homem é muito barato em relação a pagar em dinheiro por coisas.

Indo pela rota DIY, você já tem uma boa apreciação das opções de bricolage disponíveis para você. O ZFS / BTRFS é o caminho de atualização óbvio do XFS + LVM para armazenamento dimensionado. Eu evitaria o BTRFS até que ele fosse declarado 'estável' no kernel principal do Linux, o que deve acontecer em breve, já que várias das principais distribuições gratuitas estão usando-o como o sistema de arquivos padrão. Para o ZFS, eu recomendaria usar uma base de BSD em vez de OpenIndiana simplesmente porque já existe há mais tempo e os problemas (mais) funcionaram.

O Gluster foi desenvolvido para o caso de uso que você descreve aqui. Ele pode fazer replicação, bem como apresentar um único servidor virtual com muito armazenamento anexado. Seus Volumes distribuídos soa exatamente o que você está procurando, já que eles espalham os arquivos em todos os servidores de armazenamento no volume declarado. Você pode continuar adicionando servidores de armazenamento distintos para continuar a expandir o volume visível. Espaço de nome único!

A pegadinha com o Gluster é que ele funciona melhor quando seus clientes podem usar o Gluster Client para acessar o sistema, em vez das opções CIFS ou NFS. Como você está executando um pequeno cluster cluster de computação, talvez seja possível utilizar o cliente GlusterFS.

Você está no caminho certo aqui.

    
por 25.03.2012 / 15:03
1

Tanto quanto eu entendo que você poderia usar uma solução SAN baseada no Linux SCST + FibreChannel ou infiniband, que é algo que estou construindo agora. Como base para os LUNs, você poderia usar o LVM sobre os RAIDs de hardware e cuidar dos snapshots / replicações (use o DRBD como exemplo) abaixo do nível do sistema de arquivos. Como um sistema de arquivos, não estou ciente de nenhuma boa solução para a concorrência, pois estou colocando o ESXi no topo dos nós, portanto, os datastores são gerenciados pelo FS simultâneo do ESX. Acho que o GFS2 pode funcionar com esse ambiente, mas não tenho 100% de certeza, pois você deve verificar seus requisitos exatos. De qualquer forma, uma vez que você tenha uma SAN robusta sob seus nós, é muito fácil fazer as coisas.

    
por 25.03.2012 / 17:44