DNS Management Tool
A robust and mission-critical tool that is used to manage all the DNS servers, internal & external zones and templatized workflows for switching during an outage or planned maintenance.
Worked On
UX, UI, Backend development, Testing, Deployment
Tech Stack
Java, Struts, BashScript, MySQL, VanillaJS, CSS
Date
March, 2016
Challenge
Being a critical tool, failures will result in a global outage of Zoho services. Detailed planning, design and implementation from scratch covering all edge-case scenarios in the DNS domain.
Solution
Learnt about DNS and its management. Designed the architecture and built the backend service using Java, utilizing its battle-tested multi-threading capabilities.
![case-details](https://harishsakthi.com/images/portfolio/zoho/dns-mgmt.webp)
Zoho used to manage all the DNS servers, internal and external zone files manually. Considering the scale of the applications running in Zoho’s Datacenters spanning continents, proactive measures had to be in place in case of any unforeseen disasters. Manual measures did not have the agility and always had a risk of human error causing complete outages.
We came up with the idea of building a tool, which would completely own this piece of Infrastructure and elevate the NOC team to take up other challenging tasks. It initially started with parsing & importing DNS Zone files into the system. Then we provided an option to validate the zone file for any errors before deploying them to DNS resolvers, this identified a lot of manual misconfigurations and built high confidence in the tool.
Immediately, the scope extended to DNS server management across multiple Data Centers. We envisioned creating a templatized workflow that can be dynamically built and applied for multiple use-cases like planned maintenance, DC Switching, Disaster Outage, Geo resolving, etc. This proved very helpful and we were able to bring the actual DNS switching activity window from 3 days to just a few seconds + 5 minutes for DNS propagation across the world.