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

瑞星  论坛元老 | 2024-10-8 15:16:28 | 来自手机 | 显示全部楼层 | 阅读模式
打印 上一主题 下一主题

主题 1695|帖子 1695|积分 5085

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。

您需要 登录 才可以下载或查看,没有账号?立即注册

x
媒介:

openstack的部署和使用是难度比较大的,难免会出现各种各样的问题,因此,本文将把一些在部署和使用openstack社区版时出现的错误做一个记载,并就每一个错误分析和解决问题。(只管记载比较经典的错误,太弱智的那些就不记载了)
一,
错误前情回首:
创建虚拟机实例失败
创建实例的命令是:
  1. 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
复制代码
  1. 错误: 实例 "centos7-init2" 执行所请求操作失败,实例处于错误状态。: 请稍后再试 [错误: Exceeded maximum number of retries. Exhausted all hosts available for retrying build failures for instance 1bd5d1af-17b1-4524-9f9c-6be299d68293.].
复制代码
 

在dashboard内,查看实例详情,可以看到错误日志:
  1. 消息
  2.     Exceeded maximum number of retries. Exhausted all hosts available for retrying build failures for instance 17fe6f00-4560-476a-a79b-e6f62d866155.
  3. 编码
  4.     500
  5. 详情
  6.     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.
  7. 已创建
  8.     Feb. 11, 2023, 5:23 p.m.
复制代码
虚拟机实例状态是:
 
 
解析:
错误代码是500,并且虚拟机没有获取到fix ip地址,上面末了一图IP地址那是空缺的
以上表明错误发生在网络层面,错误提示是在尝试N次后,虚拟机实例仍无法调度,因此,错误日志必定在nova这个服务内有所体现
因此,在所有包含nova的节点实行以下命令,快速查找错误:
  1. grep "ERROR" /var/log/nova/*
复制代码
在其中一个计算节点,发现如下日志:
倒数第二行提示security group没有被发现
  1. /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
  2. /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)
  3. /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
  4. /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)
  5. /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.
  6. /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没有找到的原因
查看安全组:
  1. [root@openstack1 ~]# openstack security group list
  2. +--------------------------------------+---------+------------------------+----------------------------------+------+
  3. | ID                                   | Name    | Description            | Project                          | Tags |
  4. +--------------------------------------+---------+------------------------+----------------------------------+------+
  5. | 2035d43a-0e81-4257-bd23-13af431b9f91 | default | Default security group | 205ce8addd9444c893bd62244bcdae78 | []   |
  6. | 5b1b71d7-5e24-4011-82ca-0ddabfd32e8a | default | Default security group |                                  | []   |
  7. | e5f115d2-3c65-4bc5-89db-b9f725ee81db | default | Default security group | ae2263d201c0437788c85f1178b91dbe | []   |
  8. +--------------------------------------+---------+------------------------+----------------------------------+------+
  9. [root@openstack1 ~]# openstack project list
  10. +----------------------------------+---------+
  11. | ID                               | Name    |
  12. +----------------------------------+---------+
  13. | 205ce8addd9444c893bd62244bcdae78 | admin   |
  14. | ae2263d201c0437788c85f1178b91dbe | service |
  15. +----------------------------------+---------+
复制代码
这里就很奇怪了,安全组可以看到,但openstack创建实例的时候又找不到了,大概和前面调整了网络有关系,
解决方案:
要么重建安全组,要么使用第一个 也就是admin项目的安全组,因为是用的admin登岸的openstack
删除实例,重新创建,创建的时候使用2035d43a-0e81-4257-bd23-13af431b9f91 这个安全组:
  1. [root@openstack1 ~]# openstack server delete centos7-init2
  2. [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
  3. +-------------------------------------+------------------------------------------------+
  4. | Field                               | Value                                          |
  5. +-------------------------------------+------------------------------------------------+
  6. | OS-DCF:diskConfig                   | MANUAL                                         |
  7. | OS-EXT-AZ:availability_zone         |                                                |
  8. | OS-EXT-SRV-ATTR:host                | None                                           |
  9. | OS-EXT-SRV-ATTR:hypervisor_hostname | None                                           |
  10. | OS-EXT-SRV-ATTR:instance_name       |                                                |
  11. | OS-EXT-STS:power_state              | NOSTATE                                        |
  12. | OS-EXT-STS:task_state               | scheduling                                     |
  13. | OS-EXT-STS:vm_state                 | building                                       |
  14. | OS-SRV-USG:launched_at              | None                                           |
  15. | OS-SRV-USG:terminated_at            | None                                           |
  16. | accessIPv4                          |                                                |
  17. | accessIPv6                          |                                                |
  18. | addresses                           |                                                |
  19. | adminPass                           | YpnXPX8xmK7T                                   |
  20. | config_drive                        | True                                           |
  21. | created                             | 2023-02-11T09:18:31Z                           |
  22. | flavor                              | m1.tiny (1)                                    |
  23. | hostId                              |                                                |
  24. | id                                  | 9d24d3d9-e42c-4267-816e-ad8414cd3c7f           |
  25. | image                               | Centos7 (2b672c8f-75bf-4fe0-8468-37309563025a) |
  26. | key_name                            | mykey                                          |
  27. | name                                | centos7-init2                                  |
  28. | progress                            | 0                                              |
  29. | project_id                          | 205ce8addd9444c893bd62244bcdae78               |
  30. | properties                          |                                                |
  31. | security_groups                     | name='2035d43a-0e81-4257-bd23-13af431b9f91'    |
  32. | status                              | BUILD                                          |
  33. | updated                             | 2023-02-11T09:18:31Z                           |
  34. | user_id                             | 74bc206609e04092b698698d944e922a               |
  35. | volumes_attached                    |                                                |
  36. +-------------------------------------+------------------------------------------------+
复制代码
再次查看实例状态,可以看到没有错误了。dashboard里也看不到错误了:
  1. [root@openstack1 ~]# openstack server list
  2. +--------------------------------------+---------------+---------+--------------------------+---------+---------+
  3. | ID                                   | Name          | Status  | Networks                 | Image   | Flavor  |
  4. +--------------------------------------+---------------+---------+--------------------------+---------+---------+
  5. | 9d24d3d9-e42c-4267-816e-ad8414cd3c7f | centos7-init2 | ACTIVE  | provider=192.168.123.160 | Centos7 | m1.tiny |
复制代码
二,
前情回首:
No valid host was found.
还是创建虚拟机失败

 错误代码仍旧是500 
  1. 消息
  2.     No valid host was found.
  3. 编码
  4.     500
  5. 详情
  6.     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.
复制代码
错误分析:
这个错误比较常见的,也没什么必要查看日志,基本都是系统资源不足造成的
解决方案:
删除不使用的多余的实例,在重新创建即可,或者是实例类型用错了导致资源不够。
例如:
  1. [root@openstack1 ~]# openstack flavor list
  2. +----+-----------+-------+------+-----------+-------+-----------+
  3. | ID | Name      |   RAM | Disk | Ephemeral | VCPUs | Is Public |
  4. +----+-----------+-------+------+-----------+-------+-----------+
  5. | 0  | m1.nano   |    64 |    1 |         0 |     1 | True      |
  6. | 1  | m1.tiny   |  1024 |   50 |         0 |     1 | True      |
  7. | 2  | m1.small  |  2048 |  500 |         0 |     1 | True      |
  8. | 3  | m1.medium |  4096 |  500 |         0 |     2 | True      |
  9. | 4  | m1.large  |  8192 |  500 |         0 |     4 | True      |
  10. | 5  | m1.xlarge | 16384 |  500 |         0 |     8 | True      |
  11. +----+-----------+-------+------+-----------+-------+-----------+
复制代码
整个系统才100G硬盘,16G内存,创建实例的时候指定m1.xlarge 这个实例规格必定是创建不了并报以上错误的。

免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

瑞星

论坛元老
这个人很懒什么都没写!
快速回复 返回顶部 返回列表