OpenStack使用Placement做资源管理时虚拟机无法调度的一次排错记录

本文档记录了一次排查OpenStack Nova调度失败的问题,日志显示无法找到满足64C128G资源需求的节点。通过检查资源、Placement API和代码调试,发现资源分配上限没有乘以超分倍数。超分在CPU上并不适用,因为CPU核数是固定的。同时讨论了内存和磁盘的超分实现。

1. 场景说明

计算节点能分配的最大虚拟机资源不能大于自身资源 – 出错时还挂在嘴边,但真正有所体会和认知,往往是在挨了毒打之后

组件 版本 备注
OpenStack train
Nova 20.6.0-1
Placement 2.0.1-1
python2-osc-placement 1.7.0-1 安装之后就可以使用OpenStack命令行操作placement api了,例如resource provider 等命令
计算节点CPU个数 48
计算节点CPU超分比 4

环境信息如上,需要申请一台64C128G的虚拟机,申请时秒报错

1.1. 日志

排错时日志开debug模式
如果是高可用模式,则先只保留一个可用的服务做测试,其余的都关闭

  • /var/log/nova/nova-conductor.log
e0210a948 0fe34a6944b4416195ff5176f681c34f - default default] Failed to schedule instances: NoValidHost_Remote: No valid host was found.
Traceback (most recent call last):

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

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

NoValidHost: No valid host was found.
  • /var/log/nova/nova-scheduler.log
20596:2021-07-30 14:46:16.665 175316 INFO nova.scheduler.manager [None req-cb66e713-19a8-45d2-b107-dd31569f4653 b5957a478f0d4c328ef10cee0210a948 0fe34a6944b4416195ff5176f681c34f - default default] Got no allocation candidates from the Placement API. This could be due to 
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值