Follow instructions below to setup and test ExternalDNS. Make sure to add IAM role as described in the References section before following steps below. Also, read the limitations of ExternalDNS here.
- Update
--domain-filter
argument inexternaldns.yaml
and then run:
./install-externaldns.sh
- If you would like to deploy an Nginx webserver as a test service, update
annotations
intestservice.yaml
and run:
./test-deploy.sh
- Route 53 should have an updated DNS record for the service deployed above.
Following are some limitations with ExternalDNS at the time of writing:
- ExternalDNS is not currently capable of setting routing policies as per this. Due to this limitation, latency based routing will have to be manually set on AWS Console.
- When deploying to multiple regions, note that only one region will have an A record set on Route53. It seems that ExternalDNS cannot set multiple records of the same type (multiple A records with different aliases). This limitation was overcome by manually setting A records using AWS console. This issue will need to be revisited in the future. Refer to this for more info.