← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1585893] [NEW] Launch instance got libvirtError for qemu unsupported IDE bus in AARCH64

 

Public bug reported:

Description
===========
After setup the nova development environment with devstack in aarch64 machine ,use the glance upload the image ,then use nova to launch the instance.Launching failed with the error "libvirtError: unsupported configuration: IDE controllers are unsupported for this QEMU binary or machine type".
 
Steps to reproduce
==================
1.Using devstack to deploy openstack. Using default local.conf.

2.Upload the aarch64 image with glance.
$ source ~/devstack/openrc admin admin
$ glance image-create --name image-arm64.img --disk-format qcow2 --container-format bare --visibility public --file images/image-arm64-wily.qcow2 --progress
$ glance image-create --name image-arm64.vmlinuz --disk-format aki --container-format aki --visibility public --file images/image-arm64-wily.vmlinuz --progress
$ glance image-create --name image-arm64.initrd --disk-format ari --container-format ari --visibility public --file images/image-arm64-wily.initrd --progress
$ IMAGE_UUID=$(glance image-list | grep image-arm64.img | awk '{ print $2 }')
$ IMAGE_KERNEL_UUID=$(glance image-list | grep image-arm64.vmlinuz | awk '{ print $2 }')
$ IMAGE_INITRD_UUID=$(glance image-list | grep image-arm64.initrd | awk '{ print $2 }')
$ glance image-update --kernel-id ${IMAGE_KERNEL_UUID} --ramdisk-id ${IMAGE_INITRD_UUID} ${IMAGE_UUID}

3.nova add keypair
$ nova keypair-add default --pub-key ~/.ssh/id_rsa.pub

4.Launch the instance:
$ image=$(nova image-list | egrep "image-arm64.img"'[^-]' | awk '{ print $2 }')
$ nova boot --flavor m1.medium --image ${image} --key-name default test-arm64

5.screen -x and select the n-cpu session to see the output.
Then will got the error.

Expected result
===============
After spawningn the instance, use :
$ nova list
We can see the instance is active.

Actual result
=============
Got the error: 
libvirtError: unsupported configuration: IDE controllers are unsupported for this QEMU binary or machine type

We can see the detailed information:
 ERROR nova.compute.manager [req-75325207-6c1b-481d-b188-a66c0a64eb89 admin admin] [instance: 188aa5bc-173c-46ec-b872-6bacb512911e] Instance failed to spawn
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e] Traceback (most recent call last):
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/opt/stack/nova/nova/compute/manager.py", line 2041, in _build_resources
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     yield resources
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/opt/stack/nova/nova/compute/manager.py", line 1887, in _build_and_run_instance
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     block_device_info=block_device_info)
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/opt/stack/nova/nova/virt/libvirt/driver.py", line 2569, in spawn
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     block_device_info=block_device_info)
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/opt/stack/nova/nova/virt/libvirt/driver.py", line 4713, in _create_domain_and_network
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     xml, pause=pause, power_on=power_on)
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/opt/stack/nova/nova/virt/libvirt/driver.py", line 4644, in _create_domain
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     guest.launch(pause=pause)
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/opt/stack/nova/nova/virt/libvirt/guest.py", line 142, in launch
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     self._encoded_xml, errors='ignore')
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 221, in __exit__
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     self.force_reraise()
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 197, in force_reraise
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     six.reraise(self.type_, self.value, self.tb)
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/opt/stack/nova/nova/virt/libvirt/guest.py", line 137, in launch
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     return self._domain.createWithFlags(flags)
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py", line 186, in doit
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     result = proxy_call(self._autowrap, f, *args, **kwargs)
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py", line 144, in proxy_call
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     rv = execute(f, *args, **kwargs)
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py", line 125, in execute
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     six.reraise(c, e, tb)
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py", line 83, in tworker
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     rv = meth(*args, **kwargs)
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/usr/local/lib/python2.7/dist-packages/libvirt.py", line 1065, in createWithFlags
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     if ret == -1: raise libvirtError ('virDomainCreateWithFlags() failed', dom=self)
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e] libvirtError: unsupported configuration: IDE controllers are unsupported for this QEMU binary or machine type
 TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]
 INFO nova.compute.manager [req-75325207-6c1b-481d-b188-a66c0a64eb89 admin admin] [instance: 188aa5bc-173c-46ec-b872-6bacb512911e] Terminating instance

Environment
===========
1. Exact version of OpenStack you are running. See the following
  list for all releases: http://docs.openstack.org/releases/
   Nova development, commit code: 9a05d38f48ef0f630c5e49e332075b273cee38b9
   

2. Which hypervisor did you use?
    Libvirt+KVM
    $ kvm --version
    QEMU emulator version 2.5.0 (Debian 1:2.5+dfsg-5ubuntu10.1), Copyright (c) 2003-2008 Fabrice Bellard
    $ libvirtd --version
    libvirtd (libvirt) 1.3.1

2. Which storage type did you use?
   In the host file system,all in one physics machine.q
stack@u202154:/opt/stack/nova$ df -hl
Filesystem      Size  Used Avail Use% Mounted on
udev            7.8G     0  7.8G   0% /dev
tmpfs           1.6G   61M  1.6G   4% /run
/dev/sda2       917G   41G  830G   5% /
tmpfs           7.9G     0  7.9G   0% /dev/shm
tmpfs           5.0M     0  5.0M   0% /run/lock
tmpfs           7.9G     0  7.9G   0% /sys/fs/cgroup
/dev/sda1       511M  888K  511M   1% /boot/efi
cgmfs           100K     0  100K   0% /run/cgmanager/fs
tmpfs           1.6G     0  1.6G   0% /run/user/1002
tmpfs           1.6G     0  1.6G   0% /run/user/1000
tmpfs           1.6G     0  1.6G   0% /run/user/0

3. Which networking type did you use?
   nova-network

4. Environment information:
   Architecture : AARCH64
   OS: Ubuntu 16.04

Detailed log info is in the accessory.
The guest xml is also in the log info.

** Affects: nova
     Importance: Undecided
     Assignee: Kevin Zhao (kevin-zhao)
         Status: New


** Tags: aarch64

** Attachment added: "Detailed log info"
   https://bugs.launchpad.net/bugs/1585893/+attachment/4670546/+files/log

** Changed in: nova
     Assignee: (unassigned) => Kevin Zhao (kevin-zhao)

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1585893

Title:
  Launch instance got libvirtError for qemu unsupported  IDE bus in
  AARCH64

Status in OpenStack Compute (nova):
  New

Bug description:
  Description
  ===========
  After setup the nova development environment with devstack in aarch64 machine ,use the glance upload the image ,then use nova to launch the instance.Launching failed with the error "libvirtError: unsupported configuration: IDE controllers are unsupported for this QEMU binary or machine type".
   
  Steps to reproduce
  ==================
  1.Using devstack to deploy openstack. Using default local.conf.

  2.Upload the aarch64 image with glance.
  $ source ~/devstack/openrc admin admin
  $ glance image-create --name image-arm64.img --disk-format qcow2 --container-format bare --visibility public --file images/image-arm64-wily.qcow2 --progress
  $ glance image-create --name image-arm64.vmlinuz --disk-format aki --container-format aki --visibility public --file images/image-arm64-wily.vmlinuz --progress
  $ glance image-create --name image-arm64.initrd --disk-format ari --container-format ari --visibility public --file images/image-arm64-wily.initrd --progress
  $ IMAGE_UUID=$(glance image-list | grep image-arm64.img | awk '{ print $2 }')
  $ IMAGE_KERNEL_UUID=$(glance image-list | grep image-arm64.vmlinuz | awk '{ print $2 }')
  $ IMAGE_INITRD_UUID=$(glance image-list | grep image-arm64.initrd | awk '{ print $2 }')
  $ glance image-update --kernel-id ${IMAGE_KERNEL_UUID} --ramdisk-id ${IMAGE_INITRD_UUID} ${IMAGE_UUID}

  3.nova add keypair
  $ nova keypair-add default --pub-key ~/.ssh/id_rsa.pub

  4.Launch the instance:
  $ image=$(nova image-list | egrep "image-arm64.img"'[^-]' | awk '{ print $2 }')
  $ nova boot --flavor m1.medium --image ${image} --key-name default test-arm64

  5.screen -x and select the n-cpu session to see the output.
  Then will got the error.

  Expected result
  ===============
  After spawningn the instance, use :
  $ nova list
  We can see the instance is active.

  Actual result
  =============
  Got the error: 
  libvirtError: unsupported configuration: IDE controllers are unsupported for this QEMU binary or machine type

  We can see the detailed information:
   ERROR nova.compute.manager [req-75325207-6c1b-481d-b188-a66c0a64eb89 admin admin] [instance: 188aa5bc-173c-46ec-b872-6bacb512911e] Instance failed to spawn
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e] Traceback (most recent call last):
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/opt/stack/nova/nova/compute/manager.py", line 2041, in _build_resources
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     yield resources
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/opt/stack/nova/nova/compute/manager.py", line 1887, in _build_and_run_instance
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     block_device_info=block_device_info)
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/opt/stack/nova/nova/virt/libvirt/driver.py", line 2569, in spawn
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     block_device_info=block_device_info)
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/opt/stack/nova/nova/virt/libvirt/driver.py", line 4713, in _create_domain_and_network
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     xml, pause=pause, power_on=power_on)
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/opt/stack/nova/nova/virt/libvirt/driver.py", line 4644, in _create_domain
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     guest.launch(pause=pause)
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/opt/stack/nova/nova/virt/libvirt/guest.py", line 142, in launch
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     self._encoded_xml, errors='ignore')
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 221, in __exit__
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     self.force_reraise()
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/usr/local/lib/python2.7/dist-packages/oslo_utils/excutils.py", line 197, in force_reraise
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     six.reraise(self.type_, self.value, self.tb)
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/opt/stack/nova/nova/virt/libvirt/guest.py", line 137, in launch
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     return self._domain.createWithFlags(flags)
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py", line 186, in doit
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     result = proxy_call(self._autowrap, f, *args, **kwargs)
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py", line 144, in proxy_call
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     rv = execute(f, *args, **kwargs)
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py", line 125, in execute
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     six.reraise(c, e, tb)
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/usr/local/lib/python2.7/dist-packages/eventlet/tpool.py", line 83, in tworker
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     rv = meth(*args, **kwargs)
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]   File "/usr/local/lib/python2.7/dist-packages/libvirt.py", line 1065, in createWithFlags
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]     if ret == -1: raise libvirtError ('virDomainCreateWithFlags() failed', dom=self)
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e] libvirtError: unsupported configuration: IDE controllers are unsupported for this QEMU binary or machine type
   TRACE nova.compute.manager [instance: 188aa5bc-173c-46ec-b872-6bacb512911e]
   INFO nova.compute.manager [req-75325207-6c1b-481d-b188-a66c0a64eb89 admin admin] [instance: 188aa5bc-173c-46ec-b872-6bacb512911e] Terminating instance

  Environment
  ===========
  1. Exact version of OpenStack you are running. See the following
    list for all releases: http://docs.openstack.org/releases/
     Nova development, commit code: 9a05d38f48ef0f630c5e49e332075b273cee38b9
     

  2. Which hypervisor did you use?
      Libvirt+KVM
      $ kvm --version
      QEMU emulator version 2.5.0 (Debian 1:2.5+dfsg-5ubuntu10.1), Copyright (c) 2003-2008 Fabrice Bellard
      $ libvirtd --version
      libvirtd (libvirt) 1.3.1

  2. Which storage type did you use?
     In the host file system,all in one physics machine.q
  stack@u202154:/opt/stack/nova$ df -hl
  Filesystem      Size  Used Avail Use% Mounted on
  udev            7.8G     0  7.8G   0% /dev
  tmpfs           1.6G   61M  1.6G   4% /run
  /dev/sda2       917G   41G  830G   5% /
  tmpfs           7.9G     0  7.9G   0% /dev/shm
  tmpfs           5.0M     0  5.0M   0% /run/lock
  tmpfs           7.9G     0  7.9G   0% /sys/fs/cgroup
  /dev/sda1       511M  888K  511M   1% /boot/efi
  cgmfs           100K     0  100K   0% /run/cgmanager/fs
  tmpfs           1.6G     0  1.6G   0% /run/user/1002
  tmpfs           1.6G     0  1.6G   0% /run/user/1000
  tmpfs           1.6G     0  1.6G   0% /run/user/0

  3. Which networking type did you use?
     nova-network

  4. Environment information:
     Architecture : AARCH64
     OS: Ubuntu 16.04

  Detailed log info is in the accessory.
  The guest xml is also in the log info.

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1585893/+subscriptions


Follow ups