[Bug 1704106] Fix merged to charm-cinder-ceph (stable/19.04)
OpenStack Infra
1704106 at bugs.launchpad.net
Tue Jun 18 21:57:31 UTC 2019
Reviewed: https://review.opendev.org/662986
Committed: https://git.openstack.org/cgit/openstack/charm-cinder-ceph/commit/?id=2b7ffcaee81045af5893327f0cf2e603d8fd8f5f
Submitter: Zuul
Branch: stable/19.04
commit 2b7ffcaee81045af5893327f0cf2e603d8fd8f5f
Author: Edward Hope-Morley <edward.hope-morley at canonical.com>
Date: Mon Apr 1 17:43:58 2019 +0100
Add rbd_exclusive_pool support for Ocata and Pike
The fix has been backported in Cinder so we
can now use it in the charm.
Also includes amulet test fix and context generator
fix from commit c3456b7.
Change-Id: I5dfad42def68634313af05d21ebe61bc229ebc35
Closes-Bug: #1704106
(cherry picked from commit 616ba364296687bfeb8d9bf35bb0e7628d573e5b)
--
You received this bug notification because you are a member of Ubuntu
OpenStack, which is subscribed to Ubuntu Cloud Archive.
https://bugs.launchpad.net/bugs/1704106
Title:
[SRU] Gathering of thin provisioning stats breaks c-vol
Status in OpenStack cinder-ceph charm:
Fix Committed
Status in Cinder:
Fix Released
Status in Ubuntu Cloud Archive:
Fix Released
Status in Ubuntu Cloud Archive ocata series:
Fix Released
Status in Ubuntu Cloud Archive pike series:
Fix Released
Bug description:
[Impact]
Backport config option added in Queens to allow disabling the
collection of stats from all rbd volumes since this causes
tons of non-fatal race conditions and slows down deletes to
the point where the rpc thread pool fills up blocking further
requests. Our charms do not configure pool by default and we
are not aware of anyone doing this in the field so this patch
enables this option by default.
[Test Case]
By default no change in behaviour should occur. To test the
new feature we need to enable it i.e.:
* deploy openstack ocata
* set rbd_exclusive_cinder_pool = true in cinder.conf
* create 100 volumes via cinder
* also create 100 volumes from the cinder pool but using the rbd client directly
* delete cinder volumes (via cinder) and delete the non-cinder rbd volumes using rbd client
* ensure there are no exceptions in cinder-volume.log
[Regression Potential]
The default behaviour is unchanged so no regression is expected.
==========================================================================
The gathering of the thin provisioning stats is done by looping over
all volumes:
https://github.com/openstack/cinder/blob/master/cinder/volume/drivers/rbd.py#L369
For larger deployments, this loop (done at start-up, upon volume
deletion and as periodic a task) is taking too long and hence breaks
the c-vol service.
From what I understand, the overall idea of this stats gathering is to
bring the current real fill status of the pool to the admin's
attention in case over-subscription was configured. For this, a fill
status at the pool level (rather than the volume level) should be good
enough.
To manage notifications about this bug go to:
https://bugs.launchpad.net/charm-cinder-ceph/+bug/1704106/+subscriptions
More information about the Ubuntu-openstack-bugs
mailing list