From: Fabian Niepelt Date: Wed, 11 Dec 2019 13:19:14 +0000 (+0100) Subject: ceph-volume: use correct extents when using db-devices and >1 osds_per_device X-Git-Tag: v13.2.9~100^2 X-Git-Url: http://git-server-git.apps.pok.os.sepia.ceph.com/?a=commitdiff_plain;h=refs%2Fpull%2F32875%2Fhead;p=ceph.git ceph-volume: use correct extents when using db-devices and >1 osds_per_device Actual data size depending on osds_per_device needs to be calculated here. Otherwise, if osds_per_device is greater than 1, ceph-volume will allocate 100% of the device to the first osd and then fail to create the LV for the second because the volume group is already full. Fixes: https://tracker.ceph.com/issues/39442 Signed-off-by: Fabian Niepelt (cherry picked from commit ecde6cd619605003706f545b0b5ad4e2e8932f28) Conflicts: src/ceph-volume/ceph_volume/devices/lvm/strategies/bluestore.py --- diff --git a/src/ceph-volume/ceph_volume/devices/lvm/strategies/bluestore.py b/src/ceph-volume/ceph_volume/devices/lvm/strategies/bluestore.py index db3eff7ea3e8..a510e66570c0 100644 --- a/src/ceph-volume/ceph_volume/devices/lvm/strategies/bluestore.py +++ b/src/ceph-volume/ceph_volume/devices/lvm/strategies/bluestore.py @@ -354,7 +354,7 @@ class MixedType(MixedStrategy): for osd in self.computed['osds']: data_path = osd['data']['path'] data_vg = data_vgs[data_path] - data_lv_extents = data_vg.sizing(parts=1)['extents'] + data_lv_extents = data_vg.sizing(parts=self.osds_per_device)['extents'] data_lv = lvm.create_lv( 'osd-block', data_vg.name, extents=data_lv_extents, uuid_name=True ) @@ -536,4 +536,3 @@ class MixedType(MixedStrategy): self.block_wal_size, ) raise RuntimeError(msg) -