[nova][glance] Server rescue falls back to default image
Hi all, I am on OpenStack Caracal, trying to rescue a VM that's not booting: * I previously created a SystemRescueCD rescue image (with openstack image create --file ./systemrescue-12.02-amd64.iso --disk-format raw --container-format bare --property hw_rescue_bus=virtio --property hw_rescue_device=disk systemrescuecd_1202) - it works on VMs that still have their base images in Glance * tried to rescue the VM (with openstack server rescue --image systemrescuecd_1202 my-vm-id-here) * but the process fails as it tries to also use the base image used to create that VM, instead of the rescue image only (Instance my-vm-id-here cannot be rescued: Driver Error: Image b78cf456-b395-434f-bf50-a1f2f3684a37 could not be found. ; where b78cf456-b395-434f-bf50-a1f2f3684a37 was a Ubuntu cloud image used to create that VM, since deleted as it's an EOL version) Is it supposed to also try to use the base image or should the --image bypass it? In case, what could I do? Thanks in advance -- Francesco Di Nucci System Administrator Compute & Networking Service, INFN Naples Email:francesco.dinucci@na.infn.it
Hi, we're already on Epoxy, so there might have been some changes, but I don't have the issue you describe. I could successfully rescue an "orphaned" VM (base image is not present anymore) with a new ISO. In my case it's a "flattened" RBD image (we use Ceph as our storage backend), so it is definitely independent of the deleted base image. Do you have more logs, maybe a complete backtrace? Regards, Eugen Zitat von Francesco Di Nucci <francesco.dinucci@na.infn.it>:
Hi all,
I am on OpenStack Caracal, trying to rescue a VM that's not booting:
* I previously created a SystemRescueCD rescue image (with openstack image create --file ./systemrescue-12.02-amd64.iso --disk-format raw --container-format bare --property hw_rescue_bus=virtio --property hw_rescue_device=disk systemrescuecd_1202) - it works on VMs that still have their base images in Glance * tried to rescue the VM (with openstack server rescue --image systemrescuecd_1202 my-vm-id-here) * but the process fails as it tries to also use the base image used to create that VM, instead of the rescue image only (Instance my-vm-id-here cannot be rescued: Driver Error: Image b78cf456-b395-434f-bf50-a1f2f3684a37 could not be found. ; where b78cf456-b395-434f-bf50-a1f2f3684a37 was a Ubuntu cloud image used to create that VM, since deleted as it's an EOL version)
Is it supposed to also try to use the base image or should the --image bypass it? In case, what could I do?
Thanks in advance
-- Francesco Di Nucci System Administrator Compute & Networking Service, INFN Naples
Email:francesco.dinucci@na.infn.it
On 28/10/2025 15:09, Eugen Block wrote:
Hi,
we're already on Epoxy, so there might have been some changes, but I don't have the issue you describe. I could successfully rescue an "orphaned" VM (base image is not present anymore) with a new ISO. In my case it's a "flattened" RBD image (we use Ceph as our storage backend), so it is definitely independent of the deleted base image. Do you have more logs, maybe a complete backtrace?
Regards, Eugen
Zitat von Francesco Di Nucci <francesco.dinucci@na.infn.it>:
Hi all,
I am on OpenStack Caracal, trying to rescue a VM that's not booting:
* I previously created a SystemRescueCD rescue image (with openstack image create --file ./systemrescue-12.02-amd64.iso --disk-format raw --container-format bare --property hw_rescue_bus=virtio --property hw_rescue_device=disk systemrescuecd_1202) - it works on VMs that
so ISOs are not raw files so this command is invlaid form a nova and glance perspective you shoudl be useing ISO as the disk-format evne when using ceph. in modern versions of openstack this should fail our deep image inspection code.
still have their base images in Glance * tried to rescue the VM (with openstack server rescue --image systemrescuecd_1202 my-vm-id-here) * but the process fails as it tries to also use the base image used to create that VM, instead of the rescue image only (Instance my-vm-id-here cannot be rescued: Driver Error: Image b78cf456-b395-434f-bf50-a1f2f3684a37 could not be found. ; where b78cf456-b395-434f-bf50-a1f2f3684a37 was a Ubuntu cloud image used to create that VM, since deleted as it's an EOL version)
is this a boot form volume image and or are you using images_type=rbd in nova? rescue in general shoudl not need to download the guest backing image
Is it supposed to also try to use the base image or should the --image bypass it? In case, what could I do?
so the image used for rescue is chosen with the follow sources (2 and 3 might be reversed) 1 if you pass an image to the rescue command that will be used 2 if not we will use the rescue image if set in the nova.conf https://docs.openstack.org/nova/latest/configuration/config.html#libvirt.res... 3 we will use the orgial image the vm is booted form so assumign like 99% of peopel you have not set rescue_image_id in the config and the vm image is deleted in galnce then yes you shoudl pass --image with the ide of your rescue image. https://docs.openstack.org/python-openstackclient/latest/cli/command-objects...
Thanks in advance
-- Francesco Di Nucci System Administrator Compute & Networking Service, INFN Naples
Email:francesco.dinucci@na.infn.it
participants (3)
-
Eugen Block
-
Francesco Di Nucci
-
Sean Mooney