We are committed to provide service 24 X 7

Deals, Shopping, Training, Tools

Learn how to – Fix Openstack Nova error “NoValidHost: No valid host was found.There are not enough hosts available. “

Learn how to – Fix Openstack Nova error “NoValidHost: No valid host was found.There are not enough hosts available. “.

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

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

QEMU

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.

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.

Tags:

  • 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

Cart

Your Cart is Empty

Back To Shop