I don‘t know if this is the right place to ask, but is this an OK build for a first start in selfhosting? Is there anything obvious I could improve? I‘d mainly run Nextcloud, Immich, some Docker containers and smaller web applications and cronjobs.
I don‘t know if this is the right place to ask, but is this an OK build for a first start in selfhosting? Is there anything obvious I could improve? I‘d mainly run Nextcloud, Immich, some Docker containers and smaller web applications and cronjobs.
16GB of ram is a bit low for the load you’re planning. That can work, but Nextcloud and Immich are pretty hungry for memory. My immich instance right now is using 7GB of RAM and nextcloud uses a bit over 4. I have the hardware to give them pretty much all the memory they want, so those are not absolute minimum amounts, but I wouldn’t try to run either with less than 6GB allocated memory on my load (few users, about a terabyte of data on both).
With 16GB you can pretty much forget using ZFS, but that’s not a big loss. LVM works just fine and with thin provisioning you can use snapshots too just fine. Bigger SSD/NVME for drive cache would be good. And of course all-SSD setup would be nice, but that gets expensive pretty fast. Second ethernet port might be nice to have, depends on how you’re planning to build your setup. Otherwise that hardware looks pretty good, altough I’d search for something second hand. CPU is most likely a bit overkill for what you need, I have Xeon E5-2620 v3 @ 2.40GHz and it’s running on around 10% load most of the time.
7GB for immich is wild, my instance with 2TB of photos is currently using 811MB of RAM. What’s eating it all?
It’s a full VM, so OS and docker creates some overhead, but before I upgraded the server it ran on far less resources and specially big imports were painfully slow. Also that’s just the number from proxmox console, so there’s likely some cache included, but stats show that the VM pulls over 10G every now and then with shorter spikes over 20GB of consumed RAM.
As I mentioned, it can run on way less, but it feels a lot more responsive when it has enough resources.
I just ran an import of only a dozen photos and it did go up to 2.3GB usage. I knew containers were more lightweight but I didn’t think a VM could get that bad. Hopefully it’s reporting a sum of virtual or assigned memory space and isn’t actually hogging that much in physical ram.
Have you checked while it’s running all the ML tasks on import? Mine uses a good chunk of RAM while that’s running.