I’m currently putting together a server network using Waterfall & Paper running in a Kubernetes cluster. I have a set of servers running in a Statefulset where each server can be referenced via their DNS name, like this:
The one thing I’m noticing here is that because of the way Kubernetes works, the IP address to the individual pods in the Statefulset change when the pod is destroyed and restarted. Within the cluster, the DNS is instantly updated to point to the new IP, and everything should reconnect just fine.
What I’m finding is that Waterfall is unable to connect to the server as soon as the server is restarted. I suspect this is because the IP address of the server has changed and Waterfall is still trying to connect to the old IP. Restarting Waterfall fixes the issue, and it connects normally.
How does Waterfall cache & resolve DNS hostnames? I need it to check with every new connection opened, but it’s not working as I would expect.