[openstack-dev] [oslo] New and next-gen libraries (a BCN followup)

John Dickinson me at not.mn
Fri Nov 4 23:30:46 UTC 2016

On 4 Nov 2016, at 7:50, Jim Rollenhagen wrote:

> On Thu, Nov 3, 2016 at 3:04 PM, Joshua Harlow <harlowja at fastmail.com> wrote:
>> Jay Faulkner wrote:
>>>> On Nov 3, 2016, at 11:27 AM, Joshua Harlow<harlowja at fastmail.com>  wrote:
>>>> Just as a followup from the summit,
>>>> One of the sessions (the new lib one) had a few proposals:
>>>> https://etherpad.openstack.org/p/ocata-oslo-bring-ideas
>>>> And I wanted to try to get clear owners for each part (there was some
>>>> followup work for each); so just wanted to start this email to get the
>>>> thoughts going on what to do for next steps.
>>>> *A hash ring library*
>>>> So this one it feels like we need at least a tiny oslo-spec for and for
>>>> someone to write down the various implementations, what they share, what
>>>> they do not share (talking to swift, nova, ironic and others? to figure this
>>>> out). I think alexis was thinking he might want to work through some of that
>>>> but I'll leave it for him to chime in on that (or others feel free to also).
>>>> This one doesn't seem very controversial and the majority of the work is
>>>> probably on doing some analysis of what exists and then picking a library
>>>> name and coding that up, testing it, and then integrating (pretty standard).
>>> Ironic and Nova both share a hash ring implementation currently
>>> (ironic-conductor and nova-compute driver for ironic). It would be sensible
>>> to reuse this implementation, oslo-ify it, and have that code shared.
>>> I question the value of re-implementing something like this from scratch
>>> though.
>>> Thanks,
>>> Jay Faulkner
>>> OSIC
>> Right I don't think the intention would be to implement it from scratch, but
>> to do some basic analysis of what exists (and think about and document the
>> patterns), and try to find the common parts (which likely involves renaming
>> some specific nova/ironic methods from what I see); especially if we can get
>> swift to perhaps (TBD) also use and contribute to this library.
> As the person who copied that code into Nova, the Nova code is a strict subset
> of the Ironic code.
> Some of us talked to John Dickinson off-list, and it seems the Swift hash ring
> has very different use cases and very different implementation. I
> think we should
> focus on pulling the Nova/Ironic code out first, and then talking to
> Swift if we can
> also make it work for them (sounds like it's not helpful today).
> // jim

We had some great conversations last week face to face about this. The summary is that the "ring" in Ironic/Nova and the placement "ring" in Swift are vastly different in scope, requirements, and capabilities. I don't think it makes sense to try to unify them at this time.

As always, I'm available to talk further about this, if you want.


-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 801 bytes
Desc: OpenPGP digital signature
URL: <http://lists.openstack.org/pipermail/openstack-dev/attachments/20161104/e30988a3/attachment.pgp>

More information about the OpenStack-dev mailing list