TrueNAS SCALE
Storage Server Project

truenas scale dashboard

Project Overview

In this project, I built and configured a robust, scalable, and secure storage server using TrueNAS SCALE, a powerful, open-source solution designed for home and enterprise storage environments. This project demonstrates my proficiency in managing storage solutions, particularly in a Linux environment, and highlights my ability to implement enterprise-grade storage systems in a home lab setting.

Hardware Configuration

Server Hardware: The server is built on a custom setup on a HP DL380e Gen8 enterprise server, ensuring high performance and reliability. The hardware includes:

  • Processors: 2x Intel Xeon E5-2450L

  • Memory: 32GB DDR3 ECC RAM

  • Storage: A combination of high-capacity HDDs and SSDs configured for performance and redundancy, including:

    • 9 x 3TB Hitachi SAS HDDs for main storage (ZFS RAIDZ2)

    • 1 x 146GB Intel SAS HDD for operating system

    • 1 x 64GB Crucial M4 SSD for caching and performance boost (SLOG)

  • Network Interface: Quad 1GbE network card to ensure fast data transfer and minimal latency.

Software Configuration


Operating System: TrueNAS SCALE, an open-source hyper-converged storage system that leverages the Linux kernel and ZFS, known for its data integrity and scalability.

Storage Pool Configuration:

  • Main Storage Pool: Configured with ZFS RAIDZ2, balancing data protection and storage efficiency. This setup allows for the loss of up to two drives without any data loss.

  • SLOG: Implemented with SSD to improve write speeds, particularly for large number of small files. The SAS drives in the RAIDZ2 configuration are efficient at disk reads.

File Sharing Protocols:

  • SMB/CIFS: Configured for seamless file sharing across Windows devices and devices that are only compatible with SMB shares.

  • NFS: For Linux and Unix-based systems, enabling efficient and secure file transfers. Used across all other storage shares to virtual machines.

  • iSCSI: Implemented for network storage that can be accessed as if it were a local hard drive. Primarily used for improving read and write speeds over the network for the virtual machine backups and NVR video storage.

  • SFTP: Setup to allow local backups for WordPress sites hosted on local network.

Backup Strategy: Automated snapshots and replication tasks are set up to back up to this storage server and this critical data is backed up to an off-site location, ensuring data availability and disaster recovery capabilities.

Security Features:

  • Access Control: Fine-grained access control lists (ACLs) are configured to ensure that only authorized users have access to sensitive data.

  • Firewall and Network Security: OPNsense is integrated with the server to provide a robust firewall and VPN access, ensuring secure remote management.

Use Cases

  • Data Archiving: The server is used for archiving large datasets, including personal and professional documents, multimedia content, and backups of other systems in my home lab.

  • Virtual Machine Hosting: Supports running VMs directly within TrueNAS SCALE, showcasing its capabilities as a hyper-converged infrastructure. Setup a virtual machine on the server to provide the backup client software for the online backups.

Challenges and Solutions

  • Challenge: Initially, I faced issues with the ZFS RAIDZ2 due to a hardware compatibility issue with the RAID controller.

    • Solution: This was resolved by creating a RAID 0 for each hard drive and ensuring all drives were recognized correctly by the system before pool creation. I am unable to get SMART data from the drives within TrueNAS, but that is the only thing lacking.

  • Challenge: Network performance optimization was necessary to fully utilize the 4x1GbE network cards.

    • Solution: I implemented link aggregation and fine-tuned network settings in TrueNAS SCALE to achieve optimal throughput and redundancy. I also found that I could make full use of the link aggregation by using NFS and iSCSI shares.

Key Takeaways

This project allowed me to deepen my understanding of enterprise-level storage solutions and gain hands-on experience with TrueNAS SCALE. It demonstrates my ability to manage complex storage environments, optimize performance, and ensure data security—all critical skills for a Linux system administrator role.