The **NoValidHost** error is encountered when the scheduler filters eliminate all available hosts as potential targets for the instance. To confirm which filter(s) are rejecting hosts set **debug=True** in the **/etc/nova/nova.conf** on the node(s) running the scheduler and restart the scheduler service. Then re-attempt instance creation and watch the **/var/log/nova/scheduler.log** file for lines like:
[req-... None] Starting with 3 host(s)
[req-... None] Filter RetryFilter returned 3 host(s)
[req-... None] Filter AvailabilityZoneFilter returned 3 host(s)
[req-... None] Filter RamFilter returned 2 host(s)
...
[req-... None] Filtered [(localhost.localdomain, localhost.localdomain) ram:3208 disk:7168 io_ops:0 instances:1] _schedule ...
[req-... None] Weighed [WeighedHost [host: (localhost.localdomain, localhost.localdomain) ram:3208 disk:7168 io_ops:0 instances:1, weight: 1.0]] ...
Note that these lines were redacted somewhat for brevity. From this output you can determine which filter(s) eliminated hosts.
↧