首页 > 代码库 > OpensStack instance debug

OpensStack instance debug

错误: 创建实例 "RuiyTest23" 失败: 请稍后再试 [错误: Virtual Interface creation failed].

最近在centos6.4上通过devstack搭建OpenStack Icehouse,但是在创建instance时候报错:Virtual Interface creation failed,详细的错误可以从compute节点的log中获得(经过裁剪过的log):

  1. TRACE nova.compute.manager: Traceback (most recent call last):
  2. TRACE nova.compute.manager: File "/home/stack/nova/nova/compute/manager.py", line 1754in _spawn
  3. TRACE nova.compute.manager: block_device_info)
  4. TRACE nova.compute.manager: File "/home/stack/nova/nova/virt/libvirt/driver.py", line 2265in spawn
  5. TRACE nova.compute.manager: block_device_info)
  6. TRACE nova.compute.manager: File "/home/stack/nova/nova/virt/libvirt/driver.py", line 3680in _create_domain_and_network
  7.   raise exception.VirtualInterfaceCreateException()
  8. VirtualInterfaceCreateException: Virtual Interface creation failed

    主要问题就是在创建instance的virtual interface的时候产生了exception导致create instance的流程失败。
    网上可以搜到一些解决方法,比如修改neutron.conf配置文件,将nova_url = http://127.0.0.1:8774改为nova_url = http://127.0.0.1:8774/v2,其实这些bug在master分支中已经被fixed掉了。
    
    解决方法: 修改nova.conf配置文件,将如下两个配置项改为

  1. vif_plugging_timeout = 10
  2. vif_plugging_is_fatal = False

    简单分析了下源码,导致此问题的原因应该是近期这次commit: Change I41771244: Notify nova when ports are ready,即增加了neutron会在port ready之后向nova发送一个event,通知nova请求的port已经创建好。此feature的具体内容参见:https://review.openstack.org/#/c/75253/
   但是具体的原因还没有分析清楚,在这里也恳请网络大牛不吝赐教。

   另外,ubuntu 14.04的官方源中已经默认支持了openstack icehouse,不需添加额外的源,而且ovs也采用了2.0的版本,部署过程很顺利,还是不错的。

OpensStack instance debug