<font size=2 face="sans-serif">Hi Boris,</font>
<br>
<br><font size=2 face="sans-serif">This is a very interesting approach.</font>
<br><font size=2 face="sans-serif">How do you envision the life cycle of
such a scheduler in terms of code repository, build, test, etc?</font>
<br><font size=2 face="sans-serif">What kind of changes to provisioning
APIs do you envision to 'feed' such a scheduler?</font>
<br><font size=2 face="sans-serif">Any particular reason you didn't mention
Neutron?</font>
<br><font size=2 face="sans-serif">Also, there are some interesting technical
challenges (e.g., state management across potentially large number of instances
of memcached).</font>
<br>
<br><font size=2 face="sans-serif">Thanks,</font>
<br><font size=2 face="sans-serif">Alex</font>
<br>
<br>
<br><tt><font size=2>Boris Pavlovic <bpavlovic@mirantis.com> wrote
on 10/11/2013 07:05:42 PM:<br>
<br>
> From: Boris Pavlovic <bpavlovic@mirantis.com></font></tt>
<br><tt><font size=2>> To: "OpenStack Development Mailing List
(not for usage questions)" <br>
> <openstack-dev@lists.openstack.org>, </font></tt>
<br><tt><font size=2>> Date: 10/11/2013 07:07 PM</font></tt>
<br><tt><font size=2>> Subject: Re: [openstack-dev] [nova][cinder][oslo][scheduler]
How to <br>
> leverage oslo schduler/filters for nova and cinder</font></tt>
<br><tt><font size=2>> <br>
> Jay, </font></tt>
<br><tt><font size=2>> <br>
> Hi Jay, yes we were working about putting all common stuff in oslo-<br>
> scheduler. (not only filters)</font></tt>
<br><tt><font size=2>> <br>
> As a result of this work we understood, that this is wrong approach.<br>
> Because it makes result code very complex and unclear. And actually
<br>
> we didn't find the way to put all common stuff inside oslo. Instead
<br>
> of trying to make life too complex we found better approach. <br>
>  Implement scheduler aaS that can scale (current solution has
some <br>
> scale issues) & store all data from nova, cinder & probably
other places.</font></tt>
<br><tt><font size=2>> <br>
> To implement such approach we should change a bit current architecture: </font></tt>
<br><tt><font size=2>> 1) Scheduler should store all his data (not nova.db
& cinder.db)</font></tt>
<br><tt><font size=2>> 2) Scheduler should always have own snapshot
of "wold" state, and <br>
> sync it with another schedulers using something that is quite fast
<br>
> (e.g. memcached) </font></tt>
<br><tt><font size=2>> 3) Merge schedulers rpc methods from nova &
cinder in one scheduler <br>
> (it is possbile if we store all data from cinder & nova in one
sceduler). </font></tt>
<br><tt><font size=2>> 4) Drop cinder, and nova tables that store host
states (as we don't <br>
> need them) </font></tt>
<br><tt><font size=2>> <br>
> We implemented already base start (mechanism that store snapshot of
<br>
> world state & sync it between different schedulers): </font></tt>
<br><tt><font size=2>> <br>
> </font></tt><a href=https://review.openstack.org/#/c/45867/><tt><font size=2>https://review.openstack.org/#/c/45867/</font></tt></a><tt><font size=2>
(it is still bit in WIP)</font></tt>
<br><tt><font size=2>> <br>
> Best regards, </font></tt>
<br><tt><font size=2>> Boris Pavlovic</font></tt>
<br><tt><font size=2>> ---</font></tt>
<br><tt><font size=2>> Mirantis Inc. </font></tt>
<br><tt><font size=2>> <br>
> <br>
</font></tt>
<br><tt><font size=2>> On Sun, Nov 10, 2013 at 1:59 PM, Jay Lau <jay.lau.513@gmail.com>
wrote:</font></tt>
<br><tt><font size=2>> I noticed that there is already a bp in oslo
tracing what I want to do: <br>
> </font></tt><a href="https://blueprints.launchpad.net/oslo/+spec/oslo-scheduler"><tt><font size=2>https://blueprints.launchpad.net/oslo/+spec/oslo-scheduler</font></tt></a><tt><font size=2><br>
</font></tt>
<br><tt><font size=2>> Thanks,<br>
</font></tt>
<br><tt><font size=2>> Jay<br>
</font></tt>
<br><tt><font size=2>> <br>
</font></tt>
<br><tt><font size=2>> 2013/11/9 Jay Lau <jay.lau.513@gmail.com></font></tt>
<br><tt><font size=2>> Greetings,</font></tt>
<br><tt><font size=2>> <br>
> Now in oslo, we already put some scheduler filters/weights logic <br>
> there and cinder is using oslo scheduler filters/weights logic, <br>
> seems we want both nova&cinder use this logic in future.</font></tt>
<br><tt><font size=2>> <br>
> Found some problems as following:</font></tt>
<br><tt><font size=2>> 1) In cinder, some filters/weight logic reside
in cinder/openstack/<br>
> common/scheduler and some filter/weight logic in cinder/scheduler,
<br>
> this is not consistent and also will make some cinder hackers <br>
> confused: where shall I put the scheduler filter/weight.</font></tt>
<br><tt><font size=2>> 2) Nova is not using filter/weight from oslo
and also not using <br>
> entry point to handle all filter/weight.</font></tt>
<br><tt><font size=2>> 3) There is not enough filters in oslo, we may
need to add more <br>
> there: such as same host filter, different host filter, retry filter
etc.</font></tt>
<br><tt><font size=2>> <br>
> So my proposal is as following:</font></tt>
<br><tt><font size=2>> 1) Add more filters to oslo, such as same host
filter, different <br>
> host filter, retry filter etc.</font></tt>
<br><tt><font size=2>> 2) Move all filters/weight logic in cinder from
cinder/scheduler to <br>
> cinder/openstack/common/scheduler</font></tt>
<br><tt><font size=2>> 3) Enable nova use filter/weight logic from oslo
(Move all filter <br>
> logic to nova/openstack/common/scheduler) and also use entry point
<br>
> to handle all filters/weight logic.</font></tt>
<br><tt><font size=2>> <br>
> Comments?</font></tt>
<br><tt><font size=2>> <br>
> Thanks,</font></tt>
<br><tt><font size=2>> <br>
> Jay</font></tt>
<br><tt><font size=2>> <br>
> <br>
> _______________________________________________<br>
> OpenStack-dev mailing list<br>
> OpenStack-dev@lists.openstack.org<br>
> </font></tt><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev"><tt><font size=2>http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</font></tt></a><tt><font size=2><br>
</font></tt>
<br><tt><font size=2>> _______________________________________________<br>
> OpenStack-dev mailing list<br>
> OpenStack-dev@lists.openstack.org<br>
> </font></tt><a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev"><tt><font size=2>http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</font></tt></a><tt><font size=2><br>
</font></tt>