pier-oliviert / phonebook

Manage DNS Records with Kubernetes
https://pier-oliviert.github.io/phonebook/
Apache License 2.0
59 stars 0 forks source link
developer-tools devops dns dynamic-dns ipv4 ipv6 kubernetes networking operator

Phonebook: Manage DNS Record in Kubernetes

Tests

Phonebook is an operator that helps you manage DNS Record for your cloud provider from within Kubernetes. Using custom resource definitions (CRDs), you can build DNS records in a same manner you would create other resources with Kubernetes.

# This will create a new `A` record `mysubdomain.mytestdomain.com` pointing
# at `127.0.0.1``
apiVersion: se.quencer.io/v1alpha1
kind: DNSRecord
metadata:
  name: dnsrecord-sample
  namespace: phonebook-system
spec:
  zone: mytestdomain.com
  recordType: A
  name: mysubdomain
  ttl: 60
  targets:
    - 127.0.0.1
    - 127.0.0.2 # If provider supports multi-target

Features

Here's a list of all supported providers. If you need a provider that isn't yet supported, create a new issue.

AWS Cloudflare Azure deSEC

Get Started

The documentation has all the information for you to get started with Phonebook.

Special thanks

This project was built out of need, but I also want to give a special thanks to external-dns as that project was a huge inspiration for Phonebook. A lot of the ideas here stem from my usage of external-dns over the years. I have nothing but respect for that project.