Proof of Concept: Multi-server support #1679
Veratil
started this conversation in
Show and tell
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hi all, I spent a little bit of time seeing the minimal amount of changes needed to support multiple DNS servers. It turns out it's not too much change.
Details:
The main thing was converting the Server object to a database model, and with that I added a
name
field so you don't have to track URLs. After that was updating the Domain model to attach it to a Server. The rest was making sure that the server was identified with the domain (minimal change after all). So some/domain/<domain_name>
paths I changed to/domain/<server_name>/<domain_name>
and similar around the codebase. After that I wanted to confirm the Dashboard would be able to tell you which server a domain was under, so a new column was added there to show the server name. And finally I confirmed that I was able to add/update/remove records.I did not change anything with Accounts or Users, but the model for that would need to change slightly as well to properly support multiple servers.
Future ideas when dealing with multiple servers:
You may want a domain to be replicated across multiple servers. Instead of a domain being owned by a single server, it could be owned by many and any changes made to the domain in PDA would be pushed to all servers.
TL;DR:
I put everything under a single commit to get a wide view changeset, and left commented out code around as well (please forgive 🙏).
https://github.com/Veratil/PowerDNS-Admin/tree/multiserver
Beta Was this translation helpful? Give feedback.
All reactions