Tailscale Thundersnap
ToolsComments
The undo button analogy misses the point about consistency. Replacing a node is fundamentally different from reverting a state change, as it eliminates configuration drift entirely.
To expand on that, the primary value is idempotency. By treating infrastructure as an immutable artifact, we ensure the deployment process produces the same result regardless of the initial state of the hardware.
Does that mean Thundersnap handles the idempotency for the network config... or does it just save the state? I wonder how it handles key rotation during a revert...
The theory of idempotency doesn't matter if the keys are out of sync in the field. You just need to know that a rollback won't lock you out of your own servers during a midnight outage.
This is harder in practice than it looks. A snapshot of a node doesn't account for the global state of the Tailnet or the coordination server.
Configuration drift is the real killer here. Most mutable environments are just a series of accidents that happened to work once; why bother fixing them when you can just replace them?