I was trying to Deploy Openstack for testing inside VirtualBox and i got an error “NoValidHost: No valid host was found. There are not enough hosts available.” while trying to run an instance with nova boot command.

I did it after converting VDI to Qcow2 and trying to launch it on Nova, check

How to convert VirtualBox Disk Image (VDI) and img to Qcow2 format

This normally happens when you’re using qemu as hypervisor inside VirtualBox instead of KVM acceleration to run Openstack Compute service (Nova).


From the perspective of the Compute service, the QEMU hypervisor is very similar to the KVM hypervisor. Both are controlled through libvirt, both support the same feature set, and all virtual machine images that are compatible with KVM are also compatible with QEMU.

The main difference is that QEMU does not support native virtualization. Consequently, QEMU has worse performance than KVM and is a poor choice for a production deployment.

fix no valid host

When you try to launch an instance with nova boot command and get status ‘ERROR’, the log file /var/log/nova/nova-conductor.log is likely outputting the error “NoValidHost: No valid host was found.There are not enough hosts available. “. You can check it by running:

tail -f /var/log/nova/nova-conductor.log

To fix this problem, open nova.conf file and add the following lines.

openstack-config --set /etc/nova/nova.conf DEFAULT compute_driver libvirt.LibvirtDriver
openstack-config --set /etc/nova/nova.conf libvirt virt_type qemu

We enabled QEMU with above command and make compute driver to be libvirt.LibvirtDriver.
If  you’re running Openstck on a Bare Metal server, you’ll have to set virt_type to kvm. Your configuration will look as below:

openstack-config --set /etc/nova/nova.conf DEFAULT compute_driver libvirt.LibvirtDriver
openstack-config --set /etc/nova/nova.conf libvirt virt_type kvm

All values that can be set for virt_type depending on the hypervisor you’re using are:

  1. kvm
  2. lxc
  3. qemu
  4. uml
  5. xen
  6. parallels

For some operations you may also have to install the guestmount utility:
On Ubuntu/Debian

sudo apt-get install guestmount

On CentOS and RHEL

sudo yum install libguestfs-tools

On openSUSE:

sudo zypper install guestfs-tools

Both QEMU and KVM hypervisor supports the following virtual machine image formats:

  1. Raw
  2. QEMU Copy-on-write (qcow2)
  3. VMware virtual machine disk format (vmdk)

You should now be able to launch an instance with Openstack Nova using QEMU hypervisor.


  • How to Setup Qemu as Openstack Hypervisor
  • How to Fix “NoValidHost: No valid host was found.There are not enough hosts available. on CentOS 7 Openstack Host OS.
  • Installing guestfs-tools on Linux
  • Nova integration with Qemu

More on OpenStack:

How To Migrate OpenStack Instance from one Compute Host to Another

How To Resize OpenStack Instance / Virtual Machine

How To Create OpenStack Cinder Volumes and Attach to a VM

How To Add RHEL 8 qcow2 Image To OpenStack Glance

Your support is our everlasting motivation,
that cup of coffee is what keeps us going!

As we continue to grow, we would wish to reach and impact more people who visit and take advantage of the guides we have on our blog. This is a big task for us and we are so far extremely grateful for the kind people who have shown amazing support for our work over the time we have been online.

Thank You for your support as we work to give you the best of guides and articles. Click below to buy us a coffee.


Please enter your comment!
Please enter your name here