Found a potential bug while setting up multiple cinder-volume instances on single cinder node
I was trying to setup multiple cinder-volume instances on a single node setup.I edited the cinder.conf file as per the instructions given in the openstack docs for multi-backend cinder.
http://
I setup two backends and was able to see both the backend hosts in cinder service-list.
PART 1 :
I tried to create a volume using the volume-
cinder/
for filter_cls in filter_classes:
objs = filter_
return list(objs)
In these lines of code, the objs will contain the list of hosts as per the filter classes.
In my case , the code was able to find the list of host for one of the classes in the first iteration only and in second and third iteration the list was empty.As the return is after the loop is over , it was always sending the empty list and hence the error : "No valid host found"
I changed the code to this and it was then returning the list of hosts.
Changed code :
for filter_cls in filter_classes:
objs = filter_
if objs:
return list(objs)
PART 2 :
After making the above changes , i tried to create the volume using one of the volume-type and got success. Then i tried to use the other volume-type to create the volume , but it used the other host and not the host associated with this volume-type.
I went through the logs and found that it was discovering both the hosts in the file
cinder/
after getting the hosts list it was choosing the first host in the list in file
cinder/
My doubts:
==> was the host list filtered as per the volume-type provided during the create volume process?
==> Why we are using the first host from the "weighed_hosts" list?
Question information
- Language:
- English Edit question
- Status:
- Solved
- For:
- Cinder Edit question
- Assignee:
- No assignee Edit question
- Solved by:
- Ganpat Agarwal
- Solved:
- Last query:
- Last reply: