nova delete doesn't work with EFI booted VMs
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
Low
|
Derek Higgins | ||
Ubuntu Cloud Archive |
Fix Released
|
High
|
Unassigned | ||
Mitaka |
Fix Released
|
High
|
Unassigned | ||
Newton |
Fix Committed
|
High
|
Unassigned | ||
Ocata |
Fix Released
|
High
|
Unassigned | ||
nova (Ubuntu) |
Fix Released
|
Medium
|
Kevin Zhao | ||
Xenial |
Fix Released
|
Medium
|
Chuck Short | ||
Yakkety |
Fix Committed
|
High
|
Unassigned | ||
Zesty |
Fix Released
|
Medium
|
Kevin Zhao |
Bug Description
I've been setting up a Mitaka Openstack using the cloud archive running on Trusty, and am having problems working with EFI enabled instances on ARM64.
I've done some work with wgrant and gotten things to a stage where I can boot instances, using the aavmf images.
However, when I tried to delete a VM booted like this, I get an error:
libvirtError: Requested operation is not valid: cannot delete inactive domain with nvram
I've included the full traceback at https:/
Thanks to a suggestion from wgrant again, I got it working by editing nova/virt/
I've attached a rough patch.
Once that's applied and nova-compute restarted, I was able to delete the instance fine.
Could someone please investigate this and see if its the correct fix, and look at getting it fixed in the archive?
This was done on a updated trusty deployment using the cloud-archives for mitaka.
$ dpkg-query -W python-nova
python-nova 2:13.0.
Please let me know if you need any further information.
Changed in nova (Ubuntu): | |
status: | Confirmed → Triaged |
importance: | Undecided → Low |
tags: | added: arm64 hs-arm64 |
Changed in nova: | |
assignee: | nobody → Ching Kuo (gene-kuo) |
Changed in nova (Ubuntu): | |
assignee: | nobody → Ching Kuo (gene-kuo) |
Changed in nova: | |
assignee: | Ching Kuo (gene-kuo) → Kevin Zhao (kevin-zhao) |
Changed in nova (Ubuntu): | |
assignee: | Ching Kuo (gene-kuo) → Kevin Zhao (kevin-zhao) |
Changed in nova: | |
assignee: | Kevin Zhao (kevin-zhao) → Derek Higgins (derekh) |
tags: | added: uosci |
Changed in nova (Ubuntu Xenial): | |
assignee: | nobody → Chuck Short (zulcss) |
Changed in nova (Ubuntu Xenial): | |
status: | Triaged → Incomplete |
Changed in nova (Ubuntu Xenial): | |
status: | Incomplete → Triaged |
tags: |
added: verification-done verification-mitaka-done removed: verification-mitaka-needed verification-needed |
To get an arm64 UEFI instance running, grab libvirt (minor apparmor patch) and aavmf (UEFI firmware) from https:/ /launchpad. net/~wgrant/ +archive/ ubuntu/ scalingstack- trusty- mitaka/, then boot a uefi1 arm64 image with the hw_firmware_ type=uefi glance property set. But it's probably reproducible with amd64 UEFI instances too.
nova creates a libvirt instance with <loader> and <nvram> elements, and libvirt refuses to implicitly delete the nvram file. nova should probably be taught to force that, which is what my suggested delete_ configuration patch does.