How do you manage multiple machines in different locations. The use case is something like this, i want self hosted different apps in different locations as redundancy. Something like i put one server in my house, one in my dad’s house, couple other in my siblings/friends house. So just in case say machine in my house down or internet down. It can fallback to the other machines. I was thinking using docker swarm on multiple raspberry pis. But opening port on router seems not secure at all. How do i connect those machine together? Should i put wireguard on server # 1 and other servers will connect to that server. But if the network/machine failed on thar server; everything else will not work.
Tailscale might be the best bet at this point. It will manage the wireguard mesh for you, and use nat holepunching for handshaking instead of needing listening ports.
This, or slackhq/nebula
And enable subnet routing on the Pi.
I’ve done this, it works very well. And since a Pi is small, you can keep a “hot spare” ready to send to anyone.