Adicionar funcionalidade NAS a uma caixa Proxmox existente pode levá-lo por alguns caminhos diferentes e, dependendo do hardware que você está usando, você pode realizar o trabalho de várias maneiras diferentes, todas com seus prós e contras. Uma das formas mais recomendadas é executar uma VM TrueNAS e transferir as unidades dessa forma. Segui esse caminho quando construí armazenamento em meu laboratório doméstico com um LSI 9207-8i e algumas unidades SAS Seagate Exos, mas usei ZFS nativo no Proxmox e nunca mais olhei para trás.
Meu HBA só precisa morar em um só lugar
ZFS local com HBA elimina muitas dores de cabeça
TrueNAS requer acesso bruto e imediato a discos físicos para poder ver coisas como dados SMART e é, na verdade, um requisito estrito para que o ZFS faça seu trabalho de integridade de dados. Em uma configuração virtualizada, a maneira recomendada de conseguir isso é passar todo o controlador HBA para a VM por meio de uma passagem PCIe, em vez de passar discos virtuais individuais para ela. Os fóruns estão cheios de pessoas que descobriram da maneira mais difícil que as teclas de atalho dos drives virtio terminam mal.
Ignorar todo o controlador tem consequências fáceis de ignorar: uma vez que o VFIO solicita o cartão de convidado, o host não pode tocar em nada anexado a ele. O 9207-8i e todas as unidades nele contidas tornam-se propriedade exclusiva da VM. Não há problema quando estou usando placas corporativas com separação IOMMU limpa, mas é uma aposta na placa Z170-E em que estou usando. Não é garantido que uma placa acabe em seu grupo IOMMU, e resolvê-la pode significar ignorar o ACS e todos os avisos associados.
Depois das horas que passei para estabilizar esta placa LSI específica nesta placa, colocar uma camada de passagem em cima e mantê-la funcional parecia um pesadelo absoluto. O Proxmox executando o ZFS nativamente simplesmente possui o controlador. O pool é criado em sua unidade estável /dev/disco/por-id estradas e não há passagem para entrar na imagem.
Se você ainda não possui uma, uma placa HBA é um ótimo complemento para o seu servidor doméstico
Uma maneira confiável de adicionar armazenamento adicional
Meus dados podem chegar diretamente aos contêineres
É perfeito
Esta é a parte que realmente resolveu o problema. O armazenamento não é o único propósito desta máquina, mas sim ser capaz de entregá-lo perfeitamente aos serviços que executo. Usando ZFS local no host, criei conjuntos de dados e os anexei diretamente aos contêineres. Minhas encadernações Immich LXC tanque/immich/biblioteca e tanque/immich/db diretamente; as fotos são espelhadas e o mesmo vale para arquivos genéricos: o LXC for Samba cuida do armazenamento de arquivos genéricos na minha rede.
Agora imagine a mesma configuração com o pool preso dentro de uma máquina virtual TrueNAS. Para enviar essas fotos para o Immich, os dados devem ser deixados na máquina virtual via NFS ou SMB e montados novamente. É um segundo serviço que está constantemente no caminho de dados, uma viagem de ida e volta de bytes que nunca sai da caixa e uma cadeia de dependências onde Imich não pode ver sua biblioteca até que o TrueNAS termine de inicializar e comece a servir. Montagens locais são apenas acesso local ao sistema de arquivos. Eles ficam disponíveis assim que o host é aberto, sem loop e sem um segundo dispositivo para esperar.
A melhor distribuição NAS lançou uma versão beta pública para sua nova atualização e, a cada lançamento, ela se parece mais com o Proxmox
Isso muda tudo para usuários de servidores domésticos
O que TrueNAS realmente faz melhor
A GUI é útil
Às vezes, trabalhar por meio da CLI não é desejável e, para seu crédito, TrueNAS fornece um console único, consistente e gerenciado por middleware para tudo: gerenciamento de pool e conjunto de dados, agendamentos de snapshots, tarefas de replicação, alertas, painéis SMART – tudo em um só lugar, em vez de manual. A interface do usuário do Replication é agradável e há muitas defesas contra armas de perna que a CLI terá prazer em permitir que você acione.
Há também o lado do aplicativo. TrueNAS oferece um catálogo selecionado com implantação mais próxima com um clique e, desde a mudança para um back-end baseado em Docker, ele pode executar cargas de trabalho padrão do Compose diretamente junto com o armazenamento. É muito bom ter uma plataforma completa para coisas relacionadas ao NAS.
5 serviços insubstituíveis que eu não poderia viver sem
Eu confio na minha caixinha para muitas coisas
Não foi a decisão certa para mim
Native sempre foi a escolha certa
O problema é que a maior parte desse esmalte é antecipada. Você configura as programações de compartilhamento e snapshot uma vez e raramente as toca depois disso, então o retorno diário é mínimo. Também não pretendo configurar mais de 10 aplicativos diferentes, e aqueles que pretendo configurar podem ser feitos facilmente usando o Docker, que é a configuração do aplicativo TrueNAS de qualquer maneira. Os guarda-corpos também são cortados em ambas as direções. Eles são ótimos quando você é novo, mas quando você se sente confortável, eles adicionam atrito porque o TrueNAS não oferece suporte ativo ao gerenciamento de pool a partir da CLI.
TrueNAS é gratuito, então por que alguém pagaria por um NAS OS?
As pessoas desprezam muito os sistemas operacionais NAS pagos.
TrueNAS geralmente não é uma má escolha
Nada disso torna o TrueNAS uma má escolha, especialmente se você o estiver executando em bare metal. Dentro do Proxmox, se você estiver construindo uma caixa de armazenamento dedicada ou quiser um dispositivo real com uma GUI de replicação sofisticada e um catálogo compatível, uma máquina virtual pode ser uma escolha melhor. Mas na minha situação, onde um host controla para onde os aplicativos vão com os dados, o ZFS Proxmox nativo era uma arquitetura mais simples e me poupou da dor de cabeça de complicar ainda mais uma configuração NAS já fora do padrão.







