We recently decide to try out the AWS "Aurora" database service in an Amazon VPC.
Aurora provides an address for each specific database instance and a cluster-wide address.
Resolution of this cluster address through Consul stops with a CNAME instead of an A record.
This is on Consul (v0.8.2) is configured with the Amazon-provided DNS recursor for our VPC and dnsmasq.
Given the popularity of the Aurora service, I'm hoping that somebody has already worked through this situation.
A "db" service in Consul configured with the **instance** address/endpoint:
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.43.amzn1 <<>> db.service.consul
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 487
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;db.service.consul. IN A
;; ANSWER SECTION:
A "db" service in Consul configured with the **cluster** address/endpoint:
; <<>> DiG 9.8.2rc1-RedHat-9.8.2-0.37.rc1.43.amzn1 <<>> db.service.consul
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 48735
;; flags: qr aa rd ra; QUERY: 1, ANSWER: 3, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;db.service.consul. IN A
;; ANSWER SECTION:
Clients connecting via the consul dns using this second configuration fail due to the missing A record.