Password not injected when used images_type = flat and QCOW2 image

Bug #1947513 reported by Ilya Baykov
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
Expired
Undecided
Unassigned

Bug Description

Hi
We need setup that will copy a whole image from _base for fully independedt instance ephemeral disks, so we decided to use images_type = flat
But we got a bug at password injection stage with a lot of messages that tell about raw disk type (but it is qcow2 actually!).
Images are based only on QCOW2.

Nova: 23.0.1
Libvirt: 6.0.0
Virt: Libvirt+KVM
Storage: Ephemeral local disks

*nova.conf*

images_type = flat
use_cow_images = true #(or false, doesn't matter)
force_raw_images = false

Please use gist for better representation:
https://gist.github.com/frct1/e723447ff30dcc090d92122d22e5aef2

nova-compute logs:
2021-10-17 19:33:17.788 1206887 DEBUG nova.virt.disk.api [req-a3367d10-4bc9-4180-b04d-dd46f5c3b2d6 81dd232581e440be8450e6a1722c395b d7911647ea604b5ea3a210402913afcb - default default] Checking if we can resize image /var/lib/nova/instances/dc5b16f3-dc6d-4cc9-9ccb-ff22626a69f0/disk. size=10737418240 can_resize_image /usr/lib/python3/dist-packages/nova/virt/disk/api.py:166
2021-10-17 19:33:20.150 1206887 DEBUG nova.virt.disk.api [req-a3367d10-4bc9-4180-b04d-dd46f5c3b2d6 81dd232581e440be8450e6a1722c395b d7911647ea604b5ea3a210402913afcb - default default] Checking if we can extend filesystem inside <LocalFileImage:{'format': 'raw', 'path': '/var/lib/nova/instances/dc5b16f3-dc6d-4cc9-9ccb-ff22626a69f0/disk'}>. is_image_extendable /usr/lib/python3/dist-packages/nova/virt/disk/api.py:180
2021-10-17 19:33:20.167 1206887 DEBUG nova.virt.disk.api [req-a3367d10-4bc9-4180-b04d-dd46f5c3b2d6 81dd232581e440be8450e6a1722c395b d7911647ea604b5ea3a210402913afcb - default default] Unable to determine label for image <LocalFileImage:{'format': 'raw', 'path': '/var/lib/nova/instances/dc5b16f3-dc6d-4cc9-9ccb-ff22626a69f0/disk'}> with error Unexpected error while running command.
Stderr: 'e2label: Bad magic number in super-block while trying to open /var/lib/nova/instances/dc5b16f3-dc6d-4cc9-9ccb-ff22626a69f0/disk\n'. Cannot resize. is_image_extendable /usr/lib/python3/dist-packages/nova/virt/disk/api.py:212
2021-10-17 19:33:20.249 1206887 DEBUG nova.virt.disk.api [req-a3367d10-4bc9-4180-b04d-dd46f5c3b2d6 81dd232581e440be8450e6a1722c395b d7911647ea604b5ea3a210402913afcb - default default] Checking if we can resize image /var/lib/nova/instances/dc5b16f3-dc6d-4cc9-9ccb-ff22626a69f0/disk. size=10737418240 can_resize_image /usr/lib/python3/dist-packages/nova/virt/disk/api.py:166
2021-10-17 19:33:20.288 1206887 DEBUG nova.virt.disk.api [req-a3367d10-4bc9-4180-b04d-dd46f5c3b2d6 81dd232581e440be8450e6a1722c395b d7911647ea604b5ea3a210402913afcb - default default] Cannot resize image /var/lib/nova/instances/dc5b16f3-dc6d-4cc9-9ccb-ff22626a69f0/disk to a smaller size. can_resize_image /usr/lib/python3/dist-packages/nova/virt/disk/api.py:172
2021-10-17 19:33:20.291 1206887 DEBUG nova.virt.disk.api [req-a3367d10-4bc9-4180-b04d-dd46f5c3b2d6 81dd232581e440be8450e6a1722c395b d7911647ea604b5ea3a210402913afcb - default default] Inject data image=<LocalFileImage:{'format': 'raw', 'path': '/var/lib/nova/instances/dc5b16f3-dc6d-4cc9-9ccb-ff22626a69f0/disk'}> key=None net=None metadata={} admin_password=<SANITIZED> files=[] partition=-1 inject_data /usr/lib/python3/dist-packages/nova/virt/disk/api.py:350
2021-10-17 19:33:39.418 1206887 WARNING nova.virt.disk.api [req-a3367d10-4bc9-4180-b04d-dd46f5c3b2d6 81dd232581e440be8450e6a1722c395b d7911647ea604b5ea3a210402913afcb - default default] Ignoring error injecting data into image <LocalFileImage:{'format': 'raw', 'path': '/var/lib/nova/instances/dc5b16f3-dc6d-4cc9-9ccb-ff22626a69f0/disk'}> (No operating system found in <LocalFileImage:{'format': 'raw', 'path': '/var/lib/nova/instances/dc5b16f3-dc6d-4cc9-9ccb-ff22626a69f0/disk'}>): nova.exception.NovaException: No operating system found in <LocalFileImage:{'format': 'raw', 'path': '/var/lib/nova/instances/dc5b16f3-dc6d-4cc9-9ccb-ff22626a69f0/disk'}>

The most embarassing thing that it is logging about raw format, but all images is QCOW2 format and also at disk.info also qcow2 format. Mostly it is bug.

Ilya Baykov (frct1)
description: updated
Ilya Baykov (frct1)
description: updated
Revision history for this message
Lee Yarwood (lyarwood) wrote :

I assume something went wrong when we were checking the format of the disk here:

https://github.com/openstack/nova/blob/82be4652e2c840bd69ec354fd734a2d3f83f395b/nova/virt/libvirt/imagebackend.py#L537-L545

Can you look back in your logs for req-a3367d10-4bc9-4180-b04d-dd46f5c3b2d6 and see if there's any reference to `Failed to get image info from path` etc.

Changed in nova:
status: New → Incomplete
Revision history for this message
Ilya Baykov (frct1) wrote :

Hi
No, it's normally finds the image, but totally weird that it think it is in raw format (instead of qcow2).

Revision history for this message
Launchpad Janitor (janitor) wrote :

[Expired for OpenStack Compute (nova) because there has been no activity for 60 days.]

Changed in nova:
status: Incomplete → Expired
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.