本博客已经添加"打赏"功能,"打赏"位置位于右边栏红色框中,感谢您赞助的咖啡.

第一次部署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'的问题的更多相关文章

  1. myeclipse中svn图标状态不显示问题的解决办法

    myeclipse中svn图标状态不显示问题的解决办法 博客分类: svn SVNMyeclipse工作WindowsC  myeclipse中使用 svn 插件,原本正常,未作任何更改,突然有一天, ...

  2. #openstack故障处理汇总

    ##openstack故障处理汇总 排错 openstack pike 部署 目录汇总 http://www.cnblogs.com/elvi/p/7613861.html ############# ...

  3. 部署OpenStack问题汇总(六)-- OpenStack入门需要知道的概念

    本博客已经添加"打赏"功能,"打赏"位置位于右边栏红色框中,感谢您赞助的咖啡. 一.网络问题-network 更多网络原理机制可以参考<OpenStack ...

  4. 零基础学习openstack【完整中级篇】及openstack资源汇总

    1.你是如何学习openstack的?2.你对openstack的组件了解多少?3.你认为openstack该如何学习? 一直想写关于openstack的方面的内容,今天终于整理完成.算是完成一桩心事 ...

  5. 【openstack N版】——计算服务nova

    一.openstack计算服务nova 1.1nova介绍 Nova是openstack最早的两块模块之一,另一个是对象存储swift.在openstack体系中一个叫做计算节点,一个叫做控制节点.这 ...

  6. openstack 问题一览(持续总结中)

    ★名词 Qemu:它也是一种虚拟化技术,主要提供对IO,网络等外设的虚拟化管理.结合KVM(对CPU和内存管理),提供较为完整的虚拟化管理功能. Libvirt:提供了针对各种虚拟机技术的接口,来管理 ...

  7. CentOS7安装OpenStack(Rocky版)-05.安装一个nova计算节点实例

    上一篇文章分享了控制节点的nova计算服务的安装方法,在实际生产环境中,计算节点通常会安装一些单独的节点提供服务,本文分享单独的nova计算节点的安装方法 ----------------  完美的分 ...

  8. Openstack Keystone 认证服务(四)

    Openstack Keystone 认证服务(四) keystone 的安装完全依赖ocata的源, 如果没有建议自己搭建. 否则用的源不对会产生各种奇葩问题. 创建keystone库和用户: ## ...

  9. OpenStack是什么,OpenStack详解

    1. OpenStack是什么 OpenStack官方的解释很官方,而且从不同角度,也有不同的理解,OpenStack可以理解为一个云操作系统 OpenStack旗下包含了一组由社区维护的开源项目,他 ...

随机推荐

  1. 搭建交叉调试环境 arm-linux-gdb配合gdbserver

        在嵌入式开发中,有时候需要进行源码级别的调试,可以设置断点,单步执行,相比于每步打印printf或者printk来说,更加友好.下面就来介绍这种调试方法.     gdb交叉调试类似于网络浏览 ...

  2. JSON.stringify报cyclic object value错误

    这是一个典型的循环引用的错误,一个对象里引用自己就会立刻得到这个错误: obj = { x:555, y: "hi" }; obj.myself = obj; try{ json ...

  3. mysql数据库2

    命令行客户端软件MySQL Command Line Client, 打开该程序,输入数据库密码,登陆到MySQL软件, 如果想通过该命令行工具来操作MySQL软件,只需要在"mysql&g ...

  4. matplotlib使用GridSpec调整子图位置大小 (非对称的子图)

    用matplotlib.pyplot的subplots命令可以很方便的画对称的子图,但是如果要画非对称的子图(如下)就需要用GridSpec命令来控制子图的位置和大小: 而上图的结构可以用一下两种方式 ...

  5. 使用pycharm,追求最优的代码。

    1.最近追求的是代码0警告,没有任何提示. 怎么追求这样的目标,不需要再去单独使用pylint和flake8这些玩意,只需要看pycharm右边编辑区的竖向滚动条的黄色就可以了. 2. 比较糟糕的就是 ...

  6. Laravel5.1 填充数据库

    当我们创建好表结构后 通常都要生成一些测试用的数据来测试,应对这个场景呢 Laravel提供了相当好的服务 --seed Laravel的seeder都会放在:/database/seeders 目录 ...

  7. ios开发之-- 延迟执行方法

    延迟执行的几种方法,分享一下. 1.performSelector(NSObject)方法  2.NSTimer方法  3.GCD方法  4.sleep(NSThread)方法 1.performSe ...

  8. MySQL开发面试题

    ……继上一篇MySQL的开发总结之后,适当的练习还是很有必要的…… SQL语法多变,不敢保证唯一,也不敢保证全对,如果错误欢迎指出,即刻修改. 一.现有表结构如下图 TABLENAME:afinfo ...

  9. Python学习笔记(15)- os\os.path 操作文件

    程序1 编写一个程序,统计当前目录下每个文件类型的文件数,程序实现如图: import os def countfile(path): dict1 = {} # 定义一个字典 all_files = ...

  10. Flash XSS 漏洞实例

    www.bsdxm.com/zeroclipboard/ZeroClipboard.swf?id=\"))}catch(e){alert(/xss/);}//&width=500&a ...