If you’re receiving the following errors when trying to launch an instance on a new OpenStack installation (or even an existing one):

● Exceeded max scheduling attempts 3 for instance xxxx
● 500 – No Valid host Was Found

You may be having an issue with libvert not finding a compute node that has the hardware capabilities to run the specified hypervisor.

1st : check /var/log/nova/nova-scheduler.log , you may find the following, which is an indicator that nova-conductor could not find a compute node with the OpenStack configured hypervisor capabilities:

was re-scheduled: invalid argument: could not find capabilities for domaintype=kvm

You can also verify if libvirtd is being sent kvm reqiuests by checking libvirtd via systemctl :

[root@localhost ~]# systemctl status libvirtd

●  libvirtd.service – Virtualization daemon

Loaded: loaded (/usr/lib/systemd/system/libvirtd.service; enabled; vendor preset: enabled)

Active: active (running) since Sun 2016-04-03 15:30:03 PDT; 7h ago

Docs: man:libvirtd(8)

http://libvirt.org

Main PID: 24783 (libvirtd)

CGroup: /system.slice/libvirtd.service

└─24783 /usr/sbin/libvirtd –listen

 

Apr 03 18:13:53 localhost.localdomain libvirtd[24783]: invalid argument: could not find capabilities for domaintype=kvm

Apr 03 18:17:52 localhost.localdomain libvirtd[24783]: invalid argument: could not find capabilities for arch=x86_64 domaintype=kvm

Apr 03 18:17:52 localhost.localdomain libvirtd[24783]: invalid argument: could not find capabilities for domaintype=kvm

Apr 03 21:03:29 localhost.localdomain libvirtd[24783]: End of file while reading data: Input/output error

Apr 03 22:18:33 localhost.localdomain libvirtd[24783]: invalid argument: could not find capabilities for arch=x86_64 domaintype=kvm

Apr 03 22:18:33 localhost.localdomain libvirtd[24783]: invalid argument: could not find capabilities for domaintype=kvm

Apr 03 22:31:08 localhost.localdomain libvirtd[24783]: invalid argument: could not find capabilities for arch=x86_64 domaintype=kvm

Apr 03 22:31:08 localhost.localdomain libvirtd[24783]: invalid argument: could not find capabilities for domaintype=kvm

Apr 03 22:36:58 localhost.localdomain libvirtd[24783]: invalid argument: could not find capabilities for arch=x86_64 domaintype=kvm

Apr 03 22:36:58 localhost.localdomain libvirtd[24783]: invalid argument: could not find capabilities for domaintype=kvm

 

Check if your system can run kvm:

egrep -c ‘(vmx|svm)’ /proc/cpuinfo

 

if this returns a 0, you must force QEMU, as your system/CPU does not support kvm.

openstack-config –set /etc/nova/nova.conf libvirt virt_type qemu

 

For CentOS 7.x then do the following:

systemctl restart libvirtd

systemctl restart openstack-nova-compute