Reviewed:  https://review.opendev.org/679473
Committed: 
https://git.openstack.org/cgit/openstack/nova/commit/?id=3cef7edbc2dd72a25e46ca1962731ee3153f1fd7
Submitter: Zuul
Branch:    master

commit 3cef7edbc2dd72a25e46ca1962731ee3153f1fd7
Author: Matt Riedemann <mriedem...@gmail.com>
Date:   Fri Aug 30 12:11:59 2019 -0400

    Handle VirtDriverNotReady in _cleanup_running_deleted_instances
    
    Change I6e086e0a2bffe12fd78373b3bc6215221dabc77e made the
    _cleanup_running_deleted_instances task run immediately on
    start of the nova-compute service. For some compute drivers, like
    ironic, the "hypervisor" might not yet be ready to list instances
    which results in a traceback exception in the logs.
    
    This simply handles the VirtDriverNotReady error and returns to
    avoid the traceback.
    
    Change-Id: I6220a59988502a9839645efa101d555c19d4b650
    Closes-Bug: #1842081


** Changed in: nova
       Status: In Progress => Fix Released

-- 
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1842081

Title:
  Error during ComputeManager._cleanup_running_deleted_instances:
  VirtDriverNotReady: Virt driver is not ready. (ironic)

Status in OpenStack Compute (nova):
  Fix Released

Bug description:
  Seeing this on start of nova-compute with ironic when ironic-api isn't
  yet available:

  Aug 24 01:06:39.710754 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR nova.virt.ironic.driver [None req-
  9542c6c8-a038-45f5-bd18-e18f83c17755 None None] An unknown error has
  occurred when trying to get the list of nodes from the Ironic
  inventory. Error: StrictVersion instance has no attribute 'version'

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task [None req-
  9542c6c8-a038-45f5-bd18-e18f83c17755 None None] Error during
  ComputeManager._cleanup_running_deleted_instances: VirtDriverNotReady:
  Virt driver is not ready.

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task Traceback (most recent
  call last):

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task   File
  "/usr/local/lib/python2.7/dist-
  packages/oslo_service/periodic_task.py", line 222, in
  run_periodic_tasks

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task     task(self,
  context)

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task   File
  "/opt/stack/nova/nova/compute/manager.py", line 8369, in
  _cleanup_running_deleted_instances

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task     for instance in
  self._running_deleted_instances(context):

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task   File
  "/opt/stack/nova/nova/compute/manager.py", line 8423, in
  _running_deleted_instances

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task     instances =
  self._get_instances_on_driver(context, filters)

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task   File
  "/opt/stack/nova/nova/compute/manager.py", line 634, in
  _get_instances_on_driver

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task     driver_uuids =
  self.driver.list_instance_uuids()

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task   File
  "/opt/stack/nova/nova/virt/ironic/driver.py", line 685, in
  list_instance_uuids

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task
  fields=['instance_uuid'], limit=0)

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task   File
  "/opt/stack/nova/nova/virt/ironic/driver.py", line 656, in
  _get_node_list

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task     raise
  exception.VirtDriverNotReady()

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task VirtDriverNotReady:
  Virt driver is not ready.

  Aug 24 01:06:39.711672 ubuntu-bionic-rax-iad-0010410623 nova-
  compute[7945]: ERROR oslo_service.periodic_task

  Looks like this is due to https://review.opendev.org/#/c/657132/ in
  Train where the _cleanup_running_deleted_instances periodic task runs
  immediately on startup of the nova-compute service which could be
  before the hypervisor (in this case ironic) is ready.

  This doesn't really break anything, but it's an ugly traceback in the
  logs that could be avoided. We should handle the VirtDriverNotReady
  error and return from the periodic.

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1842081/+subscriptions

-- 
Mailing list: https://launchpad.net/~yahoo-eng-team
Post to     : yahoo-eng-team@lists.launchpad.net
Unsubscribe : https://launchpad.net/~yahoo-eng-team
More help   : https://help.launchpad.net/ListHelp

Reply via email to