Pradeep, We recently open sourced Fenzo <https://github.com/Netflix/Fenzo> (wiki <https://github.com/Netflix/Fenzo/wiki>) to handle these scenarios. We add a custom attribute for network bandwidth for each agent's "mesos-slave" command line. And we have Fenzo assign resources to tasks based on CPU, memory, disk, ports, and network bandwidth requirements. With Fenzo you can define affinity, locality, and any other custom scheduling objectives using plugins. Some of the plugins are already built in. It is also easy to add additional plugins to cover other objectives you care about.
"Dependencies" can mean multiple things. Do you mean dependencies on certain attributes of resources/agents? Dependencies on where other tasks are assigned? All of these are covered. However, if you mean workflow type of dependencies on completion of other tasks, then, there are no built in plugins. You could write one using Fenzo. It is also common for such workflow dependencies to be covered by an entity external to the scheduler. Both techniques can be made to work. Fenzo has the concept of hard Vs soft constraints. You could specify, for example, resource affinity and/or task locality as a soft constraint or a hard constraint. See the wiki docs link I provided above for details. Sharma On Mon, Oct 5, 2015 at 8:21 AM, Pradeep Kiruvale <[email protected]> wrote: > Hi All, > > Are there any frameworks that exists with the Mesos to schedule the bigger > apps? > I mean to say scheduling a app which has many services and will not fit > into one physical node. > > Is there any frame work that can be used to > schedule tasks based on the underlying hardware constraints like Network > bandwidth ? > Schedule the tasks based on their dependencies and proximity to each > other in a cluster or a rack? > > Thanks & Regards, > Pradeep >

