After resolving our issues with the importer, (Nutanix OVA import fails (EntityValues.ova_null)), we ran into another issue when trying to start the VM – the operation failed with an error of duplicate PCI device:

libvirtError: XML error: Attempted double use of PCI Address 0000:00:01.0

INVALID_ARGUMENT: Traceback (most recent call last):
  File "build/bdist.linux-x86_64/egg/ergon/client/legacy/base_task.py", line 533, in _resume
  File "build/bdist.linux-x86_64/egg/acropolis/hypervisor/host.py", line 80, in wrapper
  File "build/bdist.linux-x86_64/egg/acropolis/vm/set_power_state_task.py", line 506, in _run
  File "build/bdist.linux-x86_64/egg/acropolis/vm/set_power_state_task.py", line 1481, in _power_on
  File "/usr/lib64/python2.7/contextlib.py", line 24, in __exit__
    self.gen.next()
  File "build/bdist.linux-x86_64/egg/acropolis/vm/set_power_state_task.py", line 1474, in _power_on
  File "build/bdist.linux-x86_64/egg/acropolis/vm/set_power_state_task.py", line 1049, in _power_state_transition_helper
  File "build/bdist.linux-x86_64/egg/acropolis/vm/set_power_state_task.py", line 929, in _power_state_transition_iterative_helper
  File "/usr/lib64/python2.7/contextlib.py", line 24, in __exit__
    self.gen.next()
  File "build/bdist.linux-x86_64/egg/acropolis/vm/set_power_state_task.py", line 900, in _power_state_transition_iterative_helper
  File "build/bdist.linux-x86_64/egg/acropolis/vm/set_power_state_task.py", line 1125, in _do_power_on
  File "build/bdist.linux-x86_64/egg/acropolis/hypervisor/kvm/libvirt_connection.py", line 294, in wrapper
  File "build/bdist.linux-x86_64/egg/acropolis/hypervisor/kvm/power_mixin.py", line 228, in power_on_vm
  File "/usr/local/nutanix/lib/py/pylibvirt-2.0.0-py2.7-linux-x86_64.egg/pylibvirt.py", line 441, in createXML
    cimpl = self._pool.call("DomainCreateXML", self._cimpl, xml_bytes, flags)
  File "/usr/local/nutanix/lib/py/pylibvirt-2.0.0-py2.7-linux-x86_64.egg/pylibvirt.py", line 111, in call
    raise libvirtError(*err)
libvirtError: XML error: Attempted double use of PCI Address 0000:00:01.0

For some reason it seems like the imported OVA, in this case the CheckMK Virtual Appliance, tries to set the SCSI controller to the same PCI Address as the Network card.

The solution in this case is simple (below have to be done in order):

  1. Update the VM
  2. Go to the network card section
  3. Create a new network card, it can be identical to the other one
  4. Remove the first network card
  5. Save the changes and try starting the VM again

With this process, Nutanix assigns another PCI address for the network card which resolves the issue.

Leave a comment

Your email address will not be published. Required fields are marked *