we use the HAProxy configurator script bundled with marathon to bind
applications to ports :
https://github.com/mesosphere/marathon/blob/master/bin/haproxy-marathon-bridge
HAProxy runs on every mesos slave and each marathon app is then
available on every slave at the port(s) declared in the marathon API on
localhost (or the docker container gateway host)
this is working fine for the short-lived connections of multi-layer HTTP
apps, and also long-lived TCP connections between logstash-forwarder and
logstash
:craig
On 22 Jan 2015, at 17:52, Gallagher Polyn wrote:
Hi,
My goal has been to develop multi-container docker applications
locally and expect their seamless introduction to production
environments (wow.)
I have done a POC for my goal with fig and Kubernetes, and I enjoy
that I can depend on standard service ip/port environment variables to
be present. (Similarly, I see that efforts resembling Jeff Lindsay’s
approaches with docker + consul also rely on standard ip/port
environment variables.)
Given the foregoing, can mesos-dns + mesos (possibly, mesosphere’s
marathon) + docker be configured to emulate Kubernetes’ style of
service discovery, i.e., no responsibility for DNS resolution in an
application consuming other services via TCP?
Thanks,
Gallagher