I am plotting a system upgrade on my workstation built in 2015 to a new Ryzen machine. With the upgrade I will be left with what it still a rather decent little machine I can pull most of the current drives and GPU out, throw in some large red NAS type drives in and roll it into a home server which will include a ZFS Nas etc. I have experience with a variety of Linux distros in server roles from Slackware, Debian, Ubuntu and RHEL/CentOs but haven’t fiddled with a homebrew NAS setup. In the past I’ve used some Synology hardware but I really don’t want to go to that expense to do what I want when this workstation is perfectly serviceable and I don’t have any other real use for it at the moment. I have zero experience with FreeNas, Docker or any other containerized Hypervisor.
My goals is to have at minimum available:
NAS Pool share of 3-4 SATA Drives
Plex server that pulls data from the NAS Pool
Nice to have:
Git/Gitlab server locally but off my workstation
Docker / Kubernetes access (these are technologies I haven’t really played with but am pondering).
Print server for my USB Laser printer I use 2-3x a month (a Brother HL-L2300D I know will work fine with Linux and CUPS)
For Drives I will put in either 3-4 SATA Red Nas drives that can pick up in the $300-350ish range. Since I am waiting until I have cash in hand from a settlement which drives I pick are up in the air. I may also throw in a small M2 NVME Drive since the board has the slot since this would let me use all 4 SATA ports on the board for the ZFS Pool. There are some SATA 250gb Crucial SSD’s floating around my office I can use for the OS but that will cut down on the pool to 3 drives. Though from my initial reading FreeNAS can run off a USB Stick too so there are options.
So my question is what is the best way to setup this server/nas. Are there any other useful things I could be doing with this box that I am overlooking? Do I run it with a Hypervisor booting a few images? Some sort of Docker/QEMU solution? Pure FreeNAS install?
I look forward to seeing your suggestions so thanks for making them,
Robret
Its for my home network which includes my personal workstation, 3x laptops, a couple of tablets and a few phones. I suspect about 60% of the NAS pool will end up with pure media files as I have been ripping my DVD/Bluray collection for several years along with my 60,000 mp3s ripped from CDs I’ve bought. Throw in things like the Arts & Crafts DVDs, my Engraving Discs and a few Masterclass purchases it’s a fair bit of space. The rest will be my data archive of calibre ebook library, Coding Books, Code repositories and other data.
Right now for instance I run my plex server off my workstation and I want to move that off to a stand alone server that will also host a NAS and hopefully a few other services.
For operating system, Freenas is probably not the best option in your case. It is really good at just being a NAS, but is not the best option for a combination NAS and home server. I would suggest something based on Linux instead. Openmediavault is what I use.
You aren’t supposed to access these over a network share. It will generally work fine, slowly for some things, but if more then one user is accessing it at a time it can corrupt the database.
If you are running calibre-web or the calibre server on the server, that is fine.
I am curious why the current version of FreeNAS isn’t something you consider a good option. From what I can see from the outside FreeNAS/OMV are very similar in general features. In truth. The more I think about it I doubt I will do more than run my local plex instance and use the machine for large volume file storage be it media files, data files etc.
Are you running ZFS under OpenMediaVault. When it comes down to the main storage array a high level of fault tolerance is a priority for me. I am leaning towards having a 4 drive array along with a 256 or 512 M2 OS NVME drive. I am not sure if ZFS is the right FS over BTRFS or EXT4 but most of my reading on the subject says ZFS should be better in the long term. It is a area though I don’t have a lot of direct experience with.
Oh and as far as Calibre goes, well I use Calibre to do basically 3 things. I use it to Convert Ebook Format A to B when I need it, Sync Books onto either a Fire Tablet or a KindlePaperwhite and I use the default ebook reader app. I have despised the way Calibre names files since I tend to store and keep my files manually named in the like this:
[Book Series Name - Book Number] Book Title - Author.format
I tend to store these under a folder structure of
/Author Name / Series Name
For me that is a sane way to keep track of things given I read things that in some instances have anywhere from 8 to 50+ volumes. I am sure other people prefer how Calibre does it or use other schemes but the above is what works for me. I also tend to group my Non-Fiction books by Category/Title and I have quite a few Tech volumes, many left over from my MSDN Subscriptions and other acquisitions over the last 20ish years.
At any rate OMV has a few pluses being Debian since I really never have done any of the BSD variants but it is giving me food for thought.
I run Fedora Server with my NAS drives in a Btrfs RAID 10 config. I run a half-dozen or so services like Plex and Nextcloud in containers using Podman. I manage the services with systemd unit files that podman generates. I share things across the network with NFS and Samba which I configure manually. Nothing fancy but I like it a lot.
It’s not a turn-key solution like Free/TrueNAS but I like fiddling with Linux technologies so Fedora Server keeps things pretty current, Btrfs is an awesome FS built into the kernel so no dkms to contend with, and Podman is a great alternative to Docker (especially on Fedora Server 32). I back it all up every night with btrfs send to an offsite machine (which ZFS can do, too if you go that route). Aside from no potential dkms issues, Btrfs also makes adding new drives pretty straight forward. I’m not bashing ZFS (I use it, too) but just find that for my purposes Btrfs was a good option.
It is a good option, but only if you are either only using it as a NAS, or if you are comfortable with using FreeBSD and figuring out things without guides.
Then FreeNAS should work well.
I am running BTRFS and EXT4.
Back when I set up my pool, ZFS on Linux was not as good, but it has come a long way.
Ah, so you are not using the Calibre Library database, you have your own structure, and use Calibre for specific tasks.
In that case, having your library on a network share is completely fine. It is only if you are using the Calibre Library is there an issue.
I was looking at some Fedora documentation and ran into this today: https://fedoramagazine.org/btrfs-coming-to-fedora-33/. It looks like as of Fedora 33 BTRFS will replace Ext4 as the default File System. Right now I am still debating which way I will roll but from the look of things on a consumer level BTRFS appears a lot more flexable as far as replacing/changing drives in the pool which is looking more like a tipping point.
I may do some VM installs of a few of these media servers and see how much of a pain they are vs just doing a fixed Debian or Fedora setup and adding what I need.
I’ve been using all sorts of distros and find I am very comfortable with Debian but I have used Redhat now and again just not in the last 7 or 8 years roughly. Most of my Linux installs have used ancient hardware so lots of them were lightweight installs I could strip down as much as possible to get them to work for what was needed or to be used on surplus laptops that I didn’t want to reapply Win98/7/2000 licenses on. Heck my current laptop runs great with MX Linux as I find its very snappy with a really low end Thinkpad.
I will look into Podman next as that seems interesting so thanks for that suggestion.