[jira] [Comment Edited] (MESOS-9040) Break scheduler driver dependency on mesos-local.

2018-07-05 Thread Till Toenshoff (JIRA)


[ 
https://issues.apache.org/jira/browse/MESOS-9040?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16534291#comment-16534291
 ] 

Till Toenshoff edited comment on MESOS-9040 at 7/5/18 11:46 PM:


[~jamespeach] one reason on why it was likely not that popular in the past was 
that several of our examples missed to implement the {{master}} flag 
accordingly. I did at some point set that straight by  
[73f6522|https://github.com/apache/mesos/commit/73f6522905db5114d1bd6d99a3bab0793b14b86d].

I still believe that this was a nice feature (hence my efforts) but I also see 
how this renders a not so clean dependency tree. But, as you can see in my 
commit, there is more done in the examples to make the entire feature perfectly 
convenient - no need for manually setting up ACLs, derived roles and 
authentication. It does indeed decrease friction a lot, especially for newbies.

I can see the following options;
 # Kill that feature
 # Have an additional (convenience) library for use in the examples that 
provide this feature as Ben suggested
 # Let the driver fork-exec towards `mesos-local` when signaled to do so 
without reaping it - but then we need to get the bound IP... not sure how
 # Leave as is

I currently like (3) as it solves the linkage issue while still leaving the 
feature intact - just how do we do that properly.

Please note that the scheduler library also implements this feature, not just 
the scheduler driver. See 
[https://github.com/apache/mesos/blob/16455857ee00e98147d8cb9fb6f31b22554dfe52/src/scheduler/scheduler.cpp#L191-L196]


was (Author: tillt):
[~jamespeach] one reason on why it was likely not that popular in the past was 
that several of our examples missed to implement the {{master}} flag 
accordingly. I did at some point set that straight by  
[73f6522|https://github.com/apache/mesos/commit/73f6522905db5114d1bd6d99a3bab0793b14b86d].

I still believe that this was a nice feature (hence my efforts) but I also see 
how this renders a not so clean dependency tree. But, as you can see in my 
commit, there is more done in the examples to make the entire feature perfectly 
convenient - no need for manually setting up ACLs, derived roles and 
authentication. It does indeed decrease friction a lot, especially for newbies.

I can see the following options;
 # Kill that feature
 # Have an additional (convenience) library for use in the examples that 
provide this feature as Ben suggested
 # Let the driver fork-exec towards `mesos-local` when signaled to do so 
without reaping it
 # Leave as is

I currently like (3) as it solves the linkage issue while still leaving the 
feature intact.

Please note that the scheduler library also implements this feature, not just 
the scheduler driver. See 
[https://github.com/apache/mesos/blob/16455857ee00e98147d8cb9fb6f31b22554dfe52/src/scheduler/scheduler.cpp#L191-L196]

> Break scheduler driver dependency on mesos-local.
> -
>
> Key: MESOS-9040
> URL: https://issues.apache.org/jira/browse/MESOS-9040
> Project: Mesos
>  Issue Type: Task
>  Components: build, scheduler driver
>Reporter: James Peach
>Priority: Minor
>
> The scheduler driver in {{src/sched/sched.cpp}} has some special dependencies 
> on the {{mesos-local}} code. This seems fairly hacky, but it also causes 
> binary dependencies on {{src/local/local.cpp}} to be dragged into 
> {{libmesos.so}}. {{libmesos.so}} would not otherwise require this code, which 
> could be isolated in the {{mesos-local}} command.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Comment Edited] (MESOS-9040) Break scheduler driver dependency on mesos-local.

2018-07-05 Thread Till Toenshoff (JIRA)


[ 
https://issues.apache.org/jira/browse/MESOS-9040?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16534291#comment-16534291
 ] 

Till Toenshoff edited comment on MESOS-9040 at 7/5/18 11:43 PM:


[~jamespeach] one reason on why it was likely not that popular in the past was 
that several of our examples missed to implement the {{master}} flag 
accordingly. I did at some point set that straight by  
[73f6522|https://github.com/apache/mesos/commit/73f6522905db5114d1bd6d99a3bab0793b14b86d].

I still believe that this was a nice feature (hence my efforts) but I also see 
how this renders a not so clean dependency tree. But, as you can see in my 
commit, there is more done in the examples to make the entire feature perfectly 
convenient - no need for manually setting up ACLs, derived roles and 
authentication. It does indeed decrease friction a lot, especially for newbies.

I can see the following options;
 # Kill that feature
 # Have an additional (convenience) library for use in the examples that 
provide this feature as Ben suggested
 # Let the driver fork-exec towards `mesos-local` when signaled to do so 
without reaping it
 # Leave as is

I currently like (3) as it solves the linkage issue while still leaving the 
feature intact.

Please note that the scheduler library also implements this feature, not just 
the scheduler driver. See 
[https://github.com/apache/mesos/blob/16455857ee00e98147d8cb9fb6f31b22554dfe52/src/scheduler/scheduler.cpp#L191-L196]


was (Author: tillt):
[~jamespeach] one reason on why it was likely not that popular in the past was 
that several of our examples missed to implement the {{master}} flag 
accordingly. I did at some point set that straight by  
[73f6522|[https://github.com/apache/mesos/commit/73f6522905db5114d1bd6d99a3bab0793b14b86d].]

I still believe that this was a nice feature (hence my efforts) but I also see 
how this renders a not so clean dependency tree. But, as you can see in my 
commit, there is more done in the examples to make the entire feature perfectly 
convenient - no need for manually setting up ACLs, derived roles and 
authentication. It does indeed decrease friction a lot, especially for newbies.

I can see the following options;
 # Kill that feature
 # Have an additional (convenience) library for use in the examples that 
provide this feature as Ben suggested
 # Let the driver fork-exec towards `mesos-local` when signaled to do so 
without reaping it
 # Leave as is

I currently like (3) as it solves the linkage issue while still leaving the 
feature intact.

Please note that the scheduler library also implements this feature, not just 
the scheduler driver. See 
https://github.com/apache/mesos/blob/16455857ee00e98147d8cb9fb6f31b22554dfe52/src/scheduler/scheduler.cpp#L191-L196

> Break scheduler driver dependency on mesos-local.
> -
>
> Key: MESOS-9040
> URL: https://issues.apache.org/jira/browse/MESOS-9040
> Project: Mesos
>  Issue Type: Task
>  Components: build, scheduler driver
>Reporter: James Peach
>Priority: Minor
>
> The scheduler driver in {{src/sched/sched.cpp}} has some special dependencies 
> on the {{mesos-local}} code. This seems fairly hacky, but it also causes 
> binary dependencies on {{src/local/local.cpp}} to be dragged into 
> {{libmesos.so}}. {{libmesos.so}} would not otherwise require this code, which 
> could be isolated in the {{mesos-local}} command.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)


[jira] [Comment Edited] (MESOS-9040) Break scheduler driver dependency on mesos-local.

2018-07-03 Thread James Peach (JIRA)


[ 
https://issues.apache.org/jira/browse/MESOS-9040?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel=16530919#comment-16530919
 ] 

James Peach edited comment on MESOS-9040 at 7/3/18 7:25 AM:


{quote}
It is a convenience thing meant for framework developers - maybe we can achieve 
the same by exec'ing the mesos-local runnable if desired.
{quote}

Hmm, I never knew that. Our framework developers certainly don't know about it 
either. Do you know of anyone who does use it? Is there anything I can run to 
experiment with it?

If framework developers wanted to use {{mesos-local}}, why wouldn't they just 
exec the `mesos-local` process in their CI? 


was (Author: jamespeach):
{quote}
It is a convenience thing meant for framework developers - maybe we can achieve 
the same by exec'ing the mesos-local runnable if desired.
{quote}

Hmm, I never knew that. Our framework developers certainly don't know about it 
either. Do you know of anyone who does use it? Is there anything I can run to 
experiment with it?

If framework developers wanted to use {{mesos-local}}, why wouldn't they just 
exec the `mesos-local` process i their CI? 

> Break scheduler driver dependency on mesos-local.
> -
>
> Key: MESOS-9040
> URL: https://issues.apache.org/jira/browse/MESOS-9040
> Project: Mesos
>  Issue Type: Task
>  Components: build, scheduler driver
>Reporter: James Peach
>Priority: Minor
>
> The scheduler driver in {{src/sched/sched.cpp}} has some special dependencies 
> on the {{mesos-local}} code. This seems fairly hacky, but it also causes 
> binary dependencies on {{src/local/local.cpp}} to be dragged into 
> {{libmesos.so}}. {{libmesos.so}} would not otherwise require this code, which 
> could be isolated in the {{mesos-local}} command.



--
This message was sent by Atlassian JIRA
(v7.6.3#76005)