Hi, Benjamin:

Thanks for the feedback.
I agree your statement, Marathon is only a management layer over Mesos.

But, we can run a framework on Mesos via invoking Marathon's REST API.
How does this happen?  I think Marathon internally calls Mesos's API to
start the framework.  But I don't see Mesos REST API to create a
framework.  I only know to run a framework via "mesos-execute" command.

Or maybe Marathon implements its own scheduler, and execute a framework by
itself?

Thanks
Wenzhao


On Fri, Jul 21, 2017 at 8:28 AM, Benjamin Bannier <
[email protected]> wrote:

> Hi Wenzhao,
>
> I am not sure I understand you exactly.
>
> All Mesos tasks (the stuff running on and managed by Mesos agents) always
> belong to a framework; this framework launches and supervises them, and
> manages their lifetime. It is not possible to start tasks without a
> framework.
>
> Marathon is a framework. Usually the framework process is not started as a
> Mesos task, but instead started by e.g., init.d/systemd, so the framework
> itself is not supervised by Mesos. Users can start Mesos tasks by e.g.,
> hitting Marathon endpoints. Marathon then starts a task with Mesos and
> makes sure that the task keeps running (similar to how e.g., systemd might
> make sure that the Marathon framework process is running).
>
> Frameworks can talk to Mesos with two different APIs (often called v0 and
> v1); v0 is a C++ API while v1 communicates over HTTP. v1 is not a REST API.
>
> To launch Mesos tasks you will need a framework. You can either write a
> framework yourself, or use an existing one (there’s one list of some
> frameworks here, https://mesos.apache.org/documentation/latest/frameworks/
> ).
>
>
> Cheers,
>
> Benjamin

Reply via email to