1. 13
  1.  

  2. 2

    A question borne out of curiosity: What does Ansible and Kubes get you for a small homelab setup over well-managed and behaved systemd units run on one Linux install deployed with something like nixops?

    1. 2

      You can think of ansible as the equivalent to nixops in the realm of stateful system management. Both provide secrets management, orchestration across multiple machines and varying degrees of infra as code. The main difference to nixops is that it works across operating system boundaries without remote builder setups.

      1. 2

        The main difference to nixops is that it works across operating system boundaries

        That’s what I’ve experienced in my (albeit limited) ansible experience. You can generally point it at an existing install and it’ll do the “right thing”.

        without remote builder setups

        Do you really need a remote builder for nixops? I’ve had good experience with local builds. Provided, you need to have a beefy enough build machine if things get complicated, but I guess that’s what the binary caches are for. Is that what you mean?

        1. 1

          Do you really need a remote builder for nixops?

          I tried using it to provision a Linux box from a Darwin machine; cross-compilation is quite messy. (Also I’d recommend nixus, it’s far less annoying to operate than nixops!)

      2. 1

        Depends on what your goals are for the homelab. In my case I like the chance to try to understand tools I use at work better at home.

        Several years ago, my company was moving from Puppet to Ansible for our infrastructure management several years ago and I spent some weeks writing Ansible roles in different ways for each component of my homelab. It grew my skillset and I didn’t have to waste a lot of billable hours on learning a new tool.

        Similarly with Kubernetes, which we’re currently implementing to host our web applications, I’ve been writing my own Dockerfiles and standing them up in a minikube instance at home to get a feel for the environment.

        1. 1

          It grew my skillset and I didn’t have to waste a lot of billable hours on learning a new tool.

          Why is that a good thing? Are you expected to know everything at work?

          1. 1

            No? But it sure does make me a much more effective and valuable part of my team. And I like learning?

            1. 1

              If you’re billing hourly, usually yes.