~ 2 min read
Automating my personal DNS setup, part 1
Written by Brie Carranza
This is a quick first pass at a very overdue effort.
In August 2009, I accepted my first post-college job working at a Web hosting company that also operated as a domain name registrar. I worked nights and found myself using whois
to find fun domains. I began collecting domain names as so many of my friends and peers have.
Fast forward many moons and I have retained a fairly reasonable number of domain names. While the number is reasonable, subdomains abound and I would very much like to reap the benefits of Infrastructure as code (IaC) to make managing these domains a bit easier.
For the first pass at this effort, I chose four domains across two DNS providers.
π§ Tools
-
DNS providers
- Cloudflare
- Google Cloud DNS
-
- Version control + CI for IaC Scanning
-
Infracost
- The Infracost GitLab CI template is awesome! π
-
Terraform
π Notes
The project is at: gitlab.com/brie/infra.
This manages the DNS records for:
carranza.engineer
sunflower.gallery
termmarc.com
unicorns.run
I use the standard Terraform workflow:
vim foo.tf
terraform plan -out tf.plan
terraform apply
I set up Infracost to get automated cost summaries like this (not super interesting) one in merge requests.
β¨ Wish List
For parts 2 and beyond.
- Provide credentials as masked and protected secrets to permit updates to infrastructure to run in GitLab CI
- Manage records in AWS Route 53
- Explore awesome-terraform: incorporate useful and interesting tools.
- Monitoring: I trust
terraform plan
and everything but stillβ¦
About the photo: MEOW WOLF | I very highly recommend a visit to Omega Mart at Meow Wolf Las Vegas.