Jellyfin comes to homeprod
Early last week the root drive on my NAS died. I was disappointed, but not surprised since its an old drive. This caused me to add a USB drive, with the most important media files, to my server so the most important files will always be served. While doing this it got me thinking about my server layout and proper failover protection.
Homelab layout
Honestly, I have a meager homelab. I use an old Optiplex SFF tower as a NAS and then a GMKTec mini PC for my server. I don’t need much more since most of the services I run are 1-3 users, minus the media services that can be up to 8 streams at a time.
I like having a separate NAS from the server because of failure. I have tried having an AIO (all in one) setup and it works fine. But, when I had hard drive issues it took everything down. No storage for my varios PCs, no media server, no PiHole, no Nextcloud, no reverse proxy. Everything went down and stayed down. I didn’t like this experience and started to compartmentalize services.
In my mind, each device has a purpose. The NAS collects and stores data. That’s why it has samba shares for the PCs and also runs the arr stack. It collects and stores data. The server does exactly that, it serves that data. Having a standalone NAS makes it so I can have multiple servers depending on the need. They don’t need to have a bunch of storage, there’s a box dedicated to storage on the network.
But, that goes awry when the NAS goes down.
For the most part the most important services stay up when the NAS goes down, but the server stays on. Ads keep getting blocked, my blog and GoToSocial instance keep running, the game servers keep running for the kids. Of course the media servers go down since that takes up the most storage room on the NAS. But, no big deal right? I was wrong.
Media server becomes critical infra
What I hadn’t considered was that the kids and my wife have become reliant on the media servers as part of their daily life.
My wife watches her favorite shows while working out. We don’t have any other streaming services, so when the media server goes down she can’t watch anything.
I started archiving YouTube channels for my kids and I didn’t know until recently that they have been exclusively watching their channels on Jellyfin instead of YouTube. When the media server goes down, the entire house hears about it.
All this being said, I need a way for the most important videos to always be available, regardless of the NAS or an internet connection.
Temp solution
While I wrap my head around this issue I have added an external USB drive to the server with my wife’s favorite shows and the YouTube channel archive the kids watch. This is the permanent spot for these files, so Jellyfin will always play them, regardless of the status of the NAS. It can play them without being able to connect to the network shares since they are local. If the NAS goes down it will always be able to play these files.
Yet, it has me thinking deeper about this problem. As is often the case, my little experimental homelab has become “homeprod”. Everyone depends on it. Sometimes that’s converting PDFs for school. Sometimes its editing a spreadsheet in the browser. Sometimes its watching Minecraft videos at lunch or ER on a stationary bike.
Do I switch back to an AIO? This reduces completity. If it goes down it takes everything with it. But I can more easily run from solar+battery so even a power outage can’t take it down.
I’m not talking backups. When the NAS went down I was able to restore from backup in just a few hours.
I think a combination of having some files local to the server and then files local to each persons device will fill in the gaps. The server has some critical files local so if the NAS goes down the most important files are always available. Then I put the same YouTube and TV shows onto my wife’s laptop, which makes it so even if everything goes down the most important media is available.
I still have a lot of thinking to do.
- - - - -
Did you like this post? Give it an upvote by clicking on the arrows below! Sending me an upvote is like you and I giving each other a high five.
🙏 😎
Thank you for reading! If you would like to comment on this post you can start a conversation on the Fediverse. Message me on Mastodon at @cinimodev@masto.ctms.me. Or, you may email me at blog.discourse904@8alias.com. This is an intentionally masked email address that will be forwarded to the correct inbox.If you enjoy the random stuff I write here, post to Mastodon, or watch on YouTube, and are feeling generous, I am open to tips of Ko-fi.