[openstack-dev] Gantt project
Dugger, Donald D
donald.d.dugger at intel.com
Wed Aug 13 03:13:22 UTC 2014
Our initial goal is to just split the scheduler out into a separate project, not make it a part of Nova compute. The functionality will be exactly the same as the Nova scheduler (the vast majority of the code will be a copy of the Nova scheduler code modulo some path name changes). When the split is complete and we've thoroughly tested it to show the same functionality with Gantt we can make Gantt the default Nova scheduler, target all new scheduler work into Gantt and deprecate use of the Nova scheduler. Hopefully in the L or M time frame we would excise the scheduler code out of Nova.
I would certainly not advocate forced usage of Gantt by fiat for other projects. Instead we should evaluate the scheduling requirements needed by other projects, see if they can be handled by a common scheduler and, if so, enhance Gantt appropriately so that other projects can use it. (Hopefully if we build Gantt they will come :-) This should be no worse than the current situation where projects are forced to create their own scheduler, projects will have the option to utilize Gantt and not waste effort duplicating a scheduler function.
"Censeo Toto nos in Kansa esse decisse." - D. Gale
From: John Dickinson [mailto:me at not.mn]
Sent: Tuesday, August 12, 2014 9:24 AM
To: Dugger, Donald D
Cc: OpenStack Development Mailing List (not for usage questions); Michael Still; Mark Washenberger; Dolph Mathews; Lyle, David; Kyle Mestery; John Griffith; Eoghan Glynn; Zane Bitter; Nikhil Manchanda; Devananda van der Veen; Doug Hellmann; James E. Blair; Anne Gentle; Matthew Treinish; Robert Collins; Dean Troyer; Thierry Carrez; Kurt Griffiths; Sergey Lukjanov; Jarret Raim
Subject: Re: Gantt project
Thanks for the info. It does seem like most OpenStack projects have some concept of a "scheduler", as you mentioned. Perhaps that's expected in any distributed system.
Is it expected or assumed that Gantt will become the common scheduler for all OpenStack projects? That is, is Gantt's plan and/or design goals to provide scheduling (or a "scheduling framework") for all OpenStack projects? Perhaps this is a question for the TC rather than Don. 
Since Gantt is initially intended to be used by Nova, will it be under the compute program or will there be a new program created for it?
 You'll forgive me, but I've certainly seen OpenStack projects move from "you can use it if you want" to "you must start using this" in the past.
On Aug 11, 2014, at 11:09 PM, Dugger, Donald D <donald.d.dugger at intel.com> wrote:
> This is to make sure that everyone knows about the Gantt project and to make sure that no one has a strong aversion to what we are doing.
> The basic goal is to split the scheduler out of Nova and create a separate project that, ultimately, can be used by other OpenStack projects that have a need for scheduling services. Note that we have no intention of forcing people to use Gantt but it seems silly to have a scheduler inside Nova, another scheduler inside Cinder, another scheduler inside Neutron and so forth. This is clearly predicated on the idea that we can create a common, flexible scheduler that can meet everyone's needs but, as I said, theirs is no rule that any project has to use Gantt, if we don't meet your needs you are free to roll your own scheduler.
> We will start out by just splitting the scheduler code out of Nova into a separate project that will initially only be used by Nova. This will be followed by enhancements, like a common API, that can then be utilized by other projects.
> We are cleaning up the internal interfaces in the Juno release with the expectation that early in the Kilo cycle we will be able to do the split and create a Gantt project that is completely compatible with the current Nova scheduler.
> Hopefully our initial goal (a separate project that is completely compatible with the Nova scheduler) is not too controversial but feel free to reply with any concerns you may have.
> Don Dugger
> "Censeo Toto nos in Kansa esse decisse." - D. Gale
> Ph: 303/443-3786
More information about the OpenStack-dev