VMwareVCDriver NotImplementedError

Bug #1355885 reported by Tesshu Flower
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
OpenStack Compute (nova)
New
Undecided
Unassigned

Bug Description

I'm using devstack and after a recent update (using stack.sh with RECLONE=yes), nova compute isn't starting anymore.

I'm using the compute_driver = vmwareapi.VMwareVCDriver and I get the following exception:

2014-08-12 09:53:06.378 DEBUG nova.openstack.common.service [-] ******************************************************************************** from (pid=21002) log_opt_values /usr/local/lib/python2.7/dist-packages/oslo/config/cfg.py:1990
2014-08-12 09:53:06.378 AUDIT nova.service [-] Starting compute node (version 2014.2)
Traceback (most recent call last):
  File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/hub.py", line 346, in fire_timers
    timer()
  File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/timer.py", line 56, in __call__
    cb(*args, **kw)
  File "/usr/local/lib/python2.7/dist-packages/eventlet/greenthread.py", line 194, in main
    result = function(*args, **kwargs)
  File "/opt/stack/nova/nova/openstack/common/service.py", line 490, in run_service
    service.start()
  File "/opt/stack/nova/nova/service.py", line 164, in start
    self.manager.init_host()
  File "/opt/stack/nova/nova/compute/manager.py", line 1058, in init_host
    self.driver.init_host(host=self.host)
  File "/opt/stack/nova/nova/virt/driver.py", line 150, in init_host
    raise NotImplementedError()
NotImplementedError
2014-08-12 09:53:06.379 ERROR nova.openstack.common.threadgroup [-]
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup Traceback (most recent call last):
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup File "/opt/stack/nova/nova/openstack/common/threadgroup.py", line 125, in wait
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup x.wait()
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup File "/opt/stack/nova/nova/openstack/common/threadgroup.py", line 47, in wait
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup return self.thread.wait()
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup File "/usr/local/lib/python2.7/dist-packages/eventlet/greenthread.py", line 168, in wait
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup return self._exit_event.wait()
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup File "/usr/local/lib/python2.7/dist-packages/eventlet/event.py", line 116, in wait
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup return hubs.get_hub().switch()
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup File "/usr/local/lib/python2.7/dist-packages/eventlet/hubs/hub.py", line 187, in switch
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup return self.greenlet.switch()
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup File "/usr/local/lib/python2.7/dist-packages/eventlet/greenthread.py", line 194, in main
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup result = function(*args, **kwargs)
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup File "/opt/stack/nova/nova/openstack/common/service.py", line 490, in run_service
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup service.start()
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup File "/opt/stack/nova/nova/service.py", line 164, in start
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup self.manager.init_host()
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup File "/opt/stack/nova/nova/compute/manager.py", line 1058, in init_host
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup self.driver.init_host(host=self.host)
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup File "/opt/stack/nova/nova/virt/driver.py", line 150, in init_host
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup raise NotImplementedError()
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup NotImplementedError
2014-08-12 09:53:06.379 TRACE nova.openstack.common.threadgroup

It appears to be due to the fix for bug #1346637
Change-Id: I718fc0ee67dbd625af00c20fa4e34b8a35015437
commit 1deb31f85a8f5d1e261b2cf1eddc537a5da7f60b

The change looks like it removed the VMwareESXDriver which was the parent class for VMwareVCDriver.

This means that the init_host() method that was previously implemented by VMwareESXDriver is now not implemented anymore by VMwareVCDriver. Is there some new configuration I'm missing or is this a real problem?

For now to get it working I've copied the old init_host() and cleanup_host() methods over - not sure if others are missing as well, but it's enough to get Nova compute to start. Attaching the patch for this for reference. Apologies if it's not in the correct format, this is very new to me.

Revision history for this message
Tesshu Flower (tflower) wrote :
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Patches

Remote bug watches

Bug watches keep track of this bug in other bug trackers.