Rescue BFV instances not working with ceph backend, Tempest new test failing

Bug #1876330 reported by Ghanshyam Mann
8
This bug affects 1 person
Affects Status Importance Assigned to Milestone
devstack-plugin-ceph
Fix Released
Undecided
Lee Yarwood
Lee Yarwood (lyarwood)
Changed in devstack-plugin-ceph:
assignee: nobody → Lee Yarwood (lyarwood)
summary: - Rescue BFV instances feature not supported in ceph, Tempest new test
+ Rescue BFV instances not working with ceph backend, Tempest new test
failing
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Related fix merged to devstack-plugin-ceph (master)

Reviewed: https://review.opendev.org/724866
Committed: https://git.openstack.org/cgit/openstack/devstack-plugin-ceph/commit/?id=c1fc88670c0cd1ffa6d13779427c506f5feddb10
Submitter: Zuul
Branch: master

commit c1fc88670c0cd1ffa6d13779427c506f5feddb10
Author: Ghanshyam Mann <email address hidden>
Date: Fri May 1 09:58:57 2020 -0500

    Skip rescue BFV instance tests

    Nova implemented the feature for rescuing the BFV instances.
    - https://specs.openstack.org/openstack/nova-specs/specs/ussuri/approved/virt-bfv-instance-rescue.html

    It is not working with ceph backend as new tests added in Tempest are failing ceph job

    Related-Bug: #1876330

    Change-Id: Ie675610a040e9f4c164b51b6b61b2a8094ecd09f

Revision history for this message
Lee Yarwood (lyarwood) wrote :

As I thought, this appears to be a race within the test between our attempt to snapshot the instance to create the rescue disk *and* the subsequent attempt to rescue the instance.

I can reproduce it locally and even see the request to rescue reach the compute just before the request to snapshot:

May 04 04:45:44 localhost.localdomain nova-compute[568186]: INFO nova.virt.libvirt.driver [None
req-df6379e6-86cb-4163-8a2c-a54a2ff65e70 tempest-ServerBootFromVolumeStableRescueTest-1734223307 tempest-ServerBootFromVolumeStableRescueTest-1734223307] [instance: c2c0c393-ead9-4ea3-842c-9148f4039ed6] Attempting a stable>

May 04 04:45:44 localhost.localdomain nova-compute[568186]: INFO nova.virt.libvirt.driver [None req-df6379e6-86cb-4163-8a2c-a54a2ff65e70 tempest-ServerBootFromVolumeStableRescueTest-1734223307 tempest-ServerBootFromVolumeStableRescueTest-1734223307] [instance: c2c0c393-ead9-4ea3-842c-9148f4039ed6] Creating image

Revision history for this message
Lee Yarwood (lyarwood) wrote :

Apologies, that wasn't the issue with this test at all.

The issue is that for BFV instances we create a zero sized image that references volume snapshots in the associated block_device_mapping metadata of the image. When the image is then referenced during an instance creation request this then results in new volumes being created from these volume snapshots and used by the new instance. This is all spelled out in the createImage API docs below:

https://docs.openstack.org/api-ref/compute/?expanded=create-image-createimage-action-detail#create-image-createimage-action

Using such an image during instance rescue isn't supported and should be rejected by n-api.

I'll rewrite the test to launch an image based instance, snapshot this to provide a rescue image and optionally launch another BFV instance for tests that require it.

Revision history for this message
Dr. Jens Harbott (j-harbott) wrote :

The revert didn't have the bug reference https://review.opendev.org/725819 but I assume that this implies that this bug is fixed.

Changed in devstack-plugin-ceph:
status: New → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix included in openstack/tempest 25.0.1

This issue was fixed in the openstack/tempest 25.0.1 release.

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.