Jump to content

Which software for Media Server + NAS?

Before discussing software, this is the hardware I'm working with:

  • CPU: i5-13500 (has iGPU which I think can transcode JellyFin video in realtime)
  • MoBo: ASRock H610M-H2/M.2 D5 (Micro ATX)
  • RAM: Crucial DDR5 (2x16GB)
  • PSU: Thermaltake Toughpower PF1 750W 80 Plus Platinum
  • HDD: 3x Seagate Exos HDD 3.5''
  • PCI-e: Asus XG-C100C Gigabit (10Gbps) Ethernet
  • Tower: Natec Helix Micro

(Now, this tower isn't really for NAS - it can only fit 3 HDDs but I can't find any nas-specific case in skroutz.gr so tough luck for me I guess)

 

Some background on me. I'm a Data Scientist, working with Neural Networks and needing access to datasets spanning from a few GBs to over 1TB each.

I am mainly using Windows, but I am somewhat familiar with Linux, especially debian based distros, hence using the terminal is not an issue.

My needs are:

  • Tolerance for HDD failure and restoring my system when I replace the failed disk
  • NAS Mounted drives which can be accessed on my home (Lan) network (computers on the network will work on files in there in realtime)
  • At some time in the future I might want to use space in there for a security camera but I guess that's just 1 more mounted drive, so it's the same as the above
  • Samba (Windows Explorer) access to the mounted drives
  • FTP access to the mountned drives
  • JellyFin to serve files in one of the mounted drives as a media server


I know of Unraid, which as far as I understand allows you to mismatch HDD capacities (which would be a big plus for me), and of TrueNAS which as far as I understand you need to have same-capacity drives.

From what I gather, and correct me if I'm wrong, with both of them I can get the basic functionality of mounting drives and exposing them with FTP/SMB out of the box, and with Docker Containers I can install JellyFin and get the media server that way.

The ability to create a VM would be a plus (altough I don't think I'd needed it very often), and even better if I could attach a dedicaded GPU and be able to train neural networks remotely this way (again, I probably will never use that).

Is my understanding correct? And if so, which software would you recommend for my use case (feel free to suggest some other one if you think is better), and how would you set it up?

If you have any article quide or video or equivalent in mind, please do share.

(P.S. It does not matter to me if it's free, or open source, or paid - either works)

Link to comment
Share on other sites

Link to post
Share on other sites

I'd setup your box as a VM Host first.

 

Use a small SSD (SATA or NVME or even USB would be fine)

and use that as the primary OS.

 

Then make a VM and have that run UNRAID / TrueNAS.  (I like TrueNAS myself)

Make another VM to run Plex / Jellyfin

 

Make other VMs to run whatever other VMs you want to run.

Link to comment
Share on other sites

Link to post
Share on other sites

I'd say that Unraid is the best thing for hosting VMs/Dockers and TrueNAS is best for mass storage. I run two systems, one on truenas and on on unraid. 
I've never set up something that does VMs for both, but that's definitely a possibility. My buddy runs RAIDZ on unraid which is most of the benefits of TrueNAS. 
Depending on the number of users, you might want to grab some gpu (1060's are 50-60$ on ebay rn) to help with transcoding. Especially h.265/HEVC files which are *rough* on iGPUs

5950X/3080Ti primary rig  |  1920X/1070Ti Unraid for dockers  |  200TB TrueNAS w/ 1:1 backup

Link to comment
Share on other sites

Link to post
Share on other sites

As for cases, well, You can run a disk shelf and use an HBA with external ports. Those are FUN. I actually printed some drive racks and built a 16x DAS in an old ATX mid case

5950X/3080Ti primary rig  |  1920X/1070Ti Unraid for dockers  |  200TB TrueNAS w/ 1:1 backup

Link to comment
Share on other sites

Link to post
Share on other sites

49 minutes ago, tkitch said:

I'd setup your box as a VM Host first.

 

Use a small SSD (SATA or NVME or even USB would be fine)

and use that as the primary OS.

 

Then make a VM and have that run UNRAID / TrueNAS.  (I like TrueNAS myself)

Make another VM to run Plex / Jellyfin

 

Make other VMs to run whatever other VMs you want to run.

That's extremely interesting! On a high level it makes perfect sense. I'm not sure I understand how to implement it though.

So like, first step would be to install Ubuntu on a cheap NVMe drive, I guess.
Next step would be to install some virtualisation software like VirtualBox where I guess instructions on how to do that would be on their official website.
After that, I'd install UNRAID or TrueNAS on 1 VM, and here is where I start to lose track.

 

For that VM to be able to see my HDDs, I guess I'll have to somehow pass-through each individual one to the VM, and the VM will then handle via UNRAID/TrueNAS:

  • Treating all HDDs as 1 huge mounted drive
  • Allowing the ability to replace a failed drive without losing any data

Is that correct? Also, what happens if the VM fails, or if the main OS fails and I have to re-install things? Can I just reinstall ubuntu, re-create a new VM, install UNRAID/TrueNAS and recover my HDDs file system?

 

Also, since my HDDs are now part of the VM, can my other VM which runs JellyFin access my 1 big storage from the UNRAID/TrueNAS VM?

 

For exposing SAMBA/FTP/JellyFin from the VMs, I'm assuming I'll have the ability to do some port forwarding from the VM to the main OS.

Link to comment
Share on other sites

Link to post
Share on other sites

So, if you're running each part in a VM:

Yes, you'd pass the HDDs to the NAS VM directly, and that'd deal with setting up the ZFS / RAID itself.  (it's not that hard, it's a fairly basic VM task.)

 

If the host OS fails?  Not that big a deal, as the VM Files can be pulled off and started back up again.  They're mostly os independent.  

 

once the VM's are running they'll be accessible to the network directly, so a SMB / SAMBA share would be on the network as you'd normally expect.  (The VirtualBox / etc. has a "virtual" switch that passes network traffic to VMs pretty seamlessly.)

Link to comment
Share on other sites

Link to post
Share on other sites

31 minutes ago, OddOod said:

I'd say that Unraid is the best thing for hosting VMs/Dockers and TrueNAS is best for mass storage. I run two systems, one on truenas and on on unraid. 
I've never set up something that does VMs for both, but that's definitely a possibility. My buddy runs RAIDZ on unraid which is most of the benefits of TrueNAS. 
Depending on the number of users, you might want to grab some gpu (1060's are 50-60$ on ebay rn) to help with transcoding. Especially h.265/HEVC files which are *rough* on iGPUs

I see. I guess if I had to choose between VMs/Dockers annd Mass Storage, I'd choose mass storage.
An interesting question would be, in what way would TrueNAS be better for mass storage? Is it faster? safer? has some added funcntionality?

 

The only Docker I'd probably need is JellyFin. So I'd mainly use Mass Storage to read/write from computers in my LAN and JellyFin to potentially watch films sometimes.
RAIDZ on unraid giving it most of the benefits of TrueNAS is also interesting. Perhaps I could go for that and have the superior VM/Docker functionality plus very good Mass Storage.

As for the transcoding, the only user would be me - same for mass storage, only I would train models from 2 or 3 computers at once, but I can only watch 1 film at a time ^^

 

I'll look into the HBA with external ports. From a quick google search it seems like a PCIe card I put in the motherboard and then I can connect many sata or sas drives. That's awesome.

 

(P.S. The circle must be broken, so that we can sing)

Link to comment
Share on other sites

Link to post
Share on other sites

5 hours ago, N1h1l1sT said:

I'll look into the HBA with external ports. From a quick google search it seems like a PCIe card I put in the motherboard and then I can connect many sata or sas drives. That's awesome.

 

100% need to go LSI. They've got the goods. between my buddy and I we have 6 deployed for a total of 25 years of service between them with no problems. All bought used.
Do ensure you get one that mentions that it's been flashed to IT mode. I still don't 100% understand it, but it solved the problem I ran into where it wouldn't recognize HDDs over 8TB (I'll soon be running 32 14TB drives).
You can either get a diskshelf that has a SAS cable to transfer the data, or you can go full jank like my DAS where it has a PSU with a permanently installed jumper plug on the 24pin so it always boots with power and some miniSAS to SATA breakout cable 

5950X/3080Ti primary rig  |  1920X/1070Ti Unraid for dockers  |  200TB TrueNAS w/ 1:1 backup

Link to comment
Share on other sites

Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now

×