当前位置: 首页 > news >正文

云计算|OpenStack|错误记录和解决方案(不定时更新)

前言:

openstack的部署和使用是难度比较大的,难免会出现各种各样的问题,因此,本文将把一些在部署和使用openstack社区版时出现的错误做一个记录,并就每一个错误分析和解决问题。(尽量记录比较经典的错误,太弱智的那些就不记录了)

一,

错误前情回顾:

创建虚拟机实例失败

创建实例的命令是:

openstack server create  --flavor m1.tiny --image Centos7   --nic net-id=688a0356-4f2b-4029-b49e-a11bbdbedf0b --key-name mykey --security-group e5f115d2-3c65-4bc5-89db-b9f725ee81db    centos7-init2
错误: 实例 "centos7-init2" 执行所请求操作失败,实例处于错误状态。: 请稍后再试 [错误: Exceeded maximum number of retries. Exhausted all hosts available for retrying build failures for instance 1bd5d1af-17b1-4524-9f9c-6be299d68293.]. 

 

在dashboard内,查看实例详情,可以看到错误日志:


消息Exceeded maximum number of retries. Exhausted all hosts available for retrying build failures for instance 17fe6f00-4560-476a-a79b-e6f62d866155.
编码500
详情Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/nova/conductor/manager.py", line 624, in build_instances raise exception.MaxRetriesExceeded(reason=msg) MaxRetriesExceeded: Exceeded maximum number of retries. Exhausted all hosts available for retrying build failures for instance 17fe6f00-4560-476a-a79b-e6f62d866155. 
已创建Feb. 11, 2023, 5:23 p.m. 

虚拟机实例状态是:

 

 

解析:

错误代码是500,并且虚拟机没有获取到fix ip地址,上面最后一图IP地址那是空缺的

以上表明错误发生在网络层面,错误提示是在尝试N次后,虚拟机实例仍无法调度,因此,错误日志必定在nova这个服务内有所体现

因此,在所有包含nova的节点执行以下命令,快速查找错误:

grep "ERROR" /var/log/nova/*

在其中一个计算节点,发现如下日志:

倒数第二行提示security group没有被发现

/var/log/nova/nova-compute.log:2023-02-11 16:49:29.901 970 ERROR nova.compute.manager [instance: 1bd5d1af-17b1-4524-9f9c-6be299d68293]   File "/usr/lib/python2.7/site-packages/nova/network/neutronv2/api.py", line 1042, in allocate_for_instance
/var/log/nova/nova-compute.log:2023-02-11 16:49:29.901 970 ERROR nova.compute.manager [instance: 1bd5d1af-17b1-4524-9f9c-6be299d68293]     instance, neutron, security_groups)
/var/log/nova/nova-compute.log:2023-02-11 16:49:29.901 970 ERROR nova.compute.manager [instance: 1bd5d1af-17b1-4524-9f9c-6be299d68293]   File "/usr/lib/python2.7/site-packages/nova/network/neutronv2/api.py", line 829, in _process_security_groups
/var/log/nova/nova-compute.log:2023-02-11 16:49:29.901 970 ERROR nova.compute.manager [instance: 1bd5d1af-17b1-4524-9f9c-6be299d68293]     security_group_id=security_group)
/var/log/nova/nova-compute.log:2023-02-11 16:49:29.901 970 ERROR nova.compute.manager [instance: 1bd5d1af-17b1-4524-9f9c-6be299d68293] SecurityGroupNotFound: Security group e5f115d2-3c65-4bc5-89db-b9f725ee81db not found.
/var/log/nova/nova-compute.log:2023-02-11 16:49:29.901 970 ERROR nova.compute.manager [instance: 1bd5d1af-17b1-4524-9f9c-6be299d68293] 

结合实例启动的时间和日志文件内的上下文,可以确定原因是security group没有找到的原因

查看安全组:

[root@openstack1 ~]# openstack security group list
+--------------------------------------+---------+------------------------+----------------------------------+------+
| ID                                   | Name    | Description            | Project                          | Tags |
+--------------------------------------+---------+------------------------+----------------------------------+------+
| 2035d43a-0e81-4257-bd23-13af431b9f91 | default | Default security group | 205ce8addd9444c893bd62244bcdae78 | []   |
| 5b1b71d7-5e24-4011-82ca-0ddabfd32e8a | default | Default security group |                                  | []   |
| e5f115d2-3c65-4bc5-89db-b9f725ee81db | default | Default security group | ae2263d201c0437788c85f1178b91dbe | []   |
+--------------------------------------+---------+------------------------+----------------------------------+------+
[root@openstack1 ~]# openstack project list
+----------------------------------+---------+
| ID                               | Name    |
+----------------------------------+---------+
| 205ce8addd9444c893bd62244bcdae78 | admin   |
| ae2263d201c0437788c85f1178b91dbe | service |
+----------------------------------+---------+

这里就很奇怪了,安全组可以看到,但openstack创建实例的时候又找不到了,可能和前面调整了网络有关系,

解决方案:

要么重建安全组,要么使用第一个 也就是admin项目的安全组,因为是用的admin登陆的openstack

删除实例,重新创建,创建的时候使用2035d43a-0e81-4257-bd23-13af431b9f91 这个安全组:

[root@openstack1 ~]# openstack server delete centos7-init2
[root@openstack1 ~]# openstack server create  --flavor m1.tiny --image Centos7   --nic net-id=688a0356-4f2b-4029-b49e-a11bbdbedf0b --key-name mykey --security-group 2035d43a-0e81-4257-bd23-13af431b9f91   --user-data /tmp/centos.config --config-drive true centos7-init2
+-------------------------------------+------------------------------------------------+
| Field                               | Value                                          |
+-------------------------------------+------------------------------------------------+
| OS-DCF:diskConfig                   | MANUAL                                         |
| OS-EXT-AZ:availability_zone         |                                                |
| OS-EXT-SRV-ATTR:host                | None                                           |
| OS-EXT-SRV-ATTR:hypervisor_hostname | None                                           |
| OS-EXT-SRV-ATTR:instance_name       |                                                |
| OS-EXT-STS:power_state              | NOSTATE                                        |
| OS-EXT-STS:task_state               | scheduling                                     |
| OS-EXT-STS:vm_state                 | building                                       |
| OS-SRV-USG:launched_at              | None                                           |
| OS-SRV-USG:terminated_at            | None                                           |
| accessIPv4                          |                                                |
| accessIPv6                          |                                                |
| addresses                           |                                                |
| adminPass                           | YpnXPX8xmK7T                                   |
| config_drive                        | True                                           |
| created                             | 2023-02-11T09:18:31Z                           |
| flavor                              | m1.tiny (1)                                    |
| hostId                              |                                                |
| id                                  | 9d24d3d9-e42c-4267-816e-ad8414cd3c7f           |
| image                               | Centos7 (2b672c8f-75bf-4fe0-8468-37309563025a) |
| key_name                            | mykey                                          |
| name                                | centos7-init2                                  |
| progress                            | 0                                              |
| project_id                          | 205ce8addd9444c893bd62244bcdae78               |
| properties                          |                                                |
| security_groups                     | name='2035d43a-0e81-4257-bd23-13af431b9f91'    |
| status                              | BUILD                                          |
| updated                             | 2023-02-11T09:18:31Z                           |
| user_id                             | 74bc206609e04092b698698d944e922a               |
| volumes_attached                    |                                                |
+-------------------------------------+------------------------------------------------+

再次查看实例状态,可以看到没有错误了。dashboard里也看不到错误了:

[root@openstack1 ~]# openstack server list
+--------------------------------------+---------------+---------+--------------------------+---------+---------+
| ID                                   | Name          | Status  | Networks                 | Image   | Flavor  |
+--------------------------------------+---------------+---------+--------------------------+---------+---------+
| 9d24d3d9-e42c-4267-816e-ad8414cd3c7f | centos7-init2 | ACTIVE  | provider=192.168.123.160 | Centos7 | m1.tiny |

二,

前情回顾:

No valid host was found.

还是创建虚拟机失败

 错误代码仍然是500 

消息No valid host was found. 
编码500
详情Traceback (most recent call last): File "/usr/lib/python2.7/site-packages/nova/conductor/manager.py", line 1271, in schedule_and_build_instances instance_uuids, return_alternates=True) File "/usr/lib/python2.7/site-packages/nova/conductor/manager.py", line 784, in _schedule_instances return_alternates=return_alternates) File "/usr/lib/python2.7/site-packages/nova/scheduler/client/__init__.py", line 50, in select_destinations instance_uuids, return_objects, return_alternates) File "/usr/lib/python2.7/site-packages/nova/scheduler/client/__init__.py", line 35, in __run_method return getattr(self.instance, __name)(*args, **kwargs) File "/usr/lib/python2.7/site-packages/nova/scheduler/client/query.py", line 42, in select_destinations instance_uuids, return_objects, return_alternates) File "/usr/lib/python2.7/site-packages/nova/scheduler/rpcapi.py", line 160, in select_destinations return cctxt.call(ctxt, 'select_destinations', **msg_args) File "/usr/lib/python2.7/site-packages/oslo_messaging/rpc/client.py", line 179, in call retry=self.retry) File "/usr/lib/python2.7/site-packages/oslo_messaging/transport.py", line 133, in _send retry=retry) File "/usr/lib/python2.7/site-packages/oslo_messaging/_drivers/amqpdriver.py", line 645, in send call_monitor_timeout, retry=retry) File "/usr/lib/python2.7/site-packages/oslo_messaging/_drivers/amqpdriver.py", line 636, in _send raise result 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 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. 

错误分析:

这个错误比较常见的,也没什么必要查看日志,基本都是系统资源不足造成的

解决方案:

删除不使用的多余的实例,在重新创建即可,或者是实例类型用错了导致资源不够。

例如:

[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      |
+----+-----------+-------+------+-----------+-------+-----------+

整个系统才100G硬盘,16G内存,创建实例的时候指定m1.xlarge 这个实例规格必定是创建不了并报以上错误的。

相关文章:

云计算|OpenStack|错误记录和解决方案(不定时更新)

前言: openstack的部署和使用是难度比较大的,难免会出现各种各样的问题,因此,本文将把一些在部署和使用openstack社区版时出现的错误做一个记录,并就每一个错误分析和解决问题。(尽量记录比较经典的错误&a…...

项目实战-NewFixedThreadPool线程池

目录 什么是线程池 线程池的类型 1.CachedThreadPool 2.FixedThreadPool 3.ScheduledThreadPool 4.SingleThreadPool 5.newWorkStealingPool 线程池的好处 1、线程池的重用 2、控制线程池的并发数 3、线程池可以对线程进行管理 线程池的示例 1.Client启动类 2.具体…...

导数与微分总复习——“高等数学”

各位CSDN的uu们你们好呀,今天,小雅兰来复习一下之前学过的知识点,也就是导数与微分的总复习,依旧是高等数学的内容,主要是明天就要考高等数学了,哈哈哈,下面,让我们一起进入高等数学…...

Linux软件安装

1.Linux安装JDK 1.安装位置 /opt 2.安装包 jdk-8u171-linux-x64.rpm 3.安装步骤 1.将安装包上传到虚拟机中 [rootlocalhost opt]# ls jdk-8u171-linux-x64.rpm2.执行安装命令 [rootlocalhost opt]# rpm -ivh jdk-8u171-linux-x64.rpm 准备中... #####…...

【表面缺陷检测】基于YOLOX的PCB表面缺陷检测(全网最详细的YOLOX保姆级教程)

写在前面: 首先感谢兄弟们的订阅,让我有创作的动力,在创作过程我会尽最大能力,保证作品的质量,如果有问题,可以私信我,让我们携手共进,共创辉煌。 Hello,大家好,我是augustqi。 今天给大家分享一个表面缺陷检测项目:基于YOLOX的PCB表面缺陷检测(保姆级教程)。多的…...

【C#基础】C# 程序基础语法解析

序号系列文章0【C#基础】初识编程语言C#1【C#基础】C# 程序通用结构总结 文章目录前言基础语法1. using 关键字2. namespace 关键字3. class 关键字4. 成员字段5. 成员方法6. Main 方法7. new 关键字8. 标识符9. 关键字结语前言 😄 大家好,我是writer桑&…...

【webpack】webpack 中的插件安装与使用

一、webpack 插件的作用 通过安装和配置第三方的插件,可以拓展 webpack 的能力,从而让 webpack 用起来更方便。最常用的 的webpack 插件有如下两个: 1.webpack-dev-server(实时打包构建) 类似于 node.js 阶段用到的 no…...

生物素-磺基-活性酯,Sulfo-NHS Biotin科研用试剂简介;CAS:119616-38-5

生物素-磺基-活性酯,Sulfo-NHS Biotin 结构式: ​ 编辑 添加图片注释,不超过 140 字(可选) 英文名称:Sulfo-NHS-Biotin Sulfosuccinimidyl biotin 中文名称:磺酸基-Biotin-N-琥珀酰亚胺基酯 CAS&…...

Debain安装命令

目录 一、安装sudo命令 二、安装jdk8 三、更换软件源 四、Debian 安装 yum 五、安装zip、unzip、curl、lrzsz、NUMA 六、安装Maven 五、问题 一、安装sudo命令 1)执行sudo命令,提示 -bash: sudo: command not found的解决方法 apt-get install s…...

2023-02-10 - 6 聚合

当用户使用搜索引擎完成搜索后,在展示结果中需要进行进一步的筛选,而筛选的维度需要根据当前的搜索结果进行汇总,这就用到了聚合技术。聚合的需求在很多应用程序中都有所体现,例如在京东App中搜索“咸鸭蛋”,然后单击搜…...

Servlet实现表白墙

目录 一、表白墙简介 二、代码实现 1、约定前后端交互的接口 2、后端代码实现 3、前端代码实现 三、效果演示 一、表白墙简介 在表白墙页面中包含三个文本框,分别表示表白者,表白对象,表白内容,在文本框中输入内容之后&…...

[python入门㊸] - python测试函数

目录 ❤ 测试函数 ❤ 单元测试和测试用例 ❤ 可通过的测试 ❤ 不能通过的测试 ❤ 测试未通过时怎么办 ❤ 添加新测试 ❤ 测试函数 学习测试,得有测试的代码。下面是一个简单的函数: name_function.py def get_formatted_name(first, last):…...

通讯录文件操作化

宝子,你不点个赞吗?不评个论吗?不收个藏吗? 最后的最后,关注我,关注我,关注我,你会看到更多有趣的博客哦!!! 喵喵喵,你对我真的很重…...

为什么 Web3 社交将超越其 Web2 同行

我们最近听到了很多关于 web3 社交媒体平台的消息。但如果你没有跟上,你可能想知道为什么我们已经有了 Twitter、Facebook、Instagram 等,我们还需要 web3 社交。好吧,这一切都取决于谁拥有权力。 在 web2 中,权力掌握在寻求收入最…...

当资深程序员深夜去“打劫”会发生什么?——打家劫舍详解

文章目录一、前言二、概述三、打家劫舍第一晚四、打家劫舍第二晚五、打家劫舍第三晚......一、前言 大家好久不见,正如标题所示,今天我不打算聊一些枯燥的算法理论,我们来聊一聊程序员有多厉害! 注意!!&am…...

linux 线程

文章目录1、线程的概念1.1、进程 vs 线程1.2、线程的种类2、线程的控制2.1、线程的创建2.2、线程的退出2.3、线程的取消2.4、线程的等待2.5、线程的分离2.5、线程清理函数线程清理函数响应的时机线程清理函数不响应的时机3、线程的同步和互斥3.1、锁机制3.1.1、锁的类型3.1.2、…...

Windows 安装appium环境

1 windows Appium环境 1.1 安装Node.js Node.js的安装相对简单,下载安装包安装(安装包node-v19.6.0-x64.msi), nodejs 安装 然后一路狂点下一步就可以了 安装完成后,在终端中输入node -v,显示版本号则表示安装成功 node-v16.13.1 1.2 JDK安装及环境变…...

为什么要在电子产品中使用光耦合器?

介绍 光耦合器不仅可以保护敏感电路,还可以使工程师设计各种硬件应用。光耦合器通过保护元件,可以避免更换元件的大量成本。然而,光耦合器比保险丝更复杂。光耦合器还可以通过光耦合器连接和断开两个电路,从而方便地控制两个电路…...

Vue3 如何实现一个函数式右键菜单(ContextMenus)

前言: 最近在公司 PC 端的项目中使用到了右键出现菜单选项这样的一个工作需求,并且自己现在也在实现一个偶然迸发的 idea( 想用前端实现一个 windows 系统从开机到桌面的 UI),其中也要用到右键弹出菜单这样的一个功能,…...

ffmpeg转码转封装小工具开发

如下图所示,是本人开发的一个转码转封装小工具 其中目标文件视频编码格式支持:H264,H265,VP8,VP9。 目标文件封装格式支持:mp4,mkv,avi,mov,flv。 目标文件音频编码格式支持两个,COPY和AAC&am…...

Docker 离线安装指南

参考文章 1、确认操作系统类型及内核版本 Docker依赖于Linux内核的一些特性,不同版本的Docker对内核版本有不同要求。例如,Docker 17.06及之后的版本通常需要Linux内核3.10及以上版本,Docker17.09及更高版本对应Linux内核4.9.x及更高版本。…...

label-studio的使用教程(导入本地路径)

文章目录 1. 准备环境2. 脚本启动2.1 Windows2.2 Linux 3. 安装label-studio机器学习后端3.1 pip安装(推荐)3.2 GitHub仓库安装 4. 后端配置4.1 yolo环境4.2 引入后端模型4.3 修改脚本4.4 启动后端 5. 标注工程5.1 创建工程5.2 配置图片路径5.3 配置工程类型标签5.4 配置模型5.…...

Java 8 Stream API 入门到实践详解

一、告别 for 循环&#xff01; 传统痛点&#xff1a; Java 8 之前&#xff0c;集合操作离不开冗长的 for 循环和匿名类。例如&#xff0c;过滤列表中的偶数&#xff1a; List<Integer> list Arrays.asList(1, 2, 3, 4, 5); List<Integer> evens new ArrayList…...

c#开发AI模型对话

AI模型 前面已经介绍了一般AI模型本地部署&#xff0c;直接调用现成的模型数据。这里主要讲述讲接口集成到我们自己的程序中使用方式。 微软提供了ML.NET来开发和使用AI模型&#xff0c;但是目前国内可能使用不多&#xff0c;至少实践例子很少看见。开发训练模型就不介绍了&am…...

Linux 内存管理实战精讲:核心原理与面试常考点全解析

Linux 内存管理实战精讲&#xff1a;核心原理与面试常考点全解析 Linux 内核内存管理是系统设计中最复杂但也最核心的模块之一。它不仅支撑着虚拟内存机制、物理内存分配、进程隔离与资源复用&#xff0c;还直接决定系统运行的性能与稳定性。无论你是嵌入式开发者、内核调试工…...

Mysql8 忘记密码重置,以及问题解决

1.使用免密登录 找到配置MySQL文件&#xff0c;我的文件路径是/etc/mysql/my.cnf&#xff0c;有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...

虚拟电厂发展三大趋势:市场化、技术主导、车网互联

市场化&#xff1a;从政策驱动到多元盈利 政策全面赋能 2025年4月&#xff0c;国家发改委、能源局发布《关于加快推进虚拟电厂发展的指导意见》&#xff0c;首次明确虚拟电厂为“独立市场主体”&#xff0c;提出硬性目标&#xff1a;2027年全国调节能力≥2000万千瓦&#xff0…...

代码规范和架构【立芯理论一】(2025.06.08)

1、代码规范的目标 代码简洁精炼、美观&#xff0c;可持续性好高效率高复用&#xff0c;可移植性好高内聚&#xff0c;低耦合没有冗余规范性&#xff0c;代码有规可循&#xff0c;可以看出自己当时的思考过程特殊排版&#xff0c;特殊语法&#xff0c;特殊指令&#xff0c;必须…...

【深度学习新浪潮】什么是credit assignment problem?

Credit Assignment Problem(信用分配问题) 是机器学习,尤其是强化学习(RL)中的核心挑战之一,指的是如何将最终的奖励或惩罚准确地分配给导致该结果的各个中间动作或决策。在序列决策任务中,智能体执行一系列动作后获得一个最终奖励,但每个动作对最终结果的贡献程度往往…...

虚幻基础:角色旋转

能帮到你的话&#xff0c;就给个赞吧 &#x1f618; 文章目录 移动组件使用控制器所需旋转&#xff1a;组件 使用 控制器旋转将旋转朝向运动&#xff1a;组件 使用 移动方向旋转 控制器旋转和移动旋转 缺点移动旋转&#xff1a;必须移动才能旋转&#xff0c;不移动不旋转控制器…...