[Prefix delegation] When subnet with PD enabled is added to the router, L3 agent fails on waiting for LLAs to be available

Bug #1892489 reported by Slawek Kaplonski
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
neutron
Fix Released
High
Slawek Kaplonski

Bug Description

Error in L3 agent logs:

Aug 21 13:32:19 devstack-ubuntu-ovs neutron-l3-agent[18002]: DEBUG oslo.privsep.daemon [-] privsep: reply[140297413292256]: (4, ()) {{(pid=18066) _call_back /usr/local/lib/python3.6/dist-packages/oslo_privsep/daemon.py:511}}
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: Traceback (most recent call last):
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: File "/opt/stack/neutron/neutron/common/utils.py", line 704, in wait_until_true
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: eventlet.sleep(sleep)
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: File "/usr/local/lib/python3.6/dist-packages/eventlet/greenthread.py", line 36, in sleep
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: hub.switch()
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: File "/usr/local/lib/python3.6/dist-packages/eventlet/hubs/hub.py", line 298, in switch
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: return self.greenlet.switch()
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: eventlet.timeout.Timeout: 40 seconds
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: During handling of the above exception, another exception occurred:
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: Traceback (most recent call last):
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: File "/usr/local/lib/python3.6/dist-packages/eventlet/hubs/hub.py", line 461, in fire_timers
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: timer()
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: File "/usr/local/lib/python3.6/dist-packages/eventlet/hubs/timer.py", line 59, in __call__
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: cb(*args, **kw)
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: File "/opt/stack/neutron/neutron/agent/linux/pd.py", line 251, in _ensure_lla_task
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: sleep=2)
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: File "/opt/stack/neutron/neutron/common/utils.py", line 709, in wait_until_true
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: raise WaitTimeout(_("Timed out after %d seconds") % timeout)
Aug 21 13:32:21 devstack-ubuntu-ovs neutron-l3-agent[18002]: neutron.common.utils.WaitTimeout: Timed out after 40 seconds

And dibbler-client isn't spawned so subnet don't get proper prefix.

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (master)

Fix proposed to branch: master
Review: https://review.opendev.org/747406

Changed in neutron:
status: Confirmed → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (master)

Reviewed: https://review.opendev.org/747406
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=a4e04a7f8be95295324a59c34e6a79c7973af1ee
Submitter: Zuul
Branch: master

commit a4e04a7f8be95295324a59c34e6a79c7973af1ee
Author: Slawek Kaplonski <email address hidden>
Date: Fri Aug 21 15:06:01 2020 +0200

    Fix get_ipv6_llas method in the interface driver

    This method is using ip_lib.get_devices_with_ip function to get
    IP addresses with scope "link".
    Unfortunatelly this method wasn't translating scope names to the pyrout2
    values and due to that wasn't returning correct IP addresses.

    Now this is fixed and correctl link local IPv6 addresses are returned.

    Change-Id: Ia41c1bc627ad2ce89d658ff1fdedee802f6dfa15
    Closes-Bug: #1892489

Changed in neutron:
status: In Progress → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (stable/ussuri)

Fix proposed to branch: stable/ussuri
Review: https://review.opendev.org/747626

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (stable/train)

Fix proposed to branch: stable/train
Review: https://review.opendev.org/747627

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to neutron (stable/stein)

Fix proposed to branch: stable/stein
Review: https://review.opendev.org/747628

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (stable/ussuri)

Reviewed: https://review.opendev.org/747626
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=49ae201b3e11117eca81d3297c0fa2b4e99dbd65
Submitter: Zuul
Branch: stable/ussuri

commit 49ae201b3e11117eca81d3297c0fa2b4e99dbd65
Author: Slawek Kaplonski <email address hidden>
Date: Fri Aug 21 15:06:01 2020 +0200

    Fix get_ipv6_llas method in the interface driver

    This method is using ip_lib.get_devices_with_ip function to get
    IP addresses with scope "link".
    Unfortunatelly this method wasn't translating scope names to the pyrout2
    values and due to that wasn't returning correct IP addresses.

    Now this is fixed and correctl link local IPv6 addresses are returned.

    Change-Id: Ia41c1bc627ad2ce89d658ff1fdedee802f6dfa15
    Closes-Bug: #1892489
    (cherry picked from commit a4e04a7f8be95295324a59c34e6a79c7973af1ee)

tags: added: in-stable-ussuri
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (stable/train)

Reviewed: https://review.opendev.org/747627
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=2ee84a52f75e2e48515a151a81879ead23beaa86
Submitter: Zuul
Branch: stable/train

commit 2ee84a52f75e2e48515a151a81879ead23beaa86
Author: Slawek Kaplonski <email address hidden>
Date: Fri Aug 21 15:06:01 2020 +0200

    Fix get_ipv6_llas method in the interface driver

    This method is using ip_lib.get_devices_with_ip function to get
    IP addresses with scope "link".
    Unfortunatelly this method wasn't translating scope names to the pyrout2
    values and due to that wasn't returning correct IP addresses.

    Now this is fixed and correctl link local IPv6 addresses are returned.

    Change-Id: Ia41c1bc627ad2ce89d658ff1fdedee802f6dfa15
    Closes-Bug: #1892489
    (cherry picked from commit a4e04a7f8be95295324a59c34e6a79c7973af1ee)

tags: added: in-stable-train
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to neutron (stable/stein)

Reviewed: https://review.opendev.org/747628
Committed: https://git.openstack.org/cgit/openstack/neutron/commit/?id=3f3e5d619f2f8c3877b4bef8a173324fae938a30
Submitter: Zuul
Branch: stable/stein

commit 3f3e5d619f2f8c3877b4bef8a173324fae938a30
Author: Slawek Kaplonski <email address hidden>
Date: Fri Aug 21 15:06:01 2020 +0200

    Fix get_ipv6_llas method in the interface driver

    This method is using ip_lib.get_devices_with_ip function to get
    IP addresses with scope "link".
    Unfortunatelly this method wasn't translating scope names to the pyrout2
    values and due to that wasn't returning correct IP addresses.

    Now this is fixed and correctl link local IPv6 addresses are returned.

    Change-Id: Ia41c1bc627ad2ce89d658ff1fdedee802f6dfa15
    Closes-Bug: #1892489
    (cherry picked from commit a4e04a7f8be95295324a59c34e6a79c7973af1ee)

tags: added: in-stable-stein
tags: added: neutron-proactive-backport-potential
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.