TrueNAS Logo TrueNAS is pretty much the most recommended NAS platform since it started as the FreeNAS project. At the time, the core of TrueNAS was the FreeBSD OS and dovetailed nice with native ZFS licensing. Even before that, I think FreeBSD was considered more stable that Linux as it was around before Linux took off to that way it is now, starting in the 2.2/2.4 kernel. The problem, in my opinion, is the FreeBSD just wasn’t keeping up with modern hardware. More and more vendors favored getting hardware support in the Linux kernel than FreeBSD. This is why I believe TrueNAS Scale came along, not only to have a port running on Linux, but to extend what you could do with virtual machines or with containerization running on the box.

What I personally like about TrueNAS is they have done a lot of work around an intuitive web UI as well as a well putting together a slick CLISH shell for configuring the box without modifying any config files. They also give you the ability to get to shell and run native commands, like for ZFS. ZFS is another reason I wanted to stick with TrueNAS. I know there are other OS’s that do the same things with ZFS, but I think there is a bigger community running ZFS, not only in the Linux world, but BSD and Solaris.

Installation is also very stream lined and lets you go power user if you need a more specific installation needs. For example, if I didn’t want to use my whole NVMe drive for the installation, I can break out the shell and do this “workaround” (Link) on the installation script to have it only consume the size I want while leaving space for me to use the rest of the drive for storage. After installation, it was just a matter of using the CLISH shell to get an IP address on the box, but not only that, setup my bonded interface so I don’t have to deal with that after I configured one interface with an IP address. In the web UI, you just setup your usual suspects like host name, DNS, NTP, passwords, drive configuration, etc. The only thing I found was there isn’t a way of setting up fiber channel cards in initiator mode (I know, I know, I like to keep a bit of old school around); I had to follow this article for that (LINK). After you do perform the configuration, fiber channel just follows you iSCSI settings for targets and extents.

The one consideration, if you are planning on running VM’s or applications on TrueNAS scale is to have plenty of RAM. As most of us know, ZFS does take a considerable amount of RAM depending on how much storage you have available on your box. I did find stability issues with running applications if you don’t have enough memory, mainly high load values. I’m sure there is a way to setting the application to only consume only X amount of RAM, which is a valid thing in Kubernetes, but I always found just adding more RAM is the quickest approach to having to be so specific on your workloads.

No comments