mesos / chronos

Fault tolerant job scheduler for Mesos which handles dependencies and ISO8601 based schedules
http://mesos.github.io/chronos/
Apache License 2.0
4.38k stars 529 forks source link

Support Oversubscription on a per job and per instance basis. #598

Open JohnOmernik opened 8 years ago

JohnOmernik commented 8 years ago

Mesos has introduced a concept of revocable resources. It would outstanding if Chronos could support that at a per job and a per instance level.

Two use cases:

  1. Production level Chronos instance that allows a production control team to identify jobs that when they run, their resources are revocable such as that they will be killed and marked as failed for that run. This way production control could specify jobs that "first-class" jobs, i.e. they run, and their resources are guaranteed, vs those that could be killed.
  2. Having an multiple instances of Chronos. I.e. A prod instance and a dev instance. On the prod instance the jobs guarantee of resources is set at a per job level by the production control team and only those with proper credentials can submit jobs to this instance. On the dev instance, it is run that all jobs submitted to this instance run with revocable resources. Thus devs looking to try jobs or work with development tasks etc know that their resources may be pulled if production demands it.

Both of these use cases would allow for nice multi-tenancy and utilization of the over subscription features in Mesos.

orlandohohmeier commented 8 years ago

Great suggestion, thanks!