Armazenamento expansível [fechado]

3

Estou desenvolvendo um serviço de aplicativo da web e estou procurando dimensionar nossos servidores internos.

Nosso servidor atual tem ~ 1TB de capacidade de armazenamento. Os usuários criam ~ 10GB de dados que são adicionados ao nosso banco de dados diariamente.

Como você pode ver em nossa taxa atual, só conseguiríamos sustentar esse crescimento de armazenamento por aproximadamente 100 dias. Não esperamos que a taxa de criação de dados diminua no futuro próximo. Devido à natureza da informação, não pretendemos utilizar armazenamento em nuvem comercial (aws, google, microsoft, softlayer, etc.)

Gostaríamos de construir uma infra-estrutura de servidor que possa ser expandida continuamente (além dos limites de 100 TB). Este seria um processo gradual, conforme necessário, e abrangeria vários racks de servidores de 4U.

Minha pergunta é: qual seria a maneira padrão de fazer isso sem complicar demais o nosso software? Eu olhei para o ZFS e o openNAS, mas parece haver limitações com o pooling e a expansão contínua do storage.

Qual é a melhor maneira de construir uma arquitetura de armazenamento homogênea que possa ser expandida continuamente para suportar nossas necessidades de armazenamento?

    
por Gordon 14.08.2017 / 19:44

1 resposta

2

Mesmo com minha experiência limitada, devo dizer que seu problema está abaixo do especificado. Por exemplo, você não fala sobre requisitos de carga, latência e largura de banda. Consulte esta página de perguntas e respostas para saber mais: Você pode me ajudar com minha capacidade planejamento?

Minha experiência é criar e gerenciar armazenamento de 140 TB (e de crescimento, 80 TB Básico + 60 backup) para o nosso laboratório. Nós o usamos como um armazenamento para dados de pesquisa (dados de imagem principalmente, alguns genômica; nenhum banco de dados). O sistema consiste em dois servidores em diferentes salas de servidores e foi projetado para ser expansível. Por favor, pegue o que eu escrevo com um grão de sal.

Nossos servidores executam o FreeBSD e o ZFS, caixas 4U com expansores SAS . Cada caixa é recheada com unidades de 4-5 TB. O backup é mais recente e possui unidades 12x5TB, configuradas como RAID6, também conhecidas como RAIDZ2.

A capacidade de expansão é alcançada por meio de duas rotas:

  1. Cada Z Pool (por exemplo, 12x5TB) pode ser expandido adicionando 12 HDDs extras em paralelo. Truque é que nós vamos ter que adicionar unidades para armazenamento em pedaços de 60TB, não podemos (AFAIK) adicionar 30TB e seis meses depois extra 30TB. Se você estiver interessado no ZFS, deverá ler a terminologia (muitos sites, incluindo e do FreeBSD da Oracle
  2. O uso do SAS nos permite adicionar facilmente caixa extra de 4U JBOD com até 45 unidades slots, ligando-se à placa HBA / RAID da caixa principal através de um único cabo.

Então, pelo que eu sei:

  • O ZFS, quando executado em hardware de nível de servidor, pode ser usado com sucesso com quase nenhuma supervisão para hospedar 100 TB de dados e backups automáticos fora do local
  • A expansão do armazenamento do ZFS pode ser feita facilmente ao usar expansores SAS, se os requisitos de largura de banda forem atendidos
  • A capacidade de expansão não é "suave" no sentido de que, se você configurar seu zpool em blocos de 20 TB, precisará adicionar unidades em blocos de 20 TB ou mais. Você não pode simplesmente comprar um disco rígido de 1 TB e ligá-lo se você executar algum tipo de RAID6 / 7. No caso do RAID10, você pode fazer isso porque "bloquear" é essencialmente 1 ou 2 unidades

Atualizar

As limitações atuais de largura de banda do sistema são as seguintes:

  1. Rede via Ethernet 1Gbps de cobre (campus inteiro) ou 10Gbps (dentro o rack)
  2. Matrizes
  3. RAID60 usando HDDs: n x 160MB / s (na configuração 4x é ~ 5Gbps)
  4. Protocolo SAS3 usando 4x12 = 48 Gbps (conecta o backplane para HBA usando cabos SAS3 4x)

Como você pode ver, atualmente estamos limitados por ethernet de 1 Gbps, se trabalharmos dentro do rack (armazenamento < - > servidor de análise), ficamos limitados pela capacidade do servidor de engolir fluxos de 5 Gbps. Nossos dados são principalmente arquivos grandes (5-500GB), então não tenho certeza sobre o IOPS. Para melhorar a largura de banda atualmente, precisamos instalar fibra ótica no prédio (nossas salas de laboratório e de servidor estão em andares diferentes), então ficamos limitados pela velocidade de nossos arrays RAID60. Em seguida, temos que adicionar faixas extras ou criar armazenamento baseado em SSD. Este sistema foi construído para funcionar em vez de HDD baseado em USB3, o que é melhor.

    
por 14.08.2017 / 20:21