[Openstack] [nova]How to convince the RetryFilter that a host is recovered from a failure?
Balazs Gibizer
balazs.gibizer at ericsson.com
Wed Nov 15 09:31:08 UTC 2017
On Wed, Nov 15, 2017 at 9:59 AM, Song Sam <samsong8610 at gmail.com> wrote:
> Hi, forks:
>
> I have a openstack o version cluster with two compute nodes. The
> resources are almost used up.
> So, I add a new compute node to a running cluster and try to cold
> migrate a vm to the new compute node. At the first time, the
> migration failed with 'No valid host found' for my mistake. I forgot
> to mount the data disk to extend local available storage.
>
> After I extend the storage, I confirmed the hypervisor have
> recognized the free disk space, as shown in the output of 'openstack
> hypervisor show'. But when I try to cold migrate again, It failed
> with 'No valid host found' again. After some dig in the scheduler
> log, I find the RetryFilter reject the new added host.
It seems to me that you hit this bug:
https://bugs.launchpad.net/nova/+bug/1718512
>
> My question are:
> 1. Where does the RetryFilter store the host availability status? In
> memory or in DB? Which table?
The RequestSpec persists the already tried hosts and RetryFilter checks
that.
> 2. How to convince the RetryFilter that the host is available again?
> I tried to restart nova-api, nova-scheduler, memcached services, but
> it doesn't work.
There is a request_spec table in the nova_api db where the RequestSpec
objects are stored. Unfortunately the content of the object is json
serialized into the spec field of that table so I don't suggest to try
to fix it manually.
cheers,
gibi
>
> The related log lines as following:
>
> 2017-11-15 14:24:37.906 7 DEBUG oslo_messaging._drivers.amqpdriver
> [-] received message msg_id: fa38b97af9504ebaa1d3118d91157f45 reply
> to reply_2c3ce56f29774ed19c504407625c632c __call__
> /var/lib/kolla/venv/lib/python2.7/site-packages/oslo_messaging/_drivers/amqpdriver.py:194
> 2017-11-15 14:24:37.999 7 DEBUG nova.filters
> [req-25d6619e-c611-4ecd-b696-f5cc8a39e93d
> a5efca4a04654a829ee19229df707e08 2e13a26ead3c4da493c5c234233308df - -
> -] Starting with 0 host(s) get_filtered_objects
> /var/lib/kolla/venv/lib/python2.7/site-packages/nova/filters.py:70
> 2017-11-15 14:24:38.000 7 INFO nova.filters
> [req-25d6619e-c611-4ecd-b696-f5cc8a39e93d
> a5efca4a04654a829ee19229df707e08 2e13a26ead3c4da493c5c234233308df - -
> -] Filter RetryFilter returned 0 hosts
> 2017-11-15 14:24:38.001 7 DEBUG nova.filters
> [req-25d6619e-c611-4ecd-b696-f5cc8a39e93d
> a5efca4a04654a829ee19229df707e08 2e13a26ead3c4da493c5c234233308df - -
> -] Filtering removed all hosts for the request with instance ID
> '14139777-351e-4fe9-9554-3c5729bc88cf'. Filter results:
> [('RetryFilter', None)] get_filtered_objects
> /var/lib/kolla/venv/lib/python2.7/site-packages/nova/filters.py:129
> 2017-11-15 14:24:38.001 7 INFO nova.filters
> [req-25d6619e-c611-4ecd-b696-f5cc8a39e93d
> a5efca4a04654a829ee19229df707e08 2e13a26ead3c4da493c5c234233308df - -
> -] Filtering removed all hosts for the request with instance ID
> '14139777-351e-4fe9-9554-3c5729bc88cf'. Filter results:
> ['RetryFilter: (start: 0, end: 0)']
> 2017-11-15 14:24:38.002 7 DEBUG nova.scheduler.filter_scheduler
> [req-25d6619e-c611-4ecd-b696-f5cc8a39e93d
> a5efca4a04654a829ee19229df707e08 2e13a26ead3c4da493c5c234233308df - -
> -] There are 0 hosts available but 1 instances requested to build.
> select_destinations
> /var/lib/kolla/venv/lib/python2.7/site-packages/nova/scheduler/filter_scheduler.py:76
>
>
> Any help are appreciated.
> Thanks
>
> Sam Song
More information about the Openstack
mailing list