External DNS Operator for Kubernetes is a Kubernetes operator that manages external DNS records for Kubernetes services.
The focus is on making it easy to configure and use.
Download the sample secret file and fill in the required credentials for your DNS provider:
curl -o dnscreds.yaml https://raw.githubusercontent.com/EllipticConsulting/kubernetes-external-dns-operator/main/deploy/credsample.yaml
kubectl apply -n edns-operator -f dnscreds.yaml
kubectl apply -f https://raw.githubusercontent.com/EllipticConsulting/kubernetes-external-dns-operator/main/deploy/crd.yaml
kubectl apply -f https://raw.githubusercontent.com/EllipticConsulting/kubernetes-external-dns-operator/main/deploy/rbac.yaml
kubectl apply -n edns-operator -f https://raw.githubusercontent.com/EllipticConsulting/kubernetes-external-dns-operator/main/deploy/operator.yaml
That's it! The operator is now running in the edns-operator
namespace.
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: kuard-ingress
annotations:
elliptic.external.dns/hostname: kuard.acme.com
elliptic.external.dns/record.type: A
elliptic.external.dns/ttl: "120"
elliptic.external.dns/zoneid: "Z013124234"
elliptic.external.dns/provider: "aws"
elliptic.external.dns/value: "8.8.8.8"
spec:
ingressClassName: nginx
rules:
- host: kuard.acme.com
http:
paths:
- backend:
service:
name: kuard
port:
number: 80
path: /
pathType: Prefix
If you believe you have discovered a bug or need some help, please open an issue. Please remember to provide a good summary, description as well as steps to reproduce the issue.