Show Table of Contents
11.6. 对 "No Valid Host Found" 错误进行故障排除
在一些情况下,
/var/log/nova/nova-conductor.log 包括了以下错误:
NoValidHost: No valid host was found. There are not enough hosts available.
这意味着 nova Scheduler 无法找到合适的裸机节点来引导新的实例。造成这个问题的原因通常是 nova 所期望的资源和 Ironic 通知给 Nova 的资源不匹配。检查以下内容:
- 确保內省可以成功完成。否则,检查每个节点都包括了需要的 ironic 节点属性。对于每个节点:
$ ironic node-show [NODE UUID]
检查propertiesJSON 项中的cpus、cpu_arch、memory_mb和local_gb都有有效的值。 - 根据 ironic 节点属性检查使用的 nova flavor 没有超过特定数量:
$ nova flavor-show [FLAVOR NAME]
- 根据
ironic node-list检查有足够状态为available的节点。节点的状态为manageable通常意味着內省操作失败。 - 使用
ironic node-list检查没有处于维护模式的节点。当一个节点被自动变为维护模式时,通常意味着不正确的电源管理凭证。检查它们并删除维护模式:$ ironic node-set-maintenance [NODE UUID] off
- 如果您使用 AHC 工具程序来自动标记节点,请根据每个 flavor 和配置集来检查是否有足够的相关节点。检查
ironic node-show输出中的properties项的capabilities值。例如,一个标记为 Compute 角色的节点应该包括profile:compute。 - 在进行完內省操作后,从 ironic 为 nova 生成节点信息可能会需要一些时间来完成。director 的工具程序通常会把这个时间考虑进去。但是,如果您手工进行了一些操作,节点可能会在一个短时间内对 nova 无效。使用以下命令检查您的系统中的总资源:
$ nova hypervisor-stats

Where did the comment section go?
Red Hat's documentation publication system recently went through an upgrade to enable speedier, more mobile-friendly content. We decided to re-evaluate our commenting platform to ensure that it meets your expectations and serves as an optimal feedback mechanism. During this redesign, we invite your input on providing feedback on Red Hat documentation via the discussion platform.