First my specific questions, down below more info:

  • how do you use ansible? Is there a good source for roles or playbooks to set up services? I feel like ansible is 30% more headache right now during config.
  • how do you deal with motivation loss?
  • how do you deal with the overwhelming amount of choices and information and disciplines (networking, storage, VMS, Linux…) that comes with selfhosting?
  • how do you find the sweetspot between ease of use, ease of set up, security, redundancy? I feel like I am maybe too pranaoid to loose my data again (dropped a hard drive many years back, I lost all of my projects)
  • maybe overall, how do you manage your perfectionism?

Thanks a lot! I hope you have some insights for me.


More info

Soo I have a motivational push to work on my server every few months for a few weeks or months. I always make progress and I feel like I landed on a good solution by now. Its the third time I redid my setup, everytime I got closet to what feels like the perfect setup for me.

I have a vps for headscale, a home server with proxmox for the rest.

Last push I switched from manually configuring and documenting to ansible. I like ansible, but its also a pain and not as fast to set up my server as just installing it and fiddeling around manually until it works.

My problem is: I want to do it right, so my server is robut with enough redundancy to move all my cloud stuff to it. But I am still kind of a noob and still learning and figuring things out.

My fear is, that if i don’t document well or not use ansible, I will be hating my life once my server dies and I have to restore my data and also set um my services again in a few years.

So ansible seems like the only valid choice here, together with proxmox to be as flexible and future proof. But I am burnt out again and lost Motivation even though I am close to my first goals and running services.

Thank you for reading :)

  • frongt@lemmy.zip
    link
    fedilink
    English
    arrow-up
    4
    ·
    14 days ago

    I just aim for “good enough”. Does it work, does it meet my needs? That’s good enough, even if it isn’t exactly the right way.

    Like right now I have a system that needs manual intervention if I shut it down, or it’ll come back up non-functional. But it works well enough so I’ll just fix that eventually. I like to spend my free time doing more social or productive stuff.

  • [object Object]@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    ·
    14 days ago

    My motivation to use Ansible is fueled by disdain for manual non-scriptable configuration. I’ve had to use Windows for a couple years lately, and the absence of programmatic access to many things annoyed me to no end.

    Now, I get up in the morning and look to the east. I salute the sun and thank the fate for the chance to do proper configuration again. I don’t wade through dialogs for hours anymore. I don’t lose track of things that I’ve changed somewhere sometime. I’ll learn what the hell the difference between dconf and gsettings is, just to use one of them for all my desktop settings forever. I will have this config for years to come, and I will put more things in it bit by bit.

    Now, if Ansible’s config language wasn’t a naive reinvention of Lisp, that would be great.

  • Jade@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    14 days ago

    My personal selfhosting repo is just about 2 years old with 750 commits now, and probably more than 60 containers running. It’s not because of one great effort or design or anything, just setting up a service or two when I find it interesting every few weeks, and trying to make all my setup consistent. Almost everything is deployed as a container run by Podman quadlets, files mounted in /var/opt, config etc copied into place by an ansible script. But not everything, sometimes getting it working was easier without the sensible or I needed to do some funny networking.

    TLDR: Coming back again later, and making that easier.

  • JTode@lemmy.world
    link
    fedilink
    English
    arrow-up
    1
    ·
    13 days ago

    It’s great to give your brain daily workouts on the ins and outs of systems, but if you’re feeling burnt out, you’re doing that too much, probably, and my guess is, it’s coming in at moments when you were trying to solve some other, more interesting/relevant problem.

    It comes down to whether you’re trying to self-host, or trying to learn Linux at a level where you could get a job doing it. Often it’s a bit of both, so don’t feel like you need to make that decision right now.

    But my advice: whatever you’re hosting, use their recommended easy way to host it. In most cases, this means running a container. In most cases, Docker. If you can wrap your head around using docker compose files, your practical problems are reduced by an insane amount, and idiocy at the developer level becomes your only concern. For instance, I used to run Tandoor, but the dev pushed changes into their “stable” docker container that failed to properly migrate my data, and the whole thing cacked. But that wasn’t a system problem on my end, it was a case of a dev who was more interested in playing around with data than with providing a stable app.

    So, if you take this approach, which I absolutely do recommend, the one thing you need to be sure of is that you have a good backup strategy, and that you backup before you do any pulls of new images. Docker allows you to select old versions so if you don’t like changes that get pushed on something, likely you can just rebuild the old version, but the changes might mess with your database migrations, so you need those backups. Other than that, you cannot go wrong with Docker, if you just want the damn thing to work, rather than get daily aggravating lessons in esoteric systems problems which are above your paygrade.

  • tobz619@lemmy.world
    link
    fedilink
    English
    arrow-up
    2
    arrow-down
    1
    ·
    14 days ago

    Don’t use Ansible and use Nix instead.

    Seriously though give yourself time and a solid goals you want to achieve, it’ll take time and it’ll be worth it as

    • rtxn@lemmy.world
      link
      fedilink
      English
      arrow-up
      5
      ·
      14 days ago

      Is this what normies feel like when Linux users tell them to just use Linux? I have some apologies to make.

    • JTode@lemmy.world
      link
      fedilink
      English
      arrow-up
      1
      ·
      13 days ago

      Nix is fun when you’re ready for it, but the only Systems noobs that should consider it are people who are already programmers in some other milieu, because Nix is specifically for people who think like programmers. This is not a bad thing, if you have learned to think that way it’s a joy on many levels, but at this point in time, unless this is 100% hobby, it’s not the best use of your time.

      • Sightline@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        14 days ago

        Nix has issues, personally I’m using an immutable distro. Right now I can go upstairs and yank the power and it’ll boot right back up like nothing ever happened.

        I want something rock solid, and neither Ansible or NixOS provide that. Here’s the article that I took inspiration from: https://words.filippo.io/frood/

        • non_burglar@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          ·
          13 days ago

          I love alpine, and I use it where I can. And it has many advantages over other distros and setups. But a declarative, ram-only distro that boots over the network doesn’t help manage non-conformant machines.

          I still need to manage Debian, old centos boxes, Ubuntu machines, and a couple old-as-time sun machines. Nixos isn’t the tool for that job. Ansible has two dependencies: ssh and python, and there are ways around the 2nd one. Ansible works really well here.

          Not trying to bash nixos, here, but I’m not sure why so many users on Lemmy compare ansible and nix, they don’t really operate in the same spaces.