Kilo is easier to set up and integrates with the pattern of how I want to set up & run all my systems. I get WireGuard mesh "for free" because I run Kubernetes, thanks to Kilo. Your alternatives have no appeal, all involve manual work that I don't have to set up myself, because I am moving towards a better managed, better automated form of existence. Setting up little one off systems is an old dark terrible world.
Same thing with monitoring. Yes, I can and do use ansible to go set up systemd daemons on my workstations, to run local prometheus & node-exporters. Today. But this is one of many things I have to go re-run every time I bring up a new node, new laptop. And if I change configuration, update my ansible scripts, then I have to go update all my nodes, go find each laptop, turn it on, re-run the script on it.
If I want to add another admin to help me operate these systems, a sibling, a lover, they would have to go dig through my scripts to understand what I've done and how I've set things up in my environment.
Kubernetes makes all of this not bad. It provides a centralized top down control of all my systems. If I had kubernetes, I add a node-exporter daemonset, and it'd be running, in a consistent fashion, on every node. If I need to change the configuration latter, I change the daemonset, and it changes on all my laptops, whenever they do boot up. Because it's Kubernetes, there's a practice, a standard way that other operators can see & understand & expect for how I have these concerns managed, it's easy for them to see what daemonsets are running, easy for them to see how they are configured, it'll all look bog standard to any operator.
Nothing stops me from running statsd or whatever. But doing so is a pain in the ass to manage and maintain, and I can not bloody wait to be free of such rubbish unmanaged DIY computer-hugging. I want a better way of operating my pool of resources.
> At least one node in each location must have an IP address that is routable from the other locations. If the locations are in different clouds or private networks, then this must be a public IP address.
Makes it difficult to use you laptop from a coffee shop?
I'm running into this problem now, trying to set up my laptop as a k3s node. I'm still exploring my options, but I probably have to hand-wire up WireGuard on the roadwarrior nodes manually, & I hope/think that might be sufficient, but haven't tried yet.
There is a great VPN mode[1] in Kilo, if I just wanted to connect my laptops or workstations to the k3s cluster.
Might be worth looking into zerotier if what you need is transparent mesh vpn with fairly smart routing (local lan traffic stays local). Never tried to combine it with k8s, so ymmv.
Eh, ok? So set up a mesh vpn, like zerotier - when you close your notebook slack migrates to your workstation?
(I know, you highlighted monitoring - but nothing stops you from running statsd or something on your laptop).