[openstack-dev] [Ironic] (Non-)consistency of the Ironic hash ring implementation

Lucas Alvares Gomes lucasagomes at gmail.com
Wed Sep 3 13:57:20 UTC 2014


On Wed, Sep 3, 2014 at 12:50 PM, Nejc Saje <nsaje at redhat.com> wrote:
>
>
> On 09/02/2014 11:33 PM, Robert Collins wrote:
>>
>> The implementation in ceilometer is very different to the Ironic one -
>> are you saying the test you linked fails with Ironic, or that it fails
>> with the ceilometer code today?
>
>
> Disclaimer: in Ironic terms, node = conductor, key = host
>
> The test I linked fails with Ironic hash ring code (specifically the part
> that tests consistency). With 1000 keys being mapped to 10 nodes, when you
> add a node:
> - current ceilometer code remaps around 7% of the keys (< 1/#nodes)
> - Ironic code remaps > 90% of the keys

Thanks Nejc for posting it here, I'm not super familiar with the
consistent hashing code but I def take a look at it. IMO this behavior
is not desirable in Ironic at all, we don't want > 90% of the hash to
get remapped when a conductor join or leave the cluster.

Also it would be good to open a bug about this problem in Ironic so we
can track the progress there (I can open it if you want, but I will
first do some investigation to understand the problem better).

Cheers,
Lucas



More information about the OpenStack-dev mailing list