云计算|OpenStack|社区版OpenStack安装部署文档(十--- 调整配额限制和解决建虚拟机报错---No valid host was found---Rocky版)

简介: 云计算|OpenStack|社区版OpenStack安装部署文档(十--- 调整配额限制和解决建虚拟机报错---No valid host was found---Rocky版)

前言:

默认的openstack安装完毕后,基本都是使用默认值得,因此,如果是在实际的应用中,很可能会不够用,例如,虚拟机实例创建数默认是10个,超出10个将会创建失败。

那么,如何设置配额或者是直接关闭配额是一个需要思考的问题。

其次,是一个创建虚拟机实例的时候经常报错的问题,No valid host was found,本文将深入分析此报错的原因以及解决方案。

一,

认识并了解openstack的官方文档

官方文档链接:OpenStack Docs: Zed

首先不得不说openstack的官方文档内容非常的多,但,openstack的方方面面都有写到,只是有一些地方并不是非常的清楚。

OK,yum部署openstack是选择installation guides,那么,安装部署完毕后,如何调试安装好的openstack呢?

OpenStack Docs: Configuration Guide

OK,根据此文档,配置/etc/nova/nova.conf 文件如下:

openstack-config --set /etc/nova/nova.conf DEFAULT quota_instances 1000000
openstack-config --set /etc/nova/nova.conf DEFAULT quota_cores 2000
openstack-config --set /etc/nova/nova.conf DEFAULT quota_ram 5120000

重启nova-api服务,以使以上配置生效:

systemctl restart openstack-nova-api

在dashboard里的概况里,可以看到配额已经生效:

那么,如何关闭所有配额,无限制使用呢?

driver

Type: string
Default: nova.quota.DbQuotaDriver
Valid Values: nova.quota.DbQuotaDriver, nova.quota.NoopQuotaDriver

Provides abstraction for quota checks. Users can configure a specific driver to use for quota checks.

Possible values:

  • nova.quota.DbQuotaDriver: Stores quota limit information in the database and relies on the quota_* configuration options for default quota limit values. Counts quota usage on-demand.
  • nova.quota.NoopQuotaDriver: Ignores quota and treats all resources as unlimited.

修改成这样后,在重启nova-api服务,在dashboard里,可以看到配额全部取消了:

卷的配额同样以这种方式修改,官方文档:OpenStack Docs: Additional options

在此就不演示了

二,

创建虚拟机实例时报错:No valid host was found

创建虚拟机的命令:

openstack server create --flavor m1.large  --image new1 --security-group default --key-name mykey newlinux1
[root@openstack1 ~]# openstack flavor list
+----+-----------+-------+------+-----------+-------+-----------+
| ID | Name      |   RAM | Disk | Ephemeral | VCPUs | Is Public |
+----+-----------+-------+------+-----------+-------+-----------+
| 0  | m1.nano   |    64 |    1 |         0 |     1 | True      |
| 1  | m1.tiny   |  1024 |   50 |         0 |     1 | True      |
| 2  | m1.small  |  2048 |  500 |         0 |     1 | True      |
| 3  | m1.medium |  4096 |  500 |         0 |     2 | True      |
| 4  | m1.large  |  8192 |  500 |         0 |     4 | True      |
| 5  | m1.xlarge | 16384 |  500 |         0 |     8 | True      |
+----+-----------+-------+------+-----------+-------+-----------+
[root@openstack1 ~]# openstack server create --flavor m1.large  --image newlinux --security-group default --key-name mykey newlinux1
Could not find resource newlinux
[root@openstack1 ~]# openstack image list
+--------------------------------------+---------+--------+
| ID                                   | Name    | Status |
+--------------------------------------+---------+--------+
| 200984db-d793-4a1b-808a-5c78fd0028f7 | Centos7 | active |
| 4737972b-31e8-4bef-9ad0-e542b271dbf7 | back    | active |
| 867784df-9090-4ae0-ad25-564b941cc350 | cirros  | active |
| 2b527304-8fe6-4582-8451-8feba9a86cfb | new1    | active |
+--------------------------------------+---------+--------+

OK,实例模板使用的是large,而控制节点的配置总共才8G内存,100G硬盘,很明显是超出了节点的可使用资源。

当然,这个问题看日志也基本看不出来什么原因,只是给了一个报错

tail -f /var/log/nova/nova-conductor.log
2023-02-05 14:09:58.647 1685 ERROR nova.conductor.manager   File "/usr/lib/python2.7/site-packages/nova/scheduler/manager.py", line 154, in select_destinations
2023-02-05 14:09:58.647 1685 ERROR nova.conductor.manager     raise exception.NoValidHost(reason="")
2023-02-05 14:09:58.647 1685 ERROR nova.conductor.manager
2023-02-05 14:09:58.647 1685 ERROR nova.conductor.manager NoValidHost: No valid host was found.
2023-02-05 14:09:58.647 1685 ERROR nova.conductor.manager
2023-02-05 14:09:58.647 1685 ERROR nova.conductor.manager
2023-02-05 14:09:58.815 1685 WARNING nova.scheduler.utils [req-f387e7f7-d1f7-4346-8387-9c027d20eb49 74bc206609e04092b698698d944e922a 205ce8addd9444c893bd62244bcdae78 - default default] Failed to compute_task_build_instances: No valid host was found.
Traceback (most recent call last):
  File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/server.py", line 229, in inner
    return func(*args, **kwargs)
  File "/usr/lib/python2.7/site-packages/nova/scheduler/manager.py", line 154, in select_destinations
    raise exception.NoValidHost(reason="")
NoValidHost: No valid host was found.
: NoValidHost_Remote: No valid host was found.
2023-02-05 14:09:58.820 1685 WARNING nova.scheduler.utils [req-f387e7f7-d1f7-4346-8387-9c027d20eb49 74bc206609e04092b698698d944e922a 205ce8addd9444c893bd62244bcdae78 - default default] [instance: ad3da68e-0cc8-4406-8f87-34dff4bc277a] Setting instance to ERROR state.: NoValidHost_Remote: No valid host was found.

总的来说,出现此种错误一般是节点资源不足造成的,因此,创建虚拟机实例的时候需要使用一个合适的虚拟机模板(也就是flavor )

本例中,创建虚拟机的时候使用m1.tiny 这个模板是比较合适的,改用如下命令后,即可成功创建虚拟机了:

openstack server create --flavor m1.tiny  --image new1 --security-group default --key-name mykey newlinux1

 

目录
相关文章
|
4月前
|
Ubuntu Shell 网络安全
安装了ubuntu虚拟机后发现shell无法连接 ubuntu开启ssh连接
【8月更文挑战第23天】安装了ubuntu虚拟机后发现shell无法连接
346 6
|
2月前
|
数据可视化 大数据 Linux
OpenEuler虚拟机安装保姆级教程 | 附可视化界面
本文介绍了如何在VMware中安装openEuler操作系统,从选择合适的镜像版本下载开始,到创建虚拟机、配置CPU虚拟化、进行系统安装、设置网络连接,直至安装DDE桌面环境实现图形化操作。openEuler是一款由华为开源的操作系统,支持多种处理器架构,广泛应用于数据库、大数据、云计算等领域。文中还分享了安装过程中的注意事项及解决网络问题的方法,适合初次接触openEuler的用户参考学习。
450 3
OpenEuler虚拟机安装保姆级教程 | 附可视化界面
|
3月前
|
Unix Linux 开发工具
centos的官网下载和vm16虚拟机安装centos8【保姆级教程图解】
本文详细介绍了如何在官网下载CentOS 8以及在VMware Workstation Pro 16虚拟机上安装CentOS 8的步骤,包括可能出现的问题和解决方案,如vcpu-0错误的处理方法。
centos的官网下载和vm16虚拟机安装centos8【保姆级教程图解】
|
2月前
|
Linux 虚拟化
vmware虚拟机安装2024(超详细)
vmware虚拟机安装2024(超详细)
368 6
|
4月前
|
测试技术 Linux 虚拟化
iOS自动化测试方案(五):保姆级VMware虚拟机安装MacOS
详细的VMware虚拟机安装macOS Big Sur的保姆级教程,包括下载VMware和macOS镜像、图解安装步骤和遇到问题时的解决方案,旨在帮助读者顺利搭建macOS虚拟机环境。
182 3
iOS自动化测试方案(五):保姆级VMware虚拟机安装MacOS
|
4月前
|
存储 Linux 云计算
OpenStack云计算平台搭建
OpenStack 是一个开源的云平台管理项目,通过多个核心组件实现公有云、私有云和混合云的构建与管理。自2010年由NASA和Rackspace联合发起以来,已有众多企业和个人参与开发。OpenStack 简化了云部署流程,支持计算、存储和网络资源的高效管理,并兼容多种虚拟化技术和容器。最新版本为Xena,广泛应用于各行各业,如思科、英特尔等公司。
438 0
|
网络协议 Linux 网络安全
openstack 云平台一体化部署(超详细)
openstack 云平台一体化部署(超详细)
1345 0
openstack 云平台一体化部署(超详细)
|
4月前
|
消息中间件 缓存 Shell
跟我一起来学OpenStack部署
跟我一起来学OpenStack部署
344 0
|
5月前
|
存储 数据安全/隐私保护 Docker
Kolla-ansible部署openStack
Kolla-ansible部署openStack
460 11
|
7月前
|
Linux 网络安全 数据库
openstack 部署单节点
在CentOS 7系统上,配置了一台拥有4核CPU、8GB内存和300GB磁盘的服务器,安装了OpenStack Trian版本。安装完成后,获取了OpenStack管理控制台的登录凭证(admin用户和密码),可访问IP地址192.168.200.249/dashboard进行登录。如果遇到问题,可能需要重新安装以确保纯净环境。
340 0