HPE Morpheus VM Essentials
1823417 Members
2621 Online
109655 Solutions
New Discussion

Failed to Deploy VM: unsupported emulator machine type

 
shiba9967
Occasional Contributor

Failed to Deploy VM: unsupported emulator machine type

When deploying a VM via VME, deployment fails with the following error:

Error Defining VM via libvirt: error: Failed to define domain from xxx (VM xml)
error: unsupported configuration: Emulator '/usr/bin/qemu-system-x86_64' does not support machine type 'pc-q35-8.2'


The host configuration is as follows:

  • Ubuntu 22.04
  • hpe-vm 1.0.5
  • qemu-system-x86 (jammy-updates), version 1:6.2+dfsg-2ubuntu6.26 amd64 [installed]

 

The guest OS configuration is:

  • CentOS 7
  • virtio is installed
  • qemu guest agent is installed

 

After deployment fails, if I SSH into the host OS and manually edit the XML, the VM can boot successfully.

Before modification:
  <type arch='x86_64' machine='pc-q35-8.2'>hvm</type>
  <controller type='pci' model='pcie-root-port' index='9'/>

After modification:
  <type arch='x86_64'>hvm</type>
  <!-- The controller line has been removed -->

The default QEMU machine types are as follows, and specifying one of these default types allows the VM to start without issues:
# qemu-system-x86_64 -machine ?
Supported machines are:
pc-i440fx-jammy Ubuntu 22.04 PC (i440FX + PIIX, 1996) (default)

It appears that the machine type and PCI controller are being automatically set during deployment, causing the failure.
Because manually editing the XML file every time after deployment is troublesome, is there a solution to make the deployment succeed correctly without manual intervention?