nova-compute cannot be restarted with active Ironic instances

Bug #1309156 reported by Adam Gandelman
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Ironic
New
Undecided
Unassigned

Bug Description

Attempting to restart the nova-compute service with ACTIVE nova instance provisioned on an Ironic node causes the following exception:

Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/eventlet/hubs/poll.py", line 97, in wait
    readers.get(fileno, noop).cb(fileno)
  File "/usr/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 179, in start
    self.manager.pre_start_hook()
  File "/opt/stack/nova/nova/compute/manager.py", line 1074, in pre_start_hook
    self.update_available_resource(nova.context.get_admin_context())
  File "/opt/stack/nova/nova/compute/manager.py", line 5457, in update_available_resource
    rt = self._get_resource_tracker(nodename)
  File "/opt/stack/nova/nova/compute/manager.py", line 609, in _get_resource_tracker
    "compute host.") % nodename)
NovaException: 5c68cb65-0c85-4fc2-8446-51a329944c97 is not a valid node managed by this compute host.

It looks like the nova driver's get_available_nodes() will return a list off all nodes /w power state (off or on), but its node_is_available() will only mark nodes available if:

        return not node.instance_uuid and not node.maintenance \
            and node.power_state == ironic_states.POWER_OFF

summary: - nova-compute cannot be restarted when Ironic nodes
+ nova-compute cannot be restarted with active Ironic instances
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

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