3 ms·
things like naming, load balancing and service discovery can be done by a well managed dynamic dns system monitoring / "circuit breakers" would probably requir
by blibble 10y ago
things like naming, load balancing and service discovery can be done by a well managed dynamic dns system
monitoring / "circuit breakers" would probably require a proxy I guess
- theossuary 10y agoThe CNCF also has [coredns.io](https://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.
- sagichmal 10y agoSpeaking 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.
- blibble 10y agoas 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
- totally 10y ago> well managed dynamic dns system oxymoron?
- emmelaich 10y agoYeah, that's the problem typically. In most large corps the DNS is broken and difficult to change.
- kilotaras 10y agolinkerd 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-kubernetes-part-iv-continuous-deployment-via-traffic-shifting/ https://blog.buoyant.io/2016/11/04/a-service-mesh-for-kubern... [2] https://blog.buoyant.io/2017/03/14/a-service-mesh-for-kubernetes-part-vii-distributed-tracing-made-easy/ https://blog.buoyant.io/2017/03/14/a-service-mesh-for-kubern...