I personally think of a small DIY rack stuffed with commodity HDDs off Ebay with an LVM spanned across a bunch of RAID1s. I don’t want any complex architectural solutions since my homelab’s scale always equals 1. To my current understanding this has little to no obvious drawbacks. What do you think?

  • azureskypirate@lemmy.zip
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 hour ago

    I’ve got Proxmox running on a nvme mirror. Two HDDs are passed to Turnkey Linux mediaserver; they are mirrored with BTRFS and act as storage. I am satisfied with all (prox, turnkey, btrfs) and would recommend.

    I had one BTRFS drive fail, and replacing it with no experience took about an hour.

    I do wish there was better user documentation for WebDAVcgi, the WebDAV frontend in Turnkey linux mediaserver.

    mediaserver comes with Samba, so I use that to connect devices like phone or laptop to the server

    Turnkey’s mediaserver was my replacement for Openmediavault with Filebrowser plugin. Filebrowser creates an internal user to write files for anything uploaded via web interface, so if you mount the folder later via NFS, the permissions don’t match. Openmediavault would stall or crash a lot as a container and especially as a VM, but maybe it runs better on bare metal.

  • Devjavu@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    4
    ·
    edit-2
    5 hours ago

    A single ssd with whatever formatting came with it, along with a webdav frontend I made myself. Very high security (confidentiality) actually, since I check for client side cert, user auth, biometrics (that’s plural), behavior recognition through a custom typing website and hardware token, but the integrity could use some help. And I’m painfully aware that someone could just steal my session.

    I love security.
    You’ll never get my duck nudes.

    In reality I just had a fun night

  • spacemanspiffy@lemmy.world
    link
    fedilink
    English
    arrow-up
    4
    ·
    15 hours ago

    I have a few Ext4 drives connected and I mount them in /etc/fstab and that’s it.

    I’ve yet to find a reason to change it.

    • melfie@lemy.lol
      link
      fedilink
      English
      arrow-up
      1
      ·
      4 hours ago

      Ha, I went down the whole Ceph and Longhorn path as well, then ended up with hostPath and btrfs. Glad I’m not the only one who considers the former options too much of a headache after fully evaluating them.

    • MrModest@lemmy.world
      link
      fedilink
      English
      arrow-up
      2
      ·
      edit-2
      18 hours ago

      Why btrfs and not ZFS? In my info bubble, the btrfs has a reputation of an unstable FS and people ended up with unrecoverable data.

      • unit327@lemmy.zip
        link
        fedilink
        English
        arrow-up
        2
        ·
        5 hours ago

        Btrfs used to be easier to install because it is part of the kernel while zfs required shenanigans, though I think that has changed now.

        Btrfs also just works with whatever drives of mismatched sizes you throw at it and adding more later is easy. This used to be impossible with zfs pools but I think is a feature now?

      • ikidd@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        11 hours ago

        Just the 5-6 raid modes are shit. And its weird willingness to let you boot a failed raid without letting you know a drive is borked.

      • non_burglar@lemmy.world
        link
        fedilink
        English
        arrow-up
        2
        ·
        12 hours ago

        That is apparently not the case anymore, but ZFS is certainly more rich in features and more battle-tested.

  • SayCyberOnceMore@feddit.uk
    link
    fedilink
    English
    arrow-up
    3
    ·
    19 hours ago

    Backups… with LVM, if you’re trying to do a full system backup (ie with clonezilla, etc) then you have to backup the whole thing - you can’t backup just 1 drive.

    I have a media server with 2x 2TB HDDs and 1x SSD in a LVM, split into Music, Video, TV… and the OS … and I can backup the individual files of course, but I can’t backup just the OS drive.

    btrfs didn’t exist when I created it, but I use it on my NAS and it’s great.

    I’ll be rebuilding my media server one day and change LVM to btrfs.

  • Pokexpert30 🌓@jlai.lu
    link
    fedilink
    English
    arrow-up
    10
    ·
    1 day ago

    Longhorn is goated to manage volume availability across geographically distant nodes.

    If you’re running a one-node show, hostpath will do fine (or just dont kubernetes at all, tbh)

  • panda_abyss@lemmy.ca
    link
    fedilink
    English
    arrow-up
    19
    ·
    edit-2
    1 day ago

    I set up garage, which works fine.

    Advantage of an s3 style layer is it’s simplicity and integration with apps.

    I also use it so I can run AI agents that have zero access to a disk based system

    • melfie@lemy.lol
      link
      fedilink
      English
      arrow-up
      2
      ·
      4 hours ago

      I was considering MinIO, then evaluated Garage, then decided it wasn’t with the trouble since a lot of the things I host don’t even natively support object storage. I do use LFS with Forgejo and it would’ve made sense there, and maybe Jellyfin supporting object storage would be a tipping point.

  • entropicdrift@lemmy.sdf.org
    link
    fedilink
    English
    arrow-up
    11
    ·
    1 day ago

    I just use mergerfs and SnapRAID so I can scale dynamically when I can afford new drives. Granted it’s all fully replaceable media files on my end, so I’m not obsessed with data integrity.

    • rcmd@lemmy.worldOP
      link
      fedilink
      English
      arrow-up
      4
      ·
      1 day ago

      Well, this path seems to be the most appropriate for what I am for.

      And more to that, both mergerfs and snapraid are available out of the box in the latest stable Debian release.

      Thanks for pointing me at it!

      • signalsayge@infosec.pub
        link
        fedilink
        English
        arrow-up
        5
        ·
        24 hours ago

        This is what I’m doing as well. The nice thing about it is that it supports different sized drives in the same mergerfs mount and with snapraid, you just need to make sure one of your biggest drives is the parity drive. I’ve got 10 drives right now with 78TB usable in the mergerfs mount and two 14TB drives acting as parity. I’ve been able to build it up over the years and add slowly.

  • Dalraz@lemmy.ca
    link
    fedilink
    English
    arrow-up
    12
    ·
    1 day ago

    This has been my journey.

    I started with pure docker and hostpath on an Ubuntu server. This worked well for me for many years and is good for most people.

    Later I really wanted to learn k8s so I built a 3 node cluster with NSF managed PVC for storage, this was fantastic for learning. I enjoyed this for 3 plus years. This is all on top of proxmox and zfs

    About 8 months ago I decided I’m done with my k8s learning and I wanted more simplicity in my life. I created a lxc docker and slowly migrated all my workloads back to docker and hostpath, this time backed by my mirrored zfs files system.

    I guess my point is what are you hoping to get out of your journey and then tailor your solution to that.

    Also I do recommend using proxmox and zfs.

  • skilltheamps@feddit.org
    link
    fedilink
    English
    arrow-up
    6
    ·
    1 day ago

    You need to ask yourself what properties you want in your storage, then you can judge which solution fits. For me it is:

    • effortless rollback (i.e. in case something with a db updates, does a db migration and fails)
    • effortless backups, that preserve database integrity without slow/cumbersome/downtime-inducing crutches like sql dump
    • a scheme that works the same way for every service I host, no tailored solutions for individual services/containers
    • low maintenance

    The amount of data I’m handling fits on larger harddrives (so I don’t need pools), but I don’t want to waste storage space. And my homeserver is not my learn and break stuff environment anymore, but rather just needs to work.

    I went with btrfs raid 1, every service is in its own subvolume. The containers are precisely referenced by their digest-hashes, which gets snapshotted together with all persistent data. So every snapshot holds exactly the amount of data that is required to do a seamless rollback. Snapper maintains a timeline of snapshots for every service. Updating is semi-automated where it does snapshot -> update digest hash from container tags -> pull new images -> restart service. Nightly offsite backups happen with btrbk, which mirrors snapshots in an incremental fashion on another offsite server with btrfs.