Speaking as someone who has successfully implemented service discovery and load balancing using DNS and DNSSRV, let me emphatically state that these are not the right tools for the job. They are slow, client support is so variable it can only be called broken, and they're extremely difficult to rationalize and debug.
as a counter example I've implemented it myself for non-trivial systems using short TTL SRV records, and it's worked very well indeed
you can use existing tools to introspect state (e.g. dig), and with sufficient logging it's perfectly debuggable
Re:Linkerd 1.0
by theossuary on Tuesday April 25, 2017 @03:28PM
(#14197146)
The CNCF also has [coredns.io](https://coredns.io/), which I think fits the use-case you describe well. I actually really like the concept behind linkerd, it makes a lot of sense when used in conjunction with Kubernetes.
linkerd contains some advanced features, that are not easily solvable with DNS.
By sending specific headers (and having your application forward them) one can have per request routing[1] and/or tracing[2].
[1] https://blog.buoyant.io/2016/11/04/a-service-mesh-for-kubern...
[2] https://blog.buoyant.io/2017/03/14/a-service-mesh-for-kubern...
> well managed dynamic dns system
oxymoron?
monitoring / "circuit breakers" would probably require a proxy I guess