1

I was looking at Mesos + Marathon to manage Docker containers.

What we're trying to achieve is a way of getting an external DNS entry (test.example.com) to point to a specific set of docker containers. The DNS entry for test.example.com points to a load balancer which translate and send the connection to one of our backend servers app.

To do this I looked into Mesos-dns. With mesos-dns I can get DNS name for each container and can resolve DNS with container IP but couldn't find out way to load balance between set of servers.

Can someone confirm if Mesos-dns provides load balancing? If yes, how can I achieve load balancing with it?

Do I need to use some other solutions like HAProxy or Bamboo to achieve this?

Thanks!!

Sumit

ssuummit
  • 45
  • 6

1 Answers1

1

Yes with Mesos-DNS you can do load balancing, see for example the respective HTTP API endpoints, but it's really not recommended in the context of DC/OS: see the internal (Minuteman) and external (Marathon-lb, HAProxy-based) load balancing and service discover options in the docs.

Michael Hausenblas
  • 13,162
  • 4
  • 52
  • 66
  • Hi Michael, I have seen the [HTTP API](http://mesosphere.github.io/mesos-dns/docs/http.html) endpoints example, but with this implementation I have to mention port with dns to access my application deployed on different nodes and port will be different for each app instance on node. To have common port I need to define service port while creating application in marathon. To access app though service port I need HAProxy. So I guess only with Mesos-DNS its not possible to achieve load balancing, I need either Maraton-lb, HAProxy or some other solution on top of it. Correct me if I am wrong. – ssuummit May 31 '16 at 19:16
  • Well yes, you need some additional logic to achieve this, so better to use the mentioned alternatives. – Michael Hausenblas May 31 '16 at 20:34