Openstack Compute 无法根据类型和实例数量 运行 个实例

Openstack Compute fails to run instances based on flavor and number of instances

我正在尝试创建各种实例,但 Compute 无法生成其中的一些实例。

我的实例具有以下特点:

名称:第三实例 从图片创建:CentOS-7-x86_64 风味:m1.medium(2 个 VCPU,4GB 内存,40GB 磁盘)

我还有另外两个实例 运行ning。除非我使用 m1.small 风格(1VCPU、2GB 内存、20GB 磁盘),否则我无法生成这些实例。任何与该风格的偏差和实例生成失败。

不幸的是,无论使用哪种口味,我的 ThirdInstance 都无法生成。我尝试用 m1.small 创建它,但一直失败。

我查看了 Nova 日志,并注意到当我尝试创建此实例时,我一直在 nova-conductor.log 文件中收到以下消息:

2020-08-29 13:21:09.637 98391 ERROR nova.conductor.manager
2020-08-29 13:21:09.637 98391 ERROR nova.conductor.manager
2020-08-29 13:21:09.890 98391 WARNING nova.scheduler.utils [req-30539015-22f1-4d46-b8b7-63f9c679eed1 4c4c7de6dd134250972958ce260530f2 166dc91ccec24f21963c71a437380ee9 - default default] Failed to compute_task_build_instances: No valid host was found.
Traceback (most recent call last):

  File "/usr/lib/python3.6/site-packages/oslo_messaging/rpc/server.py", line 241, in inner
    return func(*args, **kwargs)

  File "/usr/lib/python3.6/site-packages/nova/scheduler/manager.py", line 200, in select_destinations
    raise exception.NoValidHost(reason="")

nova.exception.NoValidHost: No valid host was found.
: nova.exception_Remote.NoValidHost_Remote: No valid host was found.
2020-08-29 13:21:09.891 98391 WARNING nova.scheduler.utils [req-30539015-22f1-4d46-b8b7-63f9c679eed1 4c4c7de6dd134250972958ce260530f2 166dc91ccec24f21963c71a437380ee9 - default default] [instance: fe54feaf-ecb6-4725-97e9-7d208066ddb0] Setting instance to ERROR state.: nova.exception_Remote.NoValidHost_Remote: No valid host was found.

我在这里错过了什么?当我尝试使用 m1.small 以外的其他风格时,是什么原因导致这些“找不到主机”失败的?为什么无论使用哪种风格,第三个实例都无法生成???如何(如果可能)将这些实例正确地 运行?

注意:我在 CentOS 8 上使用从 Packstack 创建的安装。我的机器是 2 核的,有 32G 内存和 3 TB 磁盘 space。 Openstack版本为Ussuri。

在我看来你没有足够的资源,尤其是 CPU-cores。您已经写过,您的节点只有两个内核,并且您已经生成了 2 个 small flavor 的 VM,每个需要 1 个内核。这个 No valid host was found-错误也会出现,当找不到 compute-host 具有足够的资源用于所选风味时。

这个你可以自己查:

运行 openstack hypervisor list 列出您的管理程序,然后 openstack hypervisor show <ID> 使用您的管理程序的 ID。在输出中,您会发现 vcpusvcpus_usedvcpus 是所选 compute-host 上 cpu-cores 的最大可用数量。根据您问题的信息,我认为这两个值在您的情况下都是 2,这会告诉您,您的第三个 VM 没有足够的资源。