No valid host was found. There are not enough hosts available

user2315104 picture user2315104 · May 10, 2016 · Viewed 9.3k times · Source

I have installed openstack (liberty release). All the services are installed on the VM. Now i am trying to integrate the Ironic service and trying to provision the physical server. Nova compute service has configured for baremetal hypervisor and the command "nova hypervisor-stats" shows the correct output.

However, when i am trying to launch the instance from horizon , getting error

No valid host was found. There are not enough hosts available.

somehow , nova compute service is not able to connect to baremetal node OR ironic service. In fact , i have referred the doc : openstack troubleshoot doc

but no luck.

please suggest

Regards

Answer

Praveen Yalagandula picture Praveen Yalagandula · May 11, 2016

This typically happens when Nova scheduler tries to find a suitable host to instantiate your VM and then could not succeed. Nova scheduler first runs the list of all available hosts through a series of filters to narrow down the list to the best possible hosts that are capable of running that instance.

nova-scheduler.log:

... Filter ExactRamFilter returned 0 hosts
... Filtering removed all hosts for the request with reservation ID 'r-mld1goh8' and instance ID '98c49d72-9d8e-4377-bbe0-6dbef187e75a'. Filter results: ['RetryFilter: (start: 3, end: 3)', 'AvailabilityZoneFilter: (start: 3, end: 3)', 'ComputeFilter: (start: 3, end: 3)', 'ComputeCapabilitiesFilter: (start: 3, end: 3)', 'ImagePropertiesFilter: (start: 3, end: 3)', 'ExactRamFilter: (start: 3, end: 0)']

ExactRamFilter tries to match a host with the same amount of RAM as the amount of RAM specified in the flavor chosen for the VM. Either create a new flavor or use an existing flavor with exact RAM as the hosts, and you should be able to create the VM successfully (unless you run into some other issues).