One of the awesome things about being in the Kubernetes community is the constant evolution of technologies in the space. There’s so much purposeful technical innovation that it’s nearly impossible to keep an eye on every useful project. One such project that recently escaped my notice is the ExternalDNS subproject. During a recent POC, a member of the organization to whom we were speaking asked about it. I promised to give the subproject a go and I was really impressed.
The ExternalDNS subproject
This subproject (the incubator process has been deprecated), sponsored by sig-network and championed by Tim Hockin, is designed to automatically configure cloud DNS providers. This is important because it further enables infrastructure automation allowing DNS configuration to be accomplished directly alongside application deployment.
Unlike a traditional enterprise deployment model where multiple siloed business units handle different parts of the deployment process, Kubernetes with ExternalDNS automates this part of the process. This removes the potentially aggravating process of having a piece of software ready to go while waiting for another business unit to hand-configure DNS. The collaboration via automation and shared responsibility that can happen with this technology prevents manual configuration errors and enables all parties to more efficiently get their products to market.
ExternalDNS Configuration and Deployment on AKS
Those of you who know me, know that I spent many years as a software developer in the .NET space. I have a special place in my heart for the Microsoft developer community and as such I have spent much of the last couple of years sharing Kubernetes on Azure via Azure Container Service and Azure Kubernetes Service with the user groups and meetups in the Philadelphia region. It just so happens the persons asking me about ExternalDNS are leveraging Azure as an IaaS offering. So, I decided to spin up ExternalDNS on an AKS cluster. For step by step instructions and helper code check out this repository. If you’re using a different provider, you may still find these instructions useful. Check out the ExternalDNS repository for more information.