Criar o seu próprio NAS é algo que sempre me intrigou. Será mais barato do que um NAS comercial? É mais potente? O que é que se pode fazer com um SO de código aberto? Infelizmente, não tenho o orçamento, o tempo ou a utilidade para construir o meu próprio NAS. Outros já o fizeram e falam sobre ele com muito mais pormenor do que eu poderia escrever.
Para abordar um assunto que creio ter lugar no MyNAServer.com, decidi retomar um artigo existente de Michael Lynch, que é um programador americano. O artigo original em inglês é suficientemente pormenorizado para apresentar os componentes necessários e para entrar no processo de fabrico do próprio NAS. Como poderá verificar, o artigo está bem documentado e o autor explica o que poderia ter sido melhorado e as dificuldades encontradas.
Espero que goste tanto de ler sobre este projecto como eu gostei. Boa leitura!
Este ano decidi construir eu próprio o meu primeiro servidor NAS. É um sistema de 32 TB que armazena os meus dados pessoais e profissionais utilizando software de código aberto.
O servidor em si custou 531 $ e eu comprei quatro unidades por 732 $, o que perfaz um custo total de 1263 $. O preço deste sistema é semelhante ao dos servidores NAS disponíveis no mercado, mas oferece mais potência e opções de personalização.
Neste artigo vou explicar como escolhi as peças, os erros que cometi e as minhas recomendações para quem quer construir o seu próprio servidor.
Contexto
Porquê construir um servidor NAS doméstico?
NAS significa armazenamento ligado à rede. A principal tarefa de um servidor NAS é armazenar dados e disponibilizá-los a dispositivos na sua rede.
Então, porquê ter um servidor inteiramente dedicado aos dados? Afinal de contas, todos os computadores armazenam dados.
Considero útil duplicar o armazenamento de dados dos meus outros sistemas. Actualizo a minha estação de trabalho principal e o meu portátil de poucos em poucos anos, e migrar os meus dados de um computador para outro foi sempre uma dor de cabeça. Um servidor de armazenamento dedicado elimina a maior parte da migração de dados e facilita a partilha de ficheiros entre os meus sistemas.
Também tenho muitos dados. Sou um acumulador de dados, por isso guardo todas as fotografias digitais que tirei, todos os e-mails que enviei ou recebi nos últimos 20 anos e o código fonte de todos os meus projectos pessoais. O total é actualmente de 8,5 TB.
A maior fonte de dados é a minha colecção de DVD e Blu-Ray. Não gosto de depender dos serviços de streaming para manter os meus conteúdos favoritos disponíveis, por isso continuo a comprar cópias físicas de filmes e séries. Assim que recebo um novo disco, copio a imagem em bruto e faço um ficheiro de vídeo em streaming. Entre a cópia ISO em bruto e os ficheiros MP4 transferíveis, um único disco pode ocupar 60 GB de espaço em disco.
O que é um laboratório doméstico?
"Homelab" é um termo familiar que ganhou popularidade nos últimos anos.
Um laboratório doméstico é um local em sua casa onde pode fazer experiências com hardware ou software informático que normalmente se encontra num escritório ou centro de dados. Pode ser utilizado como um ambiente de formação para aprender novas competências profissionais ou simplesmente como um local para brincar com tecnologias interessantes.
Porquê construir o seu próprio SIN DIY?
Se é novo no mundo dos laboratórios domésticos ou não tem experiência na construção de PCs, não recomendo que construa o seu próprio NAS caseiro.
Existem soluções prontas a utilizar que oferecem funcionalidades semelhantes com uma curva de aprendizagem mais suave.
Antes de construir o meu servidor NAS doméstico, utilizei um Synology DS412+ de 4 unidades durante sete anos. Sinceramente, adorava o meu Synology. Foi uma das melhores compras que já fiz. Foi uma introdução suave ao mundo dos servidores NAS, e é por aí que recomendo que comece se não tiver a certeza de tudo o que é NAS.
Há alguns meses, o meu Synology não arrancou e começou a fazer um ruído de clique. Um arrepio percorreu-me a espinha quando me apercebi de como me tinha tornado dependente deste dispositivo. Os servidores Synology não podem ser reparados pelo utilizador, por isso, se uma peça se avariar após a garantia, é necessário substituir todo o servidor. E se fores estúpido como eu e utilizares um formato de armazenamento proprietário da Synology, não poderás aceder aos teus dados sem outro sistema Synology. (Edit: Um leitor mostrou-me entretanto que é possível recuperar um volume Synology Hybrid RAID de um sistema não-Synology).
Felizmente, o meu velho Synology voltou à vida depois de o ter limpo e reinstalado as unidades, mas isso foi um sinal de aviso prévio. Decidi mudar para o TrueNAS, uma vez que oferece uma implementação de código aberto de um formato de armazenamento aberto.
TrueNAS e ZFS
O TrueNAS (anteriormente conhecido como FreeNAS) é um dos líderes mundiais em sistemas operativos mais populares para servidores de armazenamento. É de código aberto e existe há quase 20 anos, o que o torna uma escolha fiável.
TrueNAS utiliza o ZFS, um sistema de ficheiros concebido especificamente para servidores de armazenamento. Os sistemas de ficheiros tradicionais, como o NTFS ou o ext4, são executados em cima de um volume de dados que gere os níveis inferiores de E/S do disco. O ZFS gerencia tudo na pilha, desde a lógica no nível do arquivo até a E/S do disco. O controlo completo do ZFS dá-lhe mais potência e desempenho do que outros sistemas de ficheiros.
Aqui estão algumas das características interessantes do ZFS:
- Agregação de vários discos físicos num único sistema de ficheiros
- Reparação automática de dados corrompidos
- Criar instantâneos pontuais de dados no disco (semelhante à funcionalidade Time Machine do OS X).
- Encriptação ou compressão opcional de dados no disco.
Antes de construir este sistema, não tinha qualquer experiência com o ZFS, por isso estava ansioso por o experimentar.
Planeamento do armazenamento
Estimativa das minhas necessidades de capacidade de armazenamento
Quando comprei o meu Synology NAS, instalei inicialmente três unidades de 4 TB e deixei a quarta ranhura vazia. Isto deu-me um total de 7 TB de espaço utilizável com o Synology Hybrid Raid. Três anos mais tarde, estava a ficar sem espaço, pelo que adicionei uma quarta unidade, aumentando o meu espaço total utilizável para 10 TB.
Decidi aplicar a mesma estratégia ao meu novo edifício. Queria um sistema que satisfizesse as minhas necessidades actuais e pudesse crescer. O meu objectivo aproximado era começar com 20 TB de armazenamento utilizável e mais 30 TB se acrescentasse mais unidades mais tarde.
O ZFS não permite adicionar um novo disco a um pool existente, mas esse recurso é em desenvolvimento. Espero que, quando precisar de expandir o meu armazenamento, esta funcionalidade esteja disponível no TrueNAS.
Muitos discos pequenos ou poucos discos grandes?
O ZFS foi projetado para sobreviver a falhas de disco, portanto, armazena cada bloco de dados de forma redundante. Esse recurso complica o planejamento de capacidade, pois o armazenamento utilizável total não é apenas a soma da capacidade de cada disco.
O ZFS cria sistemas de arquivos a partir de "pools" de discos. Quanto mais discos no pool, mais eficientemente o ZFS pode usar sua capacidade de armazenamento. Por exemplo, se você der ao ZFS dois discos de 10 TB, só poderá usar metade da capacidade total do disco. Se, em vez disso, usar cinco unidades de 4 TB, o ZFS fornecerá 14 TB de armazenamento utilizável. Mesmo que o espaço total em disco seja o mesmo em ambos os cenários, os cinco discos menores fornecem 40 % a mais de espaço utilizável.
Ao construir um servidor NAS doméstico, é necessário decidir se deve utilizar uma quantidade menor de discos grandes ou uma quantidade maior de discos pequenos. Os discos mais pequenos são geralmente mais baratos em termos de $/TB, mas o seu funcionamento é mais dispendioso. Dois discos de 4TB requerem o dobro da eletricidade que um único disco de 8TB.
Eu queria minimizar a pegada física do meu servidor, por isso optei por discos rígidos para NAS maiores e menos numerosos.
RAID-Z1, Z2 ou Z3?
O ZFS oferece diferentes opções de redundância: raid-z1, raid-z2 e raid-z3. A principal diferença é a robustez. O raid-z1 pode sobreviver a uma falha de disco sem perder dados. O raid-z2 pode sobreviver a duas falhas de disco simultâneas e o raid-z3 pode sobreviver a três.
O que se ganha em robustez, paga-se em armazenamento utilizável. Com cinco discos rígidos de 4TB, esta é a quantidade de armazenamento utilizável que obteria de cada modo ZFS:
tipo ZFS | Armazenamento útil | % de capacidade total |
---|---|---|
raid-z1 | 15,4 TB | 77.2% |
raid-z2 | 11,4 TB | 57.2% |
raid-z3 | 7,7 TB | 38.6% |
Escolhi o raid-z1. Com apenas alguns discos, a probabilidade de dois discos falharem simultaneamente é bastante baixa.
Tenha em mente que o ZFS não é uma estratégia de backup. O ZFS pode protegê-lo contra falhas de disco, mas há muitas ameaças aos seus dados que o ZFS não pode mitigar, como exclusão acidental, malware ou roubo físico. Eu uso réstico para replicar tudo o que é importante para cópias de segurança encriptadas na nuvem.
A beleza do ZFS é que eu não preciso recorrer aos meus backups na nuvem se um disco morrer, mas eu sempre posso recuperá-los se dois discos falharem. Não seria moleza, mas não vale a pena abrir mão de 20 % do armazenamento utilizável do meu servidor para o raid 2.
Quantos mais discos físicos tiver, mais cuidados tem de ter em caso de falha de um disco. Se eu tivesse um conjunto de 20 discos, provavelmente usaria raid 2 ou raid 3.
Prevenção de falhas de disco simultâneas
De forma ingénua, a probabilidade de dois discos falharem ao mesmo tempo parece extremamente baixa. De acordo com o Estatísticas da BackblazePor exemplo, os discos de alta qualidade falham a uma taxa de 0,5 a 4 % por ano. Um risco de 4 % por ano corresponde a uma probabilidade de 0,08 % numa determinada semana. Duas falhas simultâneas ocorreriam uma vez a cada 30.000 anos, pelo que tudo deveria estar bem, certo?
O problema é que as unidades não são estatisticamente independentes. Se uma unidade falhar, a sua vizinha tem uma probabilidade significativamente maior de morrer. Isto é especialmente verdadeiro se as unidades forem do mesmo modelo, vierem do mesmo lote e tiverem lidado com as mesmas cargas de trabalho.
Além disso, a reconstrução de um pool ZFS coloca uma pressão incomum em todos os discos sobreviventes. Um disco que teria durado mais alguns meses sob uso normal pode morrer sob a carga adicional de uma reconstrução de pool.
Tendo em conta estes riscos, fiz o que pude para reduzir o risco de falhas simultâneas nos discos. Escolhi dois modelos diferentes de discos de dois fabricantes diferentes. Para reduzir as hipóteses de obter discos do mesmo lote, comprei-os a fornecedores diferentes. Não posso dizer até que ponto isto é importante, mas não aumentou significativamente os custos, por isso, porque não?
Como escolhi as peças para o meu SIN
Placa-mãe
A primeira decisão foi o tamanho da placa-mãe. Sempre gostei da forma compacta da minha Synology DS412+. Nunca tinha construído um computador com uma placa-mãe mini-ITX e esta pareceu-me uma boa oportunidade.
Escolhi o ASUS Prime A320I-K por algumas razões:
- Tem quatro portas SATA, pelo que posso ligar quatro unidades directamente à placa-mãe.
- Suporta gráficos Radeon, pelo que não terei de comprar uma placa gráfica separada.
- O preço é acessível, apenas 98 $.
Também analisei o B450, que era muito semelhante, mas quase duas vezes mais caro. A principal vantagem parecia ser um melhor suporte de overclocking, de que não precisava.
Processador
Pelo que eu tinha lido, o ZFS não consome muita CPU. Fiz um teste básico instalando o TrueNAS num mini PC Dell OptiPlex 7040 barato. O processador quase não foi usado, por isso pareceu-me seguro optar por uma opção de baixo consumo de energia.
O meu principal critério para escolher um processador foi o suporte para gráficos Radeon, de modo a poder utilizar a saída HDMI integrada na motherboard A320.
Eu escolhi o AMD Athlon 3000G. Por apenas 105 $, é um bom preço, suporta gráficos Radeon e tem benchmarks de CPU decentes.
Caixa NAS
Quando construí o meu último servidor VM, utilizei uma caixa da Fractal Design. É a minha caixa de computador favorita, por isso voltei à Fractal Design para esta construção.
Escolhi o Fractal Design Node 304 pretouma caixa mini-ITX compacta. Gostei do design, uma vez que se assemelha mais a um cubo do que a uma torre. Tem seis compartimentos para unidades, o que me permite começar com unidades suficientes e ainda ter espaço para aumentar no futuro.
Disco (dados)
Com seis compartimentos de disco disponíveis na caixa, decidi começar com quatro discos de 8 TB, o que se traduz em 22,5 TB de armazenamento utilizável em raid-z1. Se eu precisar expandir no futuro, um quinto disco me levará a 30,9 TB, e um sexto me dará 37 TB.
Na gama de 8TB, não existem muitas unidades abaixo das 7200rpm, mas pode ir até às 10000rpm. Para o meu NAS, velocidades superiores a 7200 rpm não fariam qualquer diferença, uma vez que o estrangulamento é a rede. Uma unidade de 10.000 rpm seria mais ruidosa e consumiria mais energia, mas não ofereceria qualquer ganho de desempenho. (Nota do editor: Todos os As unidades de disco rígido NAS estão listadas aqui)
A certa altura, considerei a hipótese de utilizar 400 unidades $ devido à sua taxa de falha de 0,5 %, mas apercebi-me de que era irracional gastar o dobro para reduzir a taxa de falha em apenas alguns por cento.
A última armadilha a evitar é Tecnologia SMR (gravação magnética com revestimento). O ZFS não funciona bem em discos SMR, portanto, se estiver a construir um NAS, evite discos SMR conhecidos. Se o disco estiver identificado como CMR, trata-se de uma gravação magnética convencional, que é adequada para o ZFS.
Escolhi o Toshiba N300 e o Seagate IronWolf. Vi críticas positivas de ambos nos fóruns TrueNAS e reddit. Ambos os modelos têm um preço entre 210 e 230 dólares, o que é um bom valor para o espaço de armazenamento.
Disco (SO)
O TrueNAS precisa de um disco dedicado para o sistema operativo, mas, pelo que li, não precisa de muito. O sistema operativo precisa de pelo menos 2 GB de espaço, mas o TrueNAS raramente lê ou escreve no disco operativo.
Escolhi o Kingston A400 porque era incrivelmente barato - 32 $ por uma unidade M.2 de 120GB. Eu adoro Discos M.2 NVMe ! Não requerem qualquer cablagem. Deslizam para a placa-mãe, não ocupam praticamente nenhum espaço e nunca mais tem de lhes tocar.
Memória
Na minha pesquisa, encontrei frequentemente referências à "regra" de que o ZFS requer 1GB de RAM para cada TB de espaço em disco no sistema. De acordo com o desenvolvedor do ZFS, Richard Yao, essa regra é um mito. Alguns recursos do ZFS, como a deduplicação de dados, consomem muita RAM, mas o ZFS funciona muito bem com memória limitada.
Considero a memória extremamente aborrecida para comprar. Gostava de ter um processo mais rigoroso para escolher a memória RAM, mas não consegui encontrar nenhum benchmark ou relatório de utilizador fiável para a memória RAM. O meu processo foi o seguinte:
- Veja a lista de barras de RAM compatíveis com a placa-mãe ASUS A320I-K.
- Filtre as opções de 32 GB ou 64 GB que utilizam apenas duas barras.
- Filtrar as marcas em que confio (Corsair, Crucial, G.SKILL, Kingston, Samsung, Patriot, Mushkin, HyperX)
- Filtro para opções abaixo de 150 $
Este processo levou-me ao CORSAIR Vengeance LPX 32GB CMK32GX4M2A2400C14 (2 x 16 GB) para 128 $.
Unidade de alimentação eléctrica (PSU)
Em termos de capacidade eléctrica, qualquer fonte de alimentação do consumidor teria sido suficiente. De acordo com PCPartPickerO meu sistema só precisa de 218W. Teria optado por uma fonte de alimentação na gama dos 300-400 W, mas não havia opções semi-modulares com menor potência. Por isso, optei pela EVGA 110-BQ-0500-K1 de 500 W.
Cabos SATA de 90 graus
Um item que nunca tinha comprado antes era um cabo SATA de 90 graus. Só me apercebi que precisava de um quando vi que não havia espaço suficiente entre a minha placa-mãe e a fonte de alimentação para ligar um cabo SATA normal. Estes cabos finos de 90 graus resolveram o problema.
O que é que falta?
Há alguns componentes que excluí intencionalmente da minha construção por razões de preço, complexidade ou espaço físico.
Placa gráfica (GPU)
Com espaço físico e portas limitados na placa-mãe, não queria uma placa gráfica dedicada. Escolhi uma combinação de placa-mãe e processador que suporta a renderização de gráficos sem uma placa externa.
Controlador de anfitrião de barramento (HBA)
Muitas construções NAS incluem um controlador de barramento anfitrião (HBA). Um HBA é um chip que se encaixa na ranhura PCI de uma placa-mãe e aumenta o número de unidades que a placa-mãe pode suportar.
O ZFS exige que o firmware do HBA seja atualizado novamente, em um processo que parece bastante tedioso e confuso. Decidi abandonar o HBA até precisar de mais armazenamento. O ASUS A320I-K tem quatro portas SATA, o que é suficiente para as minhas necessidades iniciais. Certifiquei-me de deixar uma ranhura PCI vazia para um futuro HBA.
RAM ECC
Enquanto pesquisava as várias versões do TrueNAS, vi vários artigos que referiam que a RAM ECC (RAM com código de correcção de erros) é essencial para evitar a corrupção de dados. No final, decidi não usar a RAM ECC e usar apenas a RAM padrão do consumidor.
É óbvio que não quero que o meu servidor corrompa os meus dados na RAM, mas há 30 anos que utilizo computadores sem RAM ECC e nunca notei qualquer corrupção de dados. Se eu estivesse a construir um servidor para uma carga pesada de múltiplos utilizadores durante todo o dia, optaria por uma construção com RAM ECC. Para uso doméstico, acho que uma RAM simples de nível de consumidor deve ser suficiente.
Disco SLOG
Muitas compilações ZFS incluem um SSD separado e dedicado chamado SLOG (registo de intenções separado).
A ideia é que escrever num SSD é muito mais rápido do que gravar em várias unidades giratórias. Quando um aplicativo grava dados, o ZFS pode gravá-los rapidamente no SSD, informar ao aplicativo que a gravação foi bem-sucedida e, em seguida, mover assincronamente os dados do SSD para o pool de armazenamento. O SLOG melhora significativamente as velocidades de gravação.
Optei por não integrar uma unidade SLOG, uma vez que estou limitado por portas e compartimentos de unidades. Adicionar uma unidade SLOG significava abdicar da minha única ranhura PCI ou de um dos meus seis compartimentos de unidades. Prefiro deixar espaço para aumentar a capacidade mais tarde.
Lista de peças
Categoria | Componente | Prémios |
---|---|---|
CPU | AMD Athlon 3000G | $105.13 |
Placa-mãe | ASUS Prime A320I-K | $97.99 |
Placa gráfica | Não é necessário - a placa-mãe suporta gráficos | $0 |
Disco (SO) | Kingston A400 120GB | $31.90 |
Memória | CORSAIR Vengeance LPX 32GB CMK32GX4M2A2400C14 (2 x 16GB) | $127.99 |
Alimentação eléctrica | EVGA 110-BQ-0500-K1 500W 80+ Bronze Semi-Modular | $44.99 |
Habitação | Fractal Design Node 304 Preto | $99.99 |
Cabos SATA | Cabos SATA Silverstone Tek Ultra Thin Lateral 90 Degree (x2) | $22.30 |
Total (sem discos) | $530.29 | |
Discos (armazenamento) | Toshiba N300 HDWG480XZSTA 8TB 7200 RPM (x2) | $372.79 |
Discos (armazenamento) | Disco rígido para NAS Seagate IronWolf 8TB 7200 RPM (x2) | $359.98 |
Total | $1,263.06 |
* Aviso: Esta placa-mãe pode não funcionar com o processador AMD Athlon 3000G. Veja os detalhes abaixo.
Comparação com produtos disponíveis no mercado
Para efeitos de comparação, eis algumas soluções disponíveis no mercado a preços semelhantes.
Produto | 2022 NAS DIY | Synology DS920+ | QNAP TS-473A-8G-US |
---|---|---|---|
Número de compartimentos | 6 | 4 | 4 |
RAM | 32 GB | 4 GB | 4 GB |
RAM máxima | 32 GB | 8 GB | 8 GB |
Referência da CPU | 4479 | 3002 | 4588 |
Prémios | $530.29 | $549.99 | $549 |
O custo total da minha construção é semelhante ao das soluções comerciais, mas obtenho mais pelo meu dinheiro. Tenho 8x mais RAM e não estou preso a um sistema operativo fechado e específico do fabricante.
Fotografias da construção
Construir o servidor com o TinyPilot
Os leitores de longa data deste blogue devem lembrar-se que Utilizei o Raspberry Pi para criar uma ferramenta específica para a construção e gestão de servidores. Chama-se TinyPilot. Este foi o terceiro servidor que construí com o TinyPilot e o primeiro que construí com o novo TinyPilot Voyager 2.
Obviamente que sou parcial, mas construir este servidor com a Voyager 2 foi muito divertido! Nunca precisei de ligar um teclado ou monitor ao servidor. Consegui ver a saída de vídeo, arrancar a BIOS e montar a imagem de instalação do TrueNAS a partir do meu navegador Web.
A única falha que encontrei foi a actualização da BIOS. O TinyPilot consegue montar imagens de disco como ficheiros .img e .iso, mas ainda não sabe como partilhar ficheiros raw com o computador de destino. Quando precisei de carregar o ficheiro .CAP para a actualização da BIOS da ASUS, vergonhosamente coloquei os ficheiros numa pen USB em vez de manter uma compilação pura do TinyPilot. Espero adicionar suporte para esse cenário em breve, para que o TinyPilot possa lidar com minha próxima atualização do BIOS.
Esta versão da BIOS é incompatível? Ou sou um idiota?
Quando instalei todos os componentes, o sistema ligou-se, mas não havia ecrã de vídeo.
Oh, não! Terei percebido mal os requisitos da placa-mãe para o vídeo on-board? Fiz todos os diagnósticos habituais: reiniciei a RAM, reiniciei o CPU e verifiquei todos os cabos - o resultado foi o mesmo.
Depois de algumas pesquisas em pânico no Google, vi menções de que o ASUS Prime A320I-K requer uma actualização da BIOS antes de funcionar com o Athlon 3000G. Lembro-me de ter visto este aviso quando estava a seleccionar as peças e de o ter ignorado. "Já fiz actualizações da BIOS", pensei. "Isto não é um problema!"
Não pensei em como iria actualizar a minha BIOS sem um CPU.
Felizmente, o CPU Ryzen 7 no meu servidor VM homelab de 2017 era compatível com o ASUS Prime A320. Pedi emprestada a PSU e a placa gráfica deste servidor e consegui que o meu servidor NAS arrancasse!
Estranhamente, mesmo depois de arrancar com sucesso o sistema com as peças emprestadas, a motherboard informou que estava a correr a BIOS versão 2203, que a ASUS diz ser compatível com o CPU AMD Athlon 3000G. Mas eu atualizei para a BIOS mais recente, que é a 5862.
Depois de actualizar para 5862, continuei a não conseguir arrancar. Apercebi-me então que estava a ligar o meu cabo HDMI à saída DisplayPort do servidor.
Era mesmo necessário pedir emprestadas todas estas peças? Há duas possibilidades:
- Que disparate, só reparei que o meu cabo HDMI estava ligado à saída DisplayPort da placa-mãe depois de ter actualizado a BIOS.
- A ASUS é estúpida e listou incorrectamente o Athlon 3000G como sendo compatível com a versão 2203 da BIOS, quando não o é.
Normalmente, eu aceitaria a culpa, mas a BIOS da ASUS era tão defeituosa que o problema poderia estar do lado da ASUS. De qualquer forma, fiquei aliviado por finalmente conseguir arrancar o NAS sem qualquer peça emprestada.
Bancos de ensaio de desempenho
Uma das surpresas que tive ao escrever este artigo foi o facto de não ter encontrado quaisquer boas ferramentas de avaliação comparativa para medir o desempenho do NAS. Existem ferramentas que funcionam no próprio servidor NAS para avaliar as E/S do disco local, mas isso não reflecte a utilização real. A maior parte da minha utilização é efectuada através da rede, pelo que uma avaliação comparativa do desempenho do disco local irá ignorar completamente os estrangulamentos na pilha de rede.
Por isso, criei o meu próprio teste de referência rudimentar. Gerei dois conjuntos de dados de ficheiros aleatórios, depois usei robocópia para medir as velocidades de leitura e escrita entre o meu computador principal e o meu NAS DIY. Este não foi de forma alguma um teste rigoroso - não o fiz numa rede isolada e não encerrei todos os outros processos no meu ambiente de trabalho durante o teste. Efectuei os mesmos testes com o meu antigo Synology DS412+ para comparação.
O primeiro conjunto de ficheiros era composto por 20 GB de ficheiros de 1 GB e o outro conjunto por 3 GB de ficheiros de 1 MB. Fiz a média de três testes em volumes encriptados e não encriptados.
O desempenho atingiu um pico de 111 MB/s (931 Mb/s), o que é suspeitamente próximo de 1 Gb/s. Isto sugere que o factor limitante é o meu hardware de rede, uma vez que o meu interruptorO meu computador de secretária e os servidores NAS têm todos portas Ethernet de 1 Gb/s.
Desempenho da leitura
Para volumes não encriptados, fiquei surpreendido ao ver que o meu Synology enferrujado, com 7 anos de idade, superou o meu novo e brilhante TrueNAS. O Synology foi 31 % mais rápido na leitura de ficheiros pequenos e 10 % mais rápido em ficheiros grandes.
A hegemonia da Synology foi de curta duração, uma vez que se desmoronou completamente com a encriptação. As velocidades de leitura da Synology caíram de 67-75 % em volumes encriptados, enquanto a encriptação não teve qualquer efeito no TrueNAS. Isto permitiu que o TrueNAS superasse o Synology em 2,3x para ficheiros pequenos e 3x para ficheiros grandes num volume encriptado. Mantenho a maior parte dos meus dados em volumes encriptados, pelo que este teste representa de forma mais precisa a minha utilização típica.
Desempenho da escrita
Embora o meu antigo Synology tenha conseguido superar o TrueNAS nas leituras, não foi o caso nas gravações. Mesmo num volume não encriptado, o TrueNAS foi 77 % mais rápido em ficheiros pequenos, e ambos os sistemas tiveram um desempenho semelhante em ficheiros de 1 GB.
Mais uma vez, a introdução da encriptação na equação elimina o desempenho de escrita do Synology. Com a encriptação activada, o TrueNAS foi 5,2x mais rápido em ficheiros pequenos e 3,2x mais rápido em ficheiros grandes.
Consumo de energia
Utilizei um controlador para medir o consumo de energia no meu antigo Synology e no novo servidor TrueNAS:
Synology DS412+ | 2022 NAS | |
---|---|---|
Em espera | 38 W | 60 W |
No trabalho | 43 W | 67 W |
O novo servidor consome mais 60 % do que o meu antigo Synology, o que é um pouco surpreendente. Estou a pagar cerca de 0,17 $/kWh, pelo que o servidor custa cerca de 7,20 $/mês para funcionar.
Não sei muito sobre os factores que levam ao consumo de energia, mas uma possibilidade é a PSU. Provavelmente, a Synology tem uma PSU perfeitamente dimensionada para os seus outros componentes, enquanto a minha PSU de 500W é provavelmente ineficiente para alimentar um sistema que apenas necessita de 15 % da sua capacidade.
Considerações finais
Placa-mãe
A minha maior queixa em relação ao ASUS Prime A320I-K é a sua compatibilidade limitada, mas posso estar enganado.
Para além disso, não fiquei entusiasmado com a BIOS. O seu utilitário de actualização estava inoperacional. Supostamente, deveria ser capaz de descarregar e instalar as versões mais recentes da BIOS, mas quando tentei actualizá-la, disse-me que tinha a BIOS mais recente, mas não tinha. Tive de actualizar manualmente, descarregando os ficheiros e carregando-os para uma pen USB.
Também me esqueci que o A320I-K suporta um máximo de 32 GB de RAM. Não sei se alguma vez vou precisar de expandir a memória, mas teria sido bom ter um pouco mais de margem de manobra.
Correcção do controlador de rede Realtek
Eu notei que o adaptador Ethernet na placa-mãe às vezes desligava quando meu sistema estava sob carga pesada de rede. Aparentemente, o driver do FreeBSD para a placa de rede Realtek do A320I-K tem problemas de estabilidade, mas é possível carregar o driver oficial com a seguinte solução:
- No painel de controlo Web do TrueNAS, aceda a Sistema > Ajustáveis.
- Acrescentar os dois parâmetros seguintes:
Variável | Valor | Tipo |
---|---|---|
if_re_load |
SIM |
carregadora |
if_re_name |
/boot/modules/if_re.ko |
carregadora |
Habitação
Fiquei desiludido com o Fractal Design Node 304. Quando construí o meu servidor VM com a Fractal Design Meshify C, a caixa sempre me encantou com características que nunca tinha visto noutras caixas. Nesta construção, foi o oposto. Fiquei pensando: "Por que isso é um problema nesse caso, se nunca foi um problema para mim antes?
É bonita por fora, mas achei difícil trabalhar com ela. Não havia praticamente nenhuma documentação e alguns dos mecanismos da caixa não eram óbvios.
Esta é a minha primeira caixa mini-ITX, e sei que os designers de caixas têm de fazer sacrifícios para minimizar o tamanho, por isso talvez a esteja a julgar com demasiada severidade.
CPU
Estou feliz com o Athlon 3000G, mas ele provou ser massivamente superpoderoso para minhas necessidades. Meu painel TrueNAS mostra que a carga da CPU foi de 99 % de inatividade no último mês de uso :
O mais importante do CPU é o facto de suportar a tecnologia de vídeo Radeon da AMD, o que me poupou a necessidade de um GPU. Por 105 $, foi um óptimo negócio.
Disco (dados)
Ainda é um pouco cedo para avaliar os discos, por isso voltem daqui a cinco anos e vejam se gosto deles. Para já, está tudo bem.
O meu maior receio era que as unidades fizessem demasiado barulho, mas nunca as ouvi. A única altura em que os ouvi foi quando estava a efectuar testes de desempenho. Curiosamente, não faziam mais barulho durante as leituras ou gravações, mas sim quando apagava ficheiros entre os testes.
Unidade de alimentação eléctrica (PSU)
Depois de ver o sistema a funcionar a 60W, pergunto-me se deveria ter feito um esforço maior para escolher uma fonte de alimentação de menor capacidade. 500W é mais do que o dobro da capacidade de que necessito, por isso talvez pudesse ter reduzido o consumo de energia em standby do meu servidor com uma PSU na gama dos 300-400W.
Disco (SO)
O Kingston A400 funciona bem. O TrueNAS coloca uma carga tão mínima na unidade do SO que esta não tem muito que fazer. Tem 90 GB livres, pelo que poderia ter utilizado uma unidade ainda mais pequena.
Não existe praticamente nenhuma actividade de disco nos relatórios do TrueNAS. Há uma pequena leitura de E/S todas as semanas como parte de uma tarefa agendada por defeito para verificação de erros, mas é só isso.
TrueNAS
Eu uso o TrueNAS Core 13, que é a versão mais madura do FreeBSD. A outra opção é o TrueNAS Scaleque é baseado no Debian, que tem maior compatibilidade de hardware e software.
Ao chegar ao TrueNAS, sabia que a interface Web do meu Synology seria difícil de superar. É a interface mais elegante e intuitiva que alguma vez vi num dispositivo de rede. Fizeram um excelente trabalho ao criar uma interface de utilizador simples que poupa o utilizador final aos detalhes técnicos do sistema de ficheiros subjacente: A versão DSM 7 do sistema operativo da Synology é ainda mais avançado).
O TrueNAS tem o seu charme de hacker, mas considero-o uma enorme desvantagem em termos de usabilidade em comparação com o Synology. A interface parece ter sido concebida por alguém que despreza tudo o que não seja a linha de comandos.
No TrueNAS, foram necessárias várias tentativas para criar um novo volume e partilhá-lo na minha rede. É necessário saltar entre vários menus desconexos e não existe qualquer orientação sobre a acção que deve ser tomada a seguir. Com o Synology, a interface do utilizador flui suavemente e orienta-o através de todas as definições necessárias.
Considero as aplicações de terceiros muito mais difíceis de instalar no TrueNAS. Eu uso Servidor multimédia Plex para transmitir a minha colecção de filmes e televisão, e o Plex é um plugin pré-configurado no TrueNAS. Deveria ser uma das aplicações mais fáceis de instalar, mas demorei uma hora a mexer e a pesquisar na documentação. Em comparação, a instalação do Plex no Synology demora cerca de dois minutos a clicar num assistente.
Mantenho o TrueNAS porque me preocupo mais com a segurança da plataforma do que com qualquer outra coisa e gosto de apoiar o software livre. Mas poderia ter escolhido outro sistema operativo gratuito adequado para NAS. Se eu tivesse de recomendar um NAS a um amigo que não é tão ideológico, sugeriria o Synology.
ZFS
O ZFS é fixe, mas não encontrei necessidade para a maioria das funcionalidades que oferece para além do RAID.
Vejo pessoas a falar de instantâneos, mas ainda não encontrei qualquer utilização para eles. Já tenho snapshots na minha solução de backup restic. Não são particularmente convenientes, mas utilizo o restic há dois anos e só me lembro de ter precisado de recuperar dados de um instantâneo uma vez.
Uma funcionalidade interessante são os instantâneos encriptados. É possível tirar instantâneos de um volume de dados sem ter de os desencriptar. Tenho dados que quero manter encriptados, mas não preciso de lhes aceder com muita frequência, pelo que seria útil poder fazer cópias de segurança regularmente sem os desencriptar.
Em geral
No geral, estou a gostar do meu novo NAS e aprendi muito com esta construção. Se esta tivesse sido a minha primeira experiência com um NAS, teria ficado insatisfeito e confuso, mas começar com o meu Synology proporcionou-me uma introdução suave à tecnologia. Sinto que as pequenas rodas foram retiradas e estou pronto para mexer com as poderosas funcionalidades do ZFS e do TrueNAS.