I’ve been interested in self hosting a small variety of services yet I’m so confused on where to start. What would you guys recommend for a server machine?

My main uses (and some of the services I think are appropriate for the use case) are:

  • 1tb photo, video storage, push/pull (immich)
  • 512gb total shared between downloaded music storage (navidrome) and pdf/ebook storage (calibre)—all pull only
  • 1tb movies/tv storage on a media server (jellyfin)
  • 512gb storage for random junk or whatever, plus a file transfer push/pull (syncthing…? or nextcloud?)
  • potential basic bio website hosting (near future)
  • potential email hosting (distant future)

anyways with that all said i have a few questions:

  • what server should i buy if i want to expand storage in the future? should i just build a pc with like 3x1tb storage, or 6x1tb storage w/ redundancy? totally confused about the concept of redundancy lol
  • any thoughts on the services im suggesting? especially for file transfer
  • webghost0101@sopuli.xyz
    link
    fedilink
    English
    arrow-up
    3
    ·
    8 hours ago

    I would still consider myself a noob but i do feel accomplished enough to answer this properly.

    Hardware depends on your budget. It does not need to be bleeding edge either, i would focus on a good server case that makes it easy to upgrade over time and maybe fits a few harddrives if you don’t plan on having a nas.

    Also make sure to check how much sata connections your motherboard can handle, using an m.2 slots may occupy some of the physical sata connections.

    I highly, highly recommend proxmox for an OS.

    You can set up every different service into its own lxc container, its wonderful to know you can experiment with whatever and everything else will be unaffected and just keep working. Within lxc things can just run using docker (though this is officially not recommended it works fine). The resource sharing between lxc containers is excellent. Taking snapshots a breeze. And when an lxc is not enough you can easily spin up some vm with whatever distro or even windows also. Best server-choice i made ever!

    The zfs format for your storage pool is also very good. And you definitely want redundancy, redundancy makes it so x amount of drives can fail and the system just keeps running like normal while you replace the broken drive, otherwise a single drive failing ruins all your data.

    Unless you make every drive its own pool with specific items that you backup separately but thats honestly more troublesome then learning how to setup a pool.

    How you want a pool and how much redundancy is a personal choice but i can tell you how i arranged mine.

    I have 5 identical drives which is the max My system can handle. 4 of them are in a pool with a raidz1 configuration (equivalent to raid-5) this setup gives me 1 drive of redundancy and leaves me 3 drives of actual usable space.

    I could have added the fifth drive in the pool fo more but i opted not too, to protect my immich photons against complete critical failure. This fifth drive is unmounted when not used.

    Basically my immich storage are in a dataset, which you can think of as a directory on your pool that you can assign to different lxc to keep things separate.

    Every week a script will mount the fifth drive, rsync copy my immich dataset from the pool onto it. Unmount the drive again. Its a backup of the most important stuff outside of the pool.

    This drive can also be removed from the cases front in an emergency, which is part of why I recommend spending some time finding a case that fits your wants more then worrying about how much ram.

    Best of luck!