Live Migration (block_migrate): "Disk of instance is too large", with cinder LVM based volume
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Expired
|
Medium
|
Unassigned |
Bug Description
When live migrating (block_migrate), an instance, cinder volumes based on LVM, that are attached via iscsi to the compute node, are included within the MigrationPreCheck disk-size calculation.
Because the cinder iscsi volume is just attached to the migration target node, these devices need to be skipped.
In the past only devices with type 'file' got included in that disk_size calculation; But with commit 5fa74bc0b2ab6fe
I experienced that with stable juno.
I worked around that with this additional check:
diff --git a/nova/
index 0809f09..566b2b2 100644
--- a/nova/
+++ b/nova/
@@ -6000,6 +6000,10 @@ class LibvirtDriver(
+ if disk_type == 'block' and path.find(
+ LOG.debug('skipping disk because it looks like an iscsi volume', path)
+ continue
+
# get the real disk size or
# raise a localized error if image is unavailable
if disk_type == 'file':
If this is the right place to exclude that disks, I can submit that little patch for review. Or you can point me to the right location for that and I'll give it a try.
What do you think?
Changed in nova: | |
assignee: | nobody → Timofey Durakov (tdurakov) |
status: | Confirmed → In Progress |
tags: | added: live-migrate |
Changed in nova: | |
assignee: | Timofey Durakov (tdurakov) → nobody |
status: | In Progress → Confirmed |
importance: | Undecided → Medium |
tags: |
added: live-migration removed: live-migrate |
Changed in nova: | |
assignee: | nobody → lvmxh (shaohef) |
Changed in nova: | |
assignee: | lvmxh (shaohef) → nobody |
Indeed it looks like you are correct in asserting that https:/ /review. openstack. org/40467 caused this regression, because it erroneously assumes that block devices would always be LVM backed only. Not sure about the fix though, maybe there are other volume types affected too?