FreeNAS com ZFS e TLER / ERC / CCTL

6

Atualmente, estou no processo de criar um novo servidor de armazenamento, para ser usado em máquinas virtuais, arquivos e backup. O SO é o FreeNAS, que usa o ZFS como software RAID.

Meu problema é que, eu preciso escolher discos rígidos e eu olhei para discos rígidos de empresas e consumidores, mas estou diante de uma questão não respondida, para a qual não consegui encontrar uma resposta clara.

Posso usar discos rígidos de consumidor, que não suportam TLER / ERC / CCTL, com o ZFS (software RAID), sem me envolver em problemas mais tarde ou preciso ir com discos rígidos corporativos que ofereçam suporte a TLER / ERC / CCTL? ?

Há muitas opiniões diferentes sobre isso e alguns dizem que você deve usá-lo e alguns dizem que você não deveria. Eu sei um par de sistema operacional que se baseia no software RAID, que tem seu próprio tempo de correção de erro e, portanto, não se importa se há TLER / ERC / CCTL. Estou ciente de que você precisa usar o TLER / ERC / CCTL ao lidar com o RAID de hardware.

Eu realmente espero que alguém possa esclarecer meu problema.

Obrigado.

    
por Indigo 12.03.2017 / 15:40

2 respostas

3

Can I use consumer hard drives, that do not support TLER / ERC / CCTL, with ZFS (software RAID), without getting in trouble later on or do i need to go with enterprise hard drives that supports TLER / ERC / CCTL?

Imagine que cada um de seus drives é uma caixa preta com determinados recursos, vida útil etc. Todos eles trabalham independentemente dentro de seu storage array. Portanto, você deve olhar para cada um deles independentemente para ver o que aconteceria em diferentes casos.

Exemplo

Para essa pergunta, digamos que você tenha um conjunto composto por duas unidades espelhadas A e B. As combinações possíveis são:

  1. A e B têm TLER
  2. A tem, B não
  3. A não tem, mas B faz
  4. A e B não tem

Se tudo funcionar bem em todos os discos, não há problema.

Um erro:

Se o disco A apresentar um erro ao tentar ler um bloco, é essa a situação para cada caso possível:

  1. O sistema solicita o disco para o bloco. O disco tenta encontrá-lo novamente e, após cerca de 7 a 9 segundos (seja qual for o tempo limite do TLER), o controlador solta o disco da matriz. O sistema percebe que um disco está ausente e faz o que você provisionou (acesse um alerta de e-mail, inicie o resilver de um hotspare, não faça nada e continue degradado, ...)
  2. O mesmo que 1.
  3. O sistema solicita o disco para o bloco. O disco tenta encontrá-lo de novo e de novo, até que seu tempo limite seja atingido ou até que o bloco seja encontrado. Esse tempo limite pode ser vários minutos e pode ser diferente para cada modelo e fabricante diferente. Se o bloco puder ser recuperado, ele será lido normalmente; se falhar, será retornada uma mensagem de erro para o próprio bloco.
  4. O mesmo que 3.

Dois erros (um em cada disco):

Este caso é muito raro, mas teoricamente possível. Os dois discos apresentam um erro exatamente no mesmo bloco:

  1. Os dois discos serão descartados e seu pool ficará indisponível.
  2. O mesmo que 3 de cima.
  3. O mesmo que 3 de cima.
  4. O mesmo que 3 de cima.

Desempenho vs confiabilidade

Como você viu acima, você tem que fazer uma escolha dependendo do seu objetivo e do layout do pool.

  • Use discos TLER se você sempre precisar de tempo de resposta mínimo e não puder aceitar o atraso de bloqueio longo. A desvantagem é que você deve provisionar discos adicionais (Z2 em vez de Z1, Z3 em vez de Z2, 3-espelhos em vez de 2-espelhos) ou hotspares para obter a mesma integridade média do pool no final. Além disso, você deve provisionar tempos de reconstrução potencialmente longos, o que pode afetar negativamente seu desempenho geral.
  • Use discos não-TLER se o orçamento ou o espaço for restrito e o atraso for aceitável se os discos forem preservados. Como o ZFS já o ajuda na autocorreção de blocos afetados, você não precisa do que o TLER foi originalmente previsto (o controlador deve descartar discos para que a autorrecuperação possa ser iniciada)
  • Defina o tempo limite do disco para um valor que seu aplicativo / arquitetura possa manipular confortavelmente. Desta forma, você pode ter discos corporativos sem deixar cair ou discos do consumidor com queda como você preferir. Nem todos os discos são modificáveis, portanto verifique primeiro on-line antes de comprar.
por 15.03.2017 / 13:32
1

Também vale a pena considerar os números publicados pelo Backblaze sobre disco corporativo e confiabilidade da unidade de consumo .

Embora eles usem uma implementação personalizada Reed-Solomon , seus números (e modelo de negócio) sugerem que os drives de consumo são definitivamente capazes de fornecer boa confiabilidade e, com um algoritmo adequado de detecção / recuperação de erros, podem fornecer uma boa proteção para seus dados. Certamente, toda a sua configuração parece ter se saído muito bem sem nenhum desses recursos corporativos.

Então, como @ user121391 diz (eu posso estar parafraseando um pouco), o ZFS em discos de consumidor deve estar bem, a menos que você tem necessidades específicas que exigiriam recursos corporativos.

    
por 22.03.2017 / 09:17