部署OpenStack问题汇总(四)--openstack中nova-compute状态status显示为'XXX'的问题
本博客已经添加"打赏"功能,"打赏"位置位于右边栏红色框中,感谢您赞助的咖啡.
第一次部署openstack的时候就遇见了这个问题,当时的版本是havana,
现在部署essex的时候又遇到了这个问题,经过一番折腾,解决了这个问题,记录下来,以免以后忘记。
===========================================================
1.查看/var/log/nova/nova-compute.log文件其中出现了这样的情况:
Domain not found: no domain with matching name 'instance-00000008'
2.备份文档/usr/lib/python2.7/dist-packages/nova/virt/libvirt/connection.py为commection.py.bak
3.编辑/usr/lib/python2.7/dist-packages/nova/virt/libvirt/connection.py
找到这么一行:virt_dom = self._conn.lookupByName(instance['name'])
然后删除这一行
在在删除的位置添加:
# NOTE: In case of no domain up try: virt_dom = self._conn.lookupByName(instance['name']) except Exception, e: virt_dom = None
再找到这一行 xml = virt_dom.XMLDesc(0)进行删除 这一行的上一句:if not xml:
再在删除的地方添加:
if virt_dom: xml = virt_dom.XMLDesc(0) else: xml = self.to_xml(instance, network_info)
最后找到这么一行:
self.destroy(instance, network_info, cleanup=False) 这一行的下一行为( self.plug_vifs(instance, network_info)) 并在其前一行添加
if virt_dom:
进入目录cd /var/lib/nova/instances/instance-00000008
在这个目录下执行命令
virsh define libvirt.xml
然后重启实例。接着重启了nova-compute服务,查看nova-manage service list 发现依然是XXX,并在log中看到这样的情况:
CRITICAL nova [-] invalid syntax (connection.py, line 397) #说明在397行的语法有问题。
然后将
/usr/lib/python2.7/dist-packages/nova/virt/libvirt/connection.py 改名字为connection.py.bak2 (之所以为编号2,因为之前已经创建过connection.py.bak)
这个时候将
/usr/lib/python2.7/dist-packages/nova/virt/libvirt/connection.py.bak改为connection.py
并赋予权限:chmod 777 connection.py
重启nova-compute服务,service nova-compute restart 再查看nova-manage service list 服务都变成了笑脸;
Binary Host Zone Status State Updated_At
nova-consoleauth server1 nova enabled :-)2014-01-08 02:45:57
nova-cert server1 nova enabled :-) 2014-01-08 02:46:02
nova-scheduler server1 nova enabled :-) 2014-01-08 02:46:02
nova-compute server1 nova enabled :-) 2014-01-08 02:46:05
nova-network server1 nova enabled :-) 2014-01-08 02:46:03
nova-volume server1 nova enabled :-) 2014-01-08 02:46:03
部署OpenStack问题汇总(四)--openstack中nova-compute状态status显示为'XXX'的问题的更多相关文章
- myeclipse中svn图标状态不显示问题的解决办法
myeclipse中svn图标状态不显示问题的解决办法 博客分类: svn SVNMyeclipse工作WindowsC myeclipse中使用 svn 插件,原本正常,未作任何更改,突然有一天, ...
- #openstack故障处理汇总
##openstack故障处理汇总 排错 openstack pike 部署 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html ############# ...
- 部署OpenStack问题汇总(六)-- OpenStack入门需要知道的概念
本博客已经添加"打赏"功能,"打赏"位置位于右边栏红色框中,感谢您赞助的咖啡. 一.网络问题-network 更多网络原理机制可以参考<OpenStack ...
- 零基础学习openstack【完整中级篇】及openstack资源汇总
1.你是如何学习openstack的?2.你对openstack的组件了解多少?3.你认为openstack该如何学习? 一直想写关于openstack的方面的内容,今天终于整理完成.算是完成一桩心事 ...
- 【openstack N版】——计算服务nova
一.openstack计算服务nova 1.1nova介绍 Nova是openstack最早的两块模块之一,另一个是对象存储swift.在openstack体系中一个叫做计算节点,一个叫做控制节点.这 ...
- openstack 问题一览(持续总结中)
★名词 Qemu:它也是一种虚拟化技术,主要提供对IO,网络等外设的虚拟化管理.结合KVM(对CPU和内存管理),提供较为完整的虚拟化管理功能. Libvirt:提供了针对各种虚拟机技术的接口,来管理 ...
- CentOS7安装OpenStack(Rocky版)-05.安装一个nova计算节点实例
上一篇文章分享了控制节点的nova计算服务的安装方法,在实际生产环境中,计算节点通常会安装一些单独的节点提供服务,本文分享单独的nova计算节点的安装方法 ---------------- 完美的分 ...
- Openstack Keystone 认证服务(四)
Openstack Keystone 认证服务(四) keystone 的安装完全依赖ocata的源, 如果没有建议自己搭建. 否则用的源不对会产生各种奇葩问题. 创建keystone库和用户: ## ...
- OpenStack是什么,OpenStack详解
1. OpenStack是什么 OpenStack官方的解释很官方,而且从不同角度,也有不同的理解,OpenStack可以理解为一个云操作系统 OpenStack旗下包含了一组由社区维护的开源项目,他 ...
随机推荐
- python2除法保留小数部分
转载:http://www.cnblogs.com/yhleng/p/9223944.html 1.python2和python3除法的最大区别: python2: print 500/1000 py ...
- shell脚本重启tomcat
1. 新建shell空脚本文件,如 /home/tr.sh,并设置权限 # chmod 750 /home/tr.sh 2. 设置文件形式: # sed -e 's/\^M//g' /home/tr. ...
- iptables规则备份和恢复 firewalld的9个zone firewalld关于zone的操作 firewalld关于service的操作
iptables规则备份和恢复 保存和备份iptables规则Service iptables save //会把规则保存到/etc/sysconfig/iptables把iptables规则备份到m ...
- Windows 7运行命令大全
Windows 7运行命令大全,小编整理了常用的45个Win7运行命令分享给大家:1.cleanmgr:打开磁盘清理工具 2.compmgmt.msc:计算机管理 3.conf:启动系统配置实用程序 ...
- Node.js之操作Mongodb
// mongoose 链接 var mongoose = require('mongoose'); var db = mongoose.createConnection('mongodb://127 ...
- Java实习生面试题整理
一.数据类型 包装类型 八个基本类型: boolean/1 byte/8 char/16 short/16 int/32 float/32 long/64 double/64 基本类型都有对应的包装类 ...
- Array常用函数收藏
1.isArray 语法:Array.isArray(obj) 说明:判断一个对象是否是数组. 例如: Array.isArray([]); Array.isArray([1]); Array.isA ...
- java程序员如何编写更好的单元测试的7个技巧
详解 cppunit进行单元测试 单元测试(模块测试)是开发者编写的一小段代码,用于检验被测代码的一个很小的.很明确的功能是否正确.通常而言,一个单元测试是用于判断某个特定条件(或者场景)下某个特定函 ...
- php单元测试断言方法
1.assertArrayHasKey() 用法:$this->assertArrayHasKey('foo', ['bar' => 'baz']); 等同于array_key_exist ...
- ios7注意事项随笔
1,修改状态栏的样式和隐藏. 首先,需要在Info.plist配置文件中,增加键:UIViewControllerBasedStatusBarAppearance,并设置为YES: 然后,在UIVie ...