this post was submitted on 10 May 2024
35 points (87.2% liked)

Selfhosted

39922 readers
510 users here now

A place to share alternatives to popular online services that can be self-hosted without giving up privacy or locking you into a service you don't control.

Rules:

  1. Be civil: we're here to support and learn from one another. Insults won't be tolerated. Flame wars are frowned upon.

  2. No spam posting.

  3. Posts have to be centered around self-hosting. There are other communities for discussing hardware or home computing. If it's not obvious why your post topic revolves around selfhosting, please include details to make it clear.

  4. Don't duplicate the full text of your blog or github here. Just post the link for folks to click.

  5. Submission headline should match the article title (don’t cherry-pick information from the title to fit your agenda).

  6. No trolling.

Resources:

Any issues on the community? Report it using the report flag.

Questions? DM the mods!

founded 1 year ago
MODERATORS
 

I have a trusty UnRaid server that has been running great for almost 3 years now, with some kinks and headaches here and there, but mostly very stable. Now I'm entertaining the idea of setting that box up with ProxMox, and running UnRaid virtualized. The reason being that I want to use UnRaid exclusively as a NAS and then run all dockers and VMs on ProxMox (at least that's how I'm picturing it). I would like to know your opinion on this idea. All I have is Nextcloud, Immich, Vaultwarden, Jellyfin, Calibre, Kavita and a Windows VM I use to update some hardware every now and then. I mainly want to do that for the backup capabilities in ProxMox for each instance. Storage is not a concern, and I have 64GB of ECC Ram running in that box. What are the Pros and Cons, or is it even worth it to move all this to ProxMox?

top 50 comments
sorted by: hot top controversial new old
[–] [email protected] 28 points 5 months ago (3 children)

Use either proxmox or unraid. Don't stack.

They are both great in their own respects but you need to choose what works for you and your hardware.

Up until recently I liked unraid due to being able to use multiple disks with different capacities. You don't really have that freedom with proxmox.

[–] [email protected] 4 points 5 months ago (1 children)

To most of your comment I completely agree minus the freedom for choosing different disk sizes. You absolutely can do that with btrfs or just throwing a virtual layer on top of some disks with something like mergerfs.

[–] [email protected] 2 points 5 months ago (1 children)

You're correct, with a bit more know how and knowledge it's completely doable. Quick question maybe, once you create a pool and are utilizing it, are you able to add/remove drives as needed or does that require additional work to be completed? I am under the impression that the pools can be created with a variety of drives but making any physical adjustments are a bit of trouble.

However, I do appreciate you posting about this, maybe it'll help someone else that might be browsing through here. Thank you.

[–] [email protected] 1 points 5 months ago

It depends on your needs. It's entirely possible to just format a bunch of disks as xfs and setup some mount points you hand to a union filesystem like mergerfs or whatever. Then you would just hand that to proxmox directly as a storage location. Management can absolutely vary depending how you do this.

At its heart it's just Debian so it has all those abilities of Debian. The web UI is more tuned to vm/lxc management operations. I don't really like the default lvm/ext4 but they do that to give access to snapshots.

I personally just imported an existing zfs pool into proxmox and configured it to my liking. I discovered options like directly passing datasets into lxc containers with lxc options like lxc.mount.entry

I recently finished optimizing my proxmox for performance in regards to disk io. It's modified with things like log2ram, tmpfs in fstab for /tmp and /var/tmp, tcp congestion control set to cubic, a virtual opnsense heavily modified for 10gb performance, a bunch of zfs media datasets migrated to one media dataset and optimized for performance. Just so many tweaks and knobs to turn in proxmox that can increase performance. Folks even mention docker I've got it contained in an lxc. My active ram usage for all my services down to 7 gigs and disk io jumping .9 - 8%. That's crazy but it just works.

[–] [email protected] 3 points 5 months ago

If you have a disk controller you can pass through.

[–] [email protected] 2 points 5 months ago (2 children)

And that's why I chose to ask here. More heads put together come up with better choices. Watching this TechHut video (https://www.youtube.com/watch?v=ahOXQM4416Q) and another one from Christian Lempa (https://www.youtube.com/watch?v=M3pKprTdNqQ) is what led me to think it could be an idea.

I guess it's the "add another server" to route for me.

Thanks so much.

[–] [email protected] 3 points 5 months ago (1 children)

Best of luck jjlinux. I hope you have a ton of fun getting your system up and running.

[–] [email protected] 1 points 5 months ago

Thanks a lot, I'll update my progress, if my wife chooses to spare my life once I start 🤣

load more comments (1 replies)
[–] [email protected] 11 points 5 months ago (2 children)

If you virtualize unraid, unraid wont have direct drive access - you can get around this by getting an HBA card and forwarding that to the unraid VM. Others have mentioned that proxmox doesn't have docker support, I personally run docker containers within lxc boxes on proxmox. There are solutions to make managing containers easier, like portainer, if you want to go down that route.

[–] [email protected] 2 points 5 months ago (2 children)

After Ai watched Lempa's video virtualizing TrueNAS passing through all drives on ProxMox, I started searching to see if anyone had tried the same with UnRaid, and TechHut actually did it.

https://www.youtube.com/watch?v=ahOXQM4416Q

However, my use case is somewhat different than his, and he's just a hobbyist like me, so I'm much more comfortable asking in this community where it's highly likely that someone already crashed and burned before me, lol.

I'm thinking I'll take the advise of just building a new server for ProxMox, and then use my current UnRaid box exclusively for storage. That should be somewhat safer, right?

[–] [email protected] 2 points 5 months ago

That's my current configuration, it works well. Put your storage on a separate network. I use smb shares so my data is password protected, even on that separate network.

Main downside of this is there's more places for failure to occur. If your NAS goes down, there's no storage access for proxmox which may cause service downtime. Alternatively if proxmox goes down, this also causes service downtime. For me this is fine, but something to keep in mind. Ideal solution would be 2 HA clusters for storage and compute, but thats expensive haha.

[–] [email protected] 1 points 5 months ago

Here is an alternative Piped link(s):

https://www.piped.video/watch?v=ahOXQM4416Q

Piped is a privacy-respecting open-source alternative frontend to YouTube.

I'm open-source; check me out at GitHub.

load more comments (1 replies)
[–] [email protected] 7 points 5 months ago* (last edited 5 months ago) (1 children)

Oof. No.

Wouldn't do it for a litany of reasons, but the main being that it's not meant for such things. You want it to be as close to the OS and drivers as possible. Anything getting between Unraid managing the disks is overly complex, and asking for trouble. What happens if the container dies? What happens if the container gets OOMkill'd?

If you're not going to use it to manage your disks, then I guess no issues, but there's better suited software for such things.

Isn't Unraid also a VM host of sorts?

[–] [email protected] 3 points 5 months ago (2 children)

Yeah, UnRaid does all of that, but from my very basic testing of ProxMox in an old computer, the VM management is much better than in UnRaid. The same goes for VLAN awareness with just 1 nic.

I'm in no way unsatisfied with UnRaid, but I watched a video by Christian Lempa doing something similar, only with TrueNAS instead of UnRaid, which is what got my brain thinking about all these potential options.

https://www.youtube.com/watch?v=M3pKprTdNqQ

[–] [email protected] 3 points 5 months ago (1 children)

There's the question of "CAN I do this?" vs "SHOULD I do this?". I don't think abstracting your main storage handling software away from where it definitely needs to be is going to net you anything positive, but add more issues and complications.

I'm sure you can find videos of people running drivers out of containers just because it's possible. Should you though? Nope.

[–] [email protected] 1 points 5 months ago (2 children)

I do have the advantage of having a mirror of my server 2.5K miles away in my brother's house. That's probably why I'm thinking about being so candidly careless.

I appreciate the great advise. But now I'm willing to take one for the team and come back with either am horror story or an epic win.

BRB.

[–] [email protected] 3 points 5 months ago (1 children)

You're thinking about this wrong way though. Why are trying to abstract the thing that keeps your disks working properly? What's your gain here?

[–] [email protected] 1 points 5 months ago* (last edited 5 months ago)

Oh, ok. Mainly 3 things:

  1. Manage all my containers and VMs over ProxMox instead of inside UnRaid directly, effectively leaving UnRaid to be just manage storage only.
  2. This, from my understanding, will in turn allow me to play with container options other than docker (docker is awesome, I know, but it also has limitations), effectively opening new roads of knowledge to me. UnRaid doesn't even support Kubernetes or LXC.
  3. Easier VLAN management in the server side. I have to play with firewall permissions on my PFSense to allow some containers to talk to others. ProxMox, being VLAN aware, would allow me to eliminate those permissions from PFSense and just manage interconnectivity via ProxMox.

While I'm aware that I can even compose dockers in UnRaid if there's no UnRaid docker template available, it's not the most user friendly way for managing those containers, in my opinion.

Another reason is that I'm always trying to learn new things, and from my limited experience with ProxMox (I've only been playing with it for about a month or so on an old rig), ProxMox is incredibly easy and powerful when it comes to container and VM deployment. The management options seem to be infinite.

Your point is very solid, which is why I'm contemplating segregating UnRaid and ProxMox into 2 separate rigs as opposed to virtualizing UnRaid.

These are hard decisions. Keep just 1 rig and spend way more time and probably migraines configuring this, or just build a new rig for ProxMox and migrate all my containers and VMs to it, which is faster, but will come at a higher monetary price, including power consumption.

[–] [email protected] 2 points 5 months ago (2 children)

Have you considered the increase in disk io and that hypervisor prefer to be in control of all hardware? Including disks...

If you are set on proxmox consider that it can directly share your data itself. This could be made easy with cockpit and the zfs plugin. The plugin helps if you have existing pools. Both can be installed directly on proxmox and present a separate web UI with different options for system management.

The safe things here to use are the filesharing and pool management operations. Basically use the proxmox webui for everything it permits first.

Either way have fun.

[–] [email protected] 1 points 5 months ago (6 children)

I actually never considered this. And if I'm understanding you correctly, this would render using UnRaid unnecessary.

This is great info. I'm going to fit my current ProxMox test rig with a few disks I have (old small disks I have replaced over the years that still work) and test this option first. This might make this easier.

If this works out, I can still keep the server I set up off-site to mirror my storage, right? Even if that is still UnRaid? I need more coffee.

load more comments (6 replies)
[–] [email protected] 1 points 5 months ago (1 children)

That sounds like a great idea.

At the moment I am using Openmediavault as a VM within proxmox - I pass my HDDs through to this VM. Openmediavault let's me do all the stuff I want to: Share folders via SSH, NFS and raid-management.

Do you know if I can do the same with proxmox directly? Do you maybe have a link where this way is described in detail?

[–] [email protected] 2 points 5 months ago

At its core cockpit is like a modern day webmin that allows full system management. So yes it can help with creating raid devices and even lvms. It can help with mount points and encryption as well.

I do know it can help share whatever with smb and NFS. Just have a look at the plugins.

As for proxmox it's just using Debian underneath. That Debian already happens to be optimized for virtualization and has native zfs support baked in.

https://cockpit-project.org/applications

[–] [email protected] 1 points 5 months ago

Here is an alternative Piped link(s):

https://www.piped.video/watch?v=M3pKprTdNqQ

Piped is a privacy-respecting open-source alternative frontend to YouTube.

I'm open-source; check me out at GitHub.

[–] [email protected] 5 points 5 months ago (1 children)

It's understandable that you want to take your virtualization-capabilities to the next level but I also don't see the appeal of containerizing unraid like many others here. I started using unraid last autumn and to me it really is about being able to mix drive sizes. It's a backup to my main server's ZFS pool so (fingers crossed) I don't even really worry about drive failures on unraid. (I have double parity on ZFS and single parity on unraid.)

Anyways my point is I started out with 8 SATA slots plus an old USB-based enclosure with i set to JBOD mode and that was a pretty stupid idea. unraid couldn't read SMART data from those USB drives. Every once in a while one of the drives would suddenly show up as having an unsupported partition layout. Couple weeks ago all 5 drives in the enclosure started showing up as unusable. So as you can imagine I dropped that enclosure and now am working solely off the 8 internal slots. I'd imagine that virtualizing unraid's disk access might potentially yield similar issues. At least the comments of people here remind me of my own janky setup.

[–] [email protected] 1 points 5 months ago

You do make a great point. I really am feeling more inclined to spinning up a new rig for ProxMox, and leave my UnRaid to do what it's good at in it's bare metal state as it is today.

This self hosting rabbit hole runs scarily deep.

[–] [email protected] 3 points 5 months ago

I wouldn't, you'll lose a lot not having it manage the disks such as using dissimilar disks for the array and having it spin down unused disks. You might be able to pass disks through so the unraid VM can manage them directly, but it might be harder than I'd personally want to deal with.

If you aren't running VMs much. Truenas scale I believe can do docker well. I've seen a lot of people put that in a VM on proxmox with disks passed through to be used as the NAS portion.

[–] [email protected] 3 points 5 months ago (3 children)

I've been running Unraid on top of Proxmox for over 3 years. No problems whatsoever. I initially bought a RAID controller to directly pass the drives to the UnRAID VM. Another option is to passthrough the SATA controller of your motherboard (only possible if you don't use them on the host).

I documented the process on my blog (it's quite straightforward): https://simplyexplained.com/blog/howto-virtualize-unraid-on-proxmox-host/

load more comments (3 replies)
[–] [email protected] 3 points 5 months ago (2 children)

Proxmox doesn't run docker containers. You can probably install docker to make it run them, but it's not supported.

I also wouldn't run unraid on a virtual disk just to provide storage. Personally, I have one almalinux VM running on Proxmox that runs all my containers and has a big virtual disk to store my media.

[–] [email protected] 3 points 5 months ago* (last edited 5 months ago) (2 children)

Proxmox is Debian at its core, which is supported by Docker. There’s no good reason to not run Docker on the bare metal in a homelab. I’d be curious to know what statement Proxmox has made about supporting Docker. I’ve found nothing.

[–] [email protected] 4 points 5 months ago (1 children)
[–] [email protected] 1 points 5 months ago (1 children)

That’s not a definitive support statement about Docker being unsupported. In fact, even in the Admin Guide, it only provides recommendations. The comment I replied said Docker is unsupported by Proxmox. I maintain that there is no such statement from Proxmox.

[–] [email protected] 2 points 5 months ago

Maybe not explicitly unsupported, but I think "it interferes with some mechanisms on which we rely" should be more discouraging than a policy statement.

[–] [email protected] 2 points 5 months ago (1 children)

I bought a used machine a couple weeks ago and am setting it up (1st bare metal build), prox with debian vm running docker. I found it annoying that pm doesn't support it natively but the ability to do snapshots through pm is nice, and let's me fuck around more than I would otherwise, slowly build up a machine.

But almost all of the stuff I have running on other machines is just docker containers, so it would be nice if pm just added a checkbox during install or something. (I want to poke at and learn pm, plus mess around with other vms, that's why I didn't do straight Debian)

[–] [email protected] 1 points 5 months ago (1 children)

I am with you on the advantages of running it in a VM. The isolation a VM provides is really nice. Snapshots FTW.

[–] [email protected] 1 points 5 months ago

LXCs let you get all the benifits of VMs with fewer drawbacks, I recommend that approach if you want some extra sandboxing than docker on bare metal provides.

[–] [email protected] 2 points 5 months ago

You can however run any LXC which you can definitely do natively.

[–] [email protected] 3 points 5 months ago (1 children)

If you want to move to Proxmox then I say give it a go.

Maybe just keep what you have running and set up another machine to have a play. If you like it, then stick it on your main machine and work out how to replace everything, could be a fun project for you.

I use Proxmox and have Open Media Vault as my NAS. I use SMB/CIFS to share the drives and have a share that Proxmox can use for daily backups, as well as having backups on the main SSD every week. I need to off-site backups but I haven't researched that yet.

I have a Debian VM that runs Docker and have everything running on that except OMV and Home Assistant. I have another Debian VM that I spin up to try things out.

RAM-wise I'm hitting about 12gb so if you have something with 16 lying around you can easily try out most of what you have running already, and if you don't have anything to run it on you're talking under £100 for a mini PC.

Give it a go, I'm sure you can come up with something to run on a mini pc anyway

[–] [email protected] 3 points 5 months ago

This is actually good advise. I am running ProxMox on a very old PC (3rd Gen i3 with 8GB of ram), and I really like it, which is why I wanted to move it to my server Box instead.

But now that you mention it, I may be better off keeping my UnRaid box as it is and use is as NAS/Storage exclusively and then build a good box to run everything else from ProxMox.

My wife is going to kill me in my sleep, lol.

[–] [email protected] 3 points 5 months ago* (last edited 5 months ago) (2 children)

I am in the same boat currently and thinking about how I can migrate my stuff over without having a 1 month downtime EDIT: after reading all the comments I'm still not sure if I should do it or like I said even how. I love my unraid it fits me well however I think I also have fallen in love with proxmox

[–] [email protected] 2 points 5 months ago (1 children)

Yup. I think I'm going to go the 2 servers way after all, but not before I try doing it in one, because, we'll, why not? Isn't that what home labs are about? 🤣🤣🤣

[–] [email protected] 2 points 5 months ago (1 children)

Please keep me up to date what you try and how you are trying to migrate it over! :D and obviously good luck

[–] [email protected] 1 points 5 months ago

Absolutely. This is why I love Lemmy as a whole, and my wife hates it.

The combined amount of wisdom I've found here interacting with so many smart individuals is a serious treasure of knowledge and a powerful drive to keep exploring and learning.

[–] [email protected] 1 points 5 months ago

It's the production vs development issue. My advice is the old tech advice. "If it's not broken don't try to fix it"

Modified into a separate proxmox development environment. Btw proxmox is perfect for this with vm and container snapshots.

When you get a vm or container in a more production ready state then you can attempt migrations. That way the users don't kill you :)

[–] [email protected] 1 points 5 months ago* (last edited 5 months ago)

Acronyms, initialisms, abbreviations, contractions, and other phrases which expand to something larger, that I've seen in this thread:

Fewer Letters More Letters
HA Home Assistant automation software
~ High Availability
LXC Linux Containers
NAS Network-Attached Storage
NFS Network File System, a Unix-based file-sharing protocol known for performance and efficiency
NVMe Non-Volatile Memory Express interface for mass storage
RAID Redundant Array of Independent Disks for mass storage
SATA Serial AT Attachment interface for mass storage
SMB Server Message Block protocol for file and printer sharing; Windows-native
SSD Solid State Drive mass storage
SSH Secure Shell for remote terminal access
ZFS Solaris/Linux filesystem focusing on data integrity
k8s Kubernetes container management package

[Thread #744 for this sub, first seen 10th May 2024, 17:55] [FAQ] [Full list] [Contact] [Source code]

load more comments
view more: next ›