Currently, Mesos does fair sharing on a per user basis, and then on a per framework basis within a given user's share. So, in your example where Bob launches 5 framework and Jane launches 1, Jane's framework can expect to get half of the cluster while Bob's frameworks can each expect 10% of the cluster.
Additionally, it is true that if one user doesn't use their fair share of the cluster, the extra resources will be offered to other users. However, there's currently no way for resources to be revoked once a framework has accepted them, so if Bob is using 95% of the cluster and Jane is using 5% and then launches more frameworks, those frameworks will not receive any resources until one of the already running frameworks has a task complete and returns the resources that the task was using. Of course, this could be problematic in an open cluster where you can't trust frameworks to behave responsibly, and implementing revocation is definitely on Mesos's dev team's to do list, but I wouldn't expect it too soon, since the top priority for the allocator right now are static allocations and new policies (for example, weighted fair sharing). However, the allocator has been specifically designed to be easy to swap new ones in, so if you want to write any kind of new allocation policies, we'd love to take a lot at them and consider including them in trunk, On Mon, Apr 15, 2013 at 2:26 PM, David Greenberg <[email protected]>wrote: > Does anyone have any input on this? I'm working on setting up a mesos > cluster on around 100 machines, serving around 70 users, and I'm trying to > understand whether I need to look into implementing fair-sharing on a > per-user instead of per-framework basis. > > > On Fri, Apr 12, 2013 at 10:26 AM, David Greenberg <[email protected] > >wrote: > > > Does the master do fair sharing between all frameworks? Or is it credited > > by user, so that two uses Bob and Jane each get 50% of the resources even > > though Bob launched 5 frameworks and Jane only launched 1 framework? > > > > Also, is it true that if Jane's framework only uses 5% of the cluster's > > resources, Bob gets to use the other 95%, but if Jane launched several > more > > frameworks, then the 45% of the cluster that Bob has over-committed gets > > automatically killed, and Jane gets to use that? > > > -- Thanks, Thomas Marshall (510) 244-2487
