-
Notifications
You must be signed in to change notification settings - Fork 61
Mesos Agents not routeable #401
Comments
@jsmodic Thanks for your report. Could you paste the Marathon file you used? |
I used basically the default file, tweaking the agents resources a bit: minimesos {
} And my Docker version (I tried 1.9.1 as well): docker -v uname -a containersol/mesos-agent 0.25.0-0.2.70.ubuntu1404 49727d9a7b1f 4 weeks ago 468.1 MB |
Ok so you used the default |
Sure, it was just a simple app that looked like (except with the real id / image):
|
hi @jsmodic, Containers with Mesos Agents do not have complete installation of docker. Their binaries use Yes, this setup is different from real Mesos environment, but it gives you access to docker images on the host. Without that Mesos Agent would try to download your Is there a chance you can adjust reporting of IP so it would work in both situations: inside the agent and next to agent? Cheers, |
Ahh, well that makes sense why the IP would not work as it is then, as the containers aren't actually running in the agent. My intention is to use minimesos to test my containers using Marathon / Mesos out of the box, not actually write my own framework. So I'm not in control of the IP reporting. But I can work around it and ignore all the values in Marathon entirely and disable the healthchecks. How do others use minimesos currently to test their frameworks if Mesos is reporting back a value that can't be reached by the framework? Like, if I was writing a Marathon equivalent, it seems I couldn't actually test out the healthcheck functionality unless I had special code to hash it out with Docker directly when running in minimesos and to trust the value when in real mesos. |
@jsmodic Hi John, this issue can be solved by introducing IP-per-task, see http://mesos.apache.org/documentation/latest/networking-for-mesos-managed-containers and https://mesosphere.github.io/marathon/docs/ip-per-task.html I have created an issue for it: #420 in case of Mesos Elasticsearch we use Elasticsearch' internal API to find the endpoints. See https://github.com/mesos/elasticsearch/blob/master/system-test/src/systemTest/java/org/apache/mesos/elasticsearch/systemtest/DiscoverySystemTest.java |
I wonder if this would be solved by simply passing the |
@djosborne Can you add the |
Closing as work is tracked in #420 |
I started up minimesos with the default minimesosFile and created an application in Marathon. That application then registers in Marathon with the Mesos agent IP and host port.
However, that IP / port aren't routeable, so it can't be accessed that way. Also, the Marathon health checks fail for the same reason. The actual container IP / port are accessible though.
I'm not sure if this is intended behavior / minimesos intends to solve this problem, though.
The text was updated successfully, but these errors were encountered: