I have recently inherited a micro-services architecture deployed on AWS ECS using Application Load Balancers and Route-53 to handle service discovery and decided that consul would be simpler and cheaper for this task.
Our port mappings for services are dynamic and handled by ECS so A records won't work for DNS as they are missing the port.
What is the typical approach for using SRV records for DNS within services?
To build on that is consul the right tool for this job or is this a sign of some other underlying architectural issue as it seems that SRV records are not a standard use-case.
SRV records are useful for applications or scripts that can query them (e.g. client-side load balancing).
You can use Consul for your microservices setup together with a Consul aware load balancer such as https://traefik.io/ or https://github.com/fabiolb/fabio. - put an AWS load balancer in front of multiple instances of fabio/traefik/... and route all traffic to it.