前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Openstack Stein 部署遇到的问题

Openstack Stein 部署遇到的问题

作者头像
后端云
发布2019-09-25 15:11:54
2.8K0
发布2019-09-25 15:11:54
举报
文章被收录于专栏:后端云

OpenStack 的第 19 个版本 Stein,支持 5G 和边缘计算。 OpenStack Stein 强化裸机和网络管理性能,同时更快速的启动 Kubernetes 集群,还为边缘计算和 NFV 用例提供网络升级功能,增强了资源管理和跟踪性能。

OS版本:CentOS 7.7 ( CentOS Linux release 7.7.1908 ) Openstack版本:Stein

compute节点部署完nova-compute,启动时卡住

查看nova-compute.log日志,报消息队列错误

代码语言:javascript
复制
2019-09-20 13:38:32.411 68483 INFO os_vif [-] Loaded VIF plugins: ovs, linux_bridge, noop
2019-09-20 13:38:32.878 68483 ERROR oslo.messaging._drivers.impl_rabbit [req-b955a570-83bc-4a14-966f-2eefe5a82579 - - - - -] Connection failed: [Errno 113] EHOSTUNREACH (retrying in 2.0 seconds): error: [Errno 113] EHOSTUNREACH
2019-09-20 13:38:34.888 68483 ERROR oslo.messaging._drivers.impl_rabbit [req-b955a570-83bc-4a14-966f-2eefe5a82579 - - - - -] Connection failed: [Errno 113] EHOSTUNREACH (retrying in 4.0 seconds): error: [Errno 113] EHOSTUNREACH
2019-09-20 13:38:38.899 68483 ERROR oslo.messaging._drivers.impl_rabbit [req-b955a570-83bc-4a14-966f-2eefe5a82579 - - - - -] Connection failed: [Errno 113] EHOSTUNREACH (retrying in 6.0 seconds): error: [Errno 113] EHOSTUNREACH
2019-09-20 13:38:44.912 68483 ERROR oslo.messaging._drivers.impl_rabbit [req-b955a570-83bc-4a14-966f-2eefe5a82579 - - - - -] Connection failed: [Errno 113] EHOSTUNREACH (retrying in 8.0 seconds): error: [Errno 113] EHOSTUNREACH
2019-09-20 13:38:52.931 68483 ERROR oslo.messaging._drivers.impl_rabbit [req-b955a570-83bc-4a14-966f-2eefe5a82579 - - - - -] Connection failed: [Errno 113] EHOSTUNREACH (retrying in 10.0 seconds): error: [Errno 113] EHOSTUNREACH

查看nova配置文件,rabbitmq配置正确的,登陆controller节点,查看nova服务的日志,并没有报消息队列的错误 对比controller节点和compute节点rabbitmq的配置,一样的,controller节点不报错,compute节点报错。而controller节点上部署了消息队列服务,想到可能是防火墙导致compute节点的nova服务不能访问controller节点的mq服务 查看,果然没有将防火墙关闭,关闭后问题解决。

compute节点部署完nova-compute,执行nova service-list,计算节点服务正常,但是计算节点的nova日志报错,和资源有关,感觉是和placement服务有关

代码语言:javascript
复制
2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager [req-128f79a5-8b18-471b-9967-aae3cfde3043 - - - - -] Error updating resources for node compute.: ResourceProviderRetrievalFailed: Failed to get resource provider with UUID 092506db-b8fe-49d3-a962-9182e0025dea
2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager Traceback (most recent call last):2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager   File "/usr/lib/python2.7/site-packages/nova/compute/manager.py", line 8148, in _update_available_resource_for_node2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager     startup=startup)2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager   File "/usr/lib/python2.7/site-packages/nova/compute/resource_tracker.py", line 744, in update_available_resource2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager     self._update_available_resource(context, resources, startup=startup)2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager   File "/usr/lib/python2.7/site-packages/oslo_concurrency/lockutils.py", line 328, in inner2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager     return f(*args, **kwargs)2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager   File "/usr/lib/python2.7/site-packages/nova/compute/resource_tracker.py", line 825, in _update_available_resource2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager     self._update(context, cn, startup=startup)2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager   File "/usr/lib/python2.7/site-packages/nova/compute/resource_tracker.py", line 1032, in _update2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager     self._update_to_placement(context, compute_node, startup)2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager   File "/usr/lib/python2.7/site-packages/retrying.py", line 68, in wrapped_f2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager     return Retrying(*dargs, **dkw).call(f, *args, **kw)2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager   File "/usr/lib/python2.7/site-packages/retrying.py", line 223, in call2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager     return attempt.get(self._wrap_exception)2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager   File "/usr/lib/python2.7/site-packages/retrying.py", line 261, in get2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager     six.reraise(self.value[0], self.value[1], self.value[2])2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager   File "/usr/lib/python2.7/site-packages/retrying.py", line 217, in call2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager     attempt = Attempt(fn(*args, **kwargs), attempt_number, False)2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager   File "/usr/lib/python2.7/site-packages/nova/compute/resource_tracker.py", line 958, in _update_to_placement2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager     context, compute_node.uuid, name=compute_node.hypervisor_hostname)2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager   File "/usr/lib/python2.7/site-packages/nova/scheduler/client/report.py", line 873, in get_provider_tree_and_ensure_root2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager     parent_provider_uuid=parent_provider_uuid)2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager   File "/usr/lib/python2.7/site-packages/nova/scheduler/client/report.py", line 655, in _ensure_resource_provider2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager     rps_to_refresh = self._get_providers_in_tree(context, uuid)2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager   File "/usr/lib/python2.7/site-packages/nova/scheduler/client/report.py", line 71, in wrapper2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager     return f(self, *a, **k)2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager   File "/usr/lib/python2.7/site-packages/nova/scheduler/client/report.py", line 522, in _get_providers_in_tree2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager     raise exception.ResourceProviderRetrievalFailed(uuid=uuid)2019-09-20 14:20:24.477 69378 ERROR nova.compute.manager ResourceProviderRetrievalFailed: Failed to get resource provider with UUID 092506db-b8fe-49d3-a962-9182e0025dea

网上搜下该问题,和权限有关

代码语言:javascript
复制
# vim /etc/httpd/conf.d/00-placement-api.conf
# add
<Directory /usr/bin>
    <IfVersion >= 2.4>
        Require all granted
    </IfVersion>
    <IfVersion < 2.4>
        Order allow,deny
        Allow from all
    </IfVersion>
</Directory>
# su -s /bin/sh -c "placement-manage db sync" placement
# systemctl restart httpd

修改后,问题解决

sysctl: cannot stat /proc/sys/net/bridge/bridge-nf-call-iptables: No such file or directory

在/etc/sysctl.conf中添加:

net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1 执行sysctl -p 时出现: [root@localhost ~]# sysctl -p sysctl: cannot stat /proc/sys/net/bridge/bridge-nf-call-ip6tables: No such file or directory sysctl: cannot stat /proc/sys/net/bridge/bridge-nf-call-iptables: No such file or directory 解决方法:

[root@localhost ~]# modprobe br_netfilter [root@localhost ~]# sysctl -p net.bridge.bridge-nf-call-ip6tables = 1 net.bridge.bridge-nf-call-iptables = 1

重启后模块失效,下面是开机自动加载模块的脚本

在/etc/新建rc.sysinit 文件

cat /etc/rc.sysinit

#!/bin/bash for file in /etc/sysconfig/modules/*.modules ; do [ -x $file ] && $file done 在/etc/sysconfig/modules/目录下新建文件如下

cat /etc/sysconfig/modules/br_netfilter.modules modprobe br_netfilter 增加权限

chmod 755 br_netfilter.modules 重启后 模块自动加载

[root@localhost ~]# lsmod |grep br_netfilter br_netfilter 22209 0 bridge 136173 1 br_netfilter

openstack虚拟机实例卡在系统引导,不能启动操作系统

显示 booting from hard disk… GRUB

无论是网上下载的cirros镜像,还是自己安装再上载创建的linux,windows镜像,都不能启动,卡了一段时间,转战实体机,直接在裸机上安装linux,再安装openstack,一切正常,虚拟机实例都正常启动,(windows 都需安装virtio驱动)。

回过头来解决这个vmware上的虚拟机上安装的openstack不能启动实例操作系统的问题,确认了解决方向,就是虚拟磁盘格式和驱动程序的问题,通过 virsh edit XXXX 的方法,可见不能启动的虚拟机是采用virtio驱动程序

把它改为 再 virsh start XXX 启动虚拟机,可以正常启动,但很快,不到1分钟内实例被自动关闭,如且无论virsh edit XXX修改,还是修改 /etc/libvirt/qemu/instan-00000002.xml 这个虚拟机定义文件,在openstack界面启动实例后都自动恢复为原来的配置文件。

最后找到一个办法,直接修改镜像文件的参数属性,指定硬盘和网卡的属性:

代码语言:javascript
复制
# openstack image set  --property hw_disk_bus=ide  --property hw_vif_model=e1000 <image-id>

这个命令修改硬盘属性为ide,网卡属性为e1000

再用这个修改属性后的镜像生成虚拟机实例,ok,能正常引导系统,能识别虚拟硬盘了。

本文参与 腾讯云自媒体同步曝光计划,分享自微信公众号。
原始发表:2019-09-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 后端云 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • compute节点部署完nova-compute,启动时卡住
  • compute节点部署完nova-compute,执行nova service-list,计算节点服务正常,但是计算节点的nova日志报错,和资源有关,感觉是和placement服务有关
  • sysctl: cannot stat /proc/sys/net/bridge/bridge-nf-call-iptables: No such file or directory
  • openstack虚拟机实例卡在系统引导,不能启动操作系统
相关产品与服务
消息队列 CMQ 版
消息队列 CMQ 版(TDMQ for CMQ,简称 TDMQ CMQ 版)是一款分布式高可用的消息队列服务,它能够提供可靠的,基于消息的异步通信机制,能够将分布式部署的不同应用(或同一应用的不同组件)中的信息传递,存储在可靠有效的 CMQ 队列中,防止消息丢失。TDMQ CMQ 版支持多进程同时读写,收发互不干扰,无需各应用或组件始终处于运行状态。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档