Mailing List Archive

cinder-schduler multi workers
Hi,


I am trying to understand why we don't support multi workers of cinder-scheduler. I searched on google and the archived mails. But I didn't find the details.


I increased the cinder-scheduler workers in my test env to get better performance, it worked.
I didn't find the configuration option for cinder-scheduler workers number. so I had to change the source code of cinder to increase workers. `cinder/cmd/scheduler.py`


Seems we don't support configuring multi cinder-scheduler workers, so why do not we support it.
I can think of one case for not supporting multi workers:
If I have 2 workers, and 2 cinder volume backends. [backend1: {free: 1.5GB}, backend2: {free: 1GB}]
Now, I send two requests to create two volumes at the same time. Worker1 gets one request, while worker2 gets the other.
They will both schedule the new volume to backend1(because 1.5GB > 1GB). This is not good, because backend1 is not able to afford two volumes of 1GB. But seems this is not a big problem, as reschedule will be triggered to correct it.


Is there any other reason we don't support multi cinder-scheduler workers?




Thanks.
Cheng
Re: cinder-schduler multi workers [ In reply to ]
Here is a patch about "multiple process workers support for nova-scheduler" https://review.openstack.org/#/c/159382/ <https://review.openstack.org/#/c/159382/>

Before the placement service takes over nova-scheduler, nova-scheduler will have problems with thread-safe, inconsistent, etc. therefore, the patch was not merged until the implementation of the placement-claims mechanism, It was recently merged into the master branch https://github.com/openstack/nova/blob/master/nova/cmd/scheduler.py <https://github.com/openstack/nova/blob/master/nova/cmd/scheduler.py>

So, I think the cinder-scheduler also has this problem.
Re: cinder-schduler multi workers [ In reply to ]
Hi Jython,

Thank you for pointing attention to it. cinder-scheduler keeps all data in
memory, so we can't just increase workers count to scale it.

Regards,
Ivan Kolodyazhny,
http://blog.e0ne.info/

On Sun, Jun 17, 2018 at 6:44 AM, jython <zijian1012@163.com> wrote:

> Here is a patch about "multiple process workers support for
> nova-scheduler" https://review.openstack.org/#/c/159382/
>
> Before the placement service takes over nova-scheduler, nova-scheduler
> will have problems with thread-safe, inconsistent, etc. therefore, the
> patch was not merged until the implementation of the placement-claims
> mechanism, It was recently merged into the master branch
> https://github.com/openstack/nova/blob/master/nova/cmd/scheduler.py
>
> So, I think the cinder-scheduler also has this problem.
>
> _______________________________________________
> Mailing list: http://lists.openstack.org/cgi-bin/mailman/listinfo/
> openstack
> Post to : openstack@lists.openstack.org
> Unsubscribe : http://lists.openstack.org/cgi-bin/mailman/listinfo/
> openstack
>
>