Hi,
you are right, network interface handling should probably be done in Mesos.
However, I thought Aurora could simply expose the information it already has
about the slave, for example in form of new thermos variables such as
{{mesos.hostname}} and {{mesos.ip}}.
For now, we will stick to our workaround with a config file in /etc. It will do
the trick for the foreseeable future.
Best Regards,
Stephan
________________________________________
From: Zameer Manji <[email protected]>
Sent: Saturday, April 4, 2015 12:10 AM
To: [email protected]
Subject: Re: Pass slave-ip to user process
Hey,
I don't think there is a way to solve this problem currently in Aurora. I
think a problem of this nature would be better solved by the Mesos devs.
Ideally through FS isolation or containerization method operators can
select which network interface is available to user applications.
I think the next step would be to file a MESOS ticket and see what the
developers there think.
On Mon, Mar 30, 2015 at 7:28 AM, Erb, Stephan <[email protected]>
wrote:
> Hi everyone,
>
> we are running our Mesos slaves on hosts with multiple network interfaces
> and would like to specifically bind started services to the ip used to
> start the Mesos slave (as specified via --ip).
>
> Mesos seems to export this ip via the LIBPROCESS_IP environment variable.
> However thermos is explicitly overwriting the environment [1].
>
> As a workaround, we are reading a global config in /etc, but with
> progressing disk isolation in Mesos this does not seem like a good long
> term solution.
>
> Any ideas how to properly solve this problem in Aurora?
>
> Regards,
> Stephan
>
> [1]
> https://github.com/apache/aurora/blob/master/src/main/python/apache/thermos/core/process.py#L341
>
> --
> Zameer Manji
>
>
> <https://github.com/apache/aurora/blob/master/src/main/python/apache/thermos/core/process.py#L341>