Can't see the router in the network topology page, if neutron l3 agent HA is enabled.

Bug #1405049 reported by Hong Hui Xiao
18
This bug affects 4 people
Affects Status Importance Assigned to Milestone
OpenStack Dashboard (Horizon)
Fix Released
Medium
David Lyle
Juno
Fix Released
Medium
David Lyle

Bug Description

When I enabled the neutron l3 agent ha, by setting the properties in neutron.conf, I create a router from horizon. But I can't see the router from the "Network Topology" page.

But everything works fine, for example adding gateway, adding interface.

Revision history for this message
Kylin CG (kylin7-sg) wrote :

Can't reproduce this, i can see the router in network topology, see attachment.. what's version of openstack you used?

Revision history for this message
Hong Hui Xiao (xiaohhui) wrote :

Hi Kylin. I am using Juno OpenStack. You can see my attachment. Which version do you use?

Revision history for this message
Mark Davidson (markd-b) wrote :

I am seeing the same thing, but the user must be an admin and there may be some response ordering that sometimes lets it work.
If the user is not an admin then everything works.

I have a 3 controller node Juno setup with l3_ha configured. This means that if I do a router-port-list as an admin, then in addition to normal ports, there are 'HA port tenant' ports.

I have noticed that if a normal port is listed higher than the 'HA port tenant' ports on the router interface page, than that router is displayed in the network topology. Otherwise it is not displayed.

Revision history for this message
Mark Davidson (markd-b) wrote :

I think this is because the horizon.networktopology.js uses the device_id to match up devices and ports, but with l3_ha on, there are ports with the same device id (network:router_ha_interface and matching network:router_gateway) (NB you only see these if the user is an admin)

If the network:router_gateway appears before the matching network:router_ha_interface in the port list, then the display works, otherwise the router is not displayed.

I'm not sure where the fix should go - either the horizon.networktopology.js (ignoring the network:router_ha_interface ports), or dashboards/project/network_topology/views.py (removing the network:router_ha_interface ports from the view get)

To check this was the problem, I did a little patch to the views.py so that it stripped the network:router_ha_interface ports before sending them to the javascript.

In def _get_ports(self, request):
< for port in neutron_ports]
> for port in neutron_ports if port.device_owner != 'network:router_ha_interface']

and then the display works fine

Revision history for this message
Shannon McFarland (shmcfarl) wrote :

What's the status of a patch. This thing is hammering us on multiple deployments.

Revision history for this message
Shannon McFarland (shmcfarl) wrote :

BTW the patch that Mark showed above worked great for me. Can we get this pushed?

David Lyle (david-lyle)
Changed in horizon:
importance: Undecided → Medium
status: New → Confirmed
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix proposed to horizon (master)

Fix proposed to branch: master
Review: https://review.openstack.org/168426

Changed in horizon:
assignee: nobody → David Lyle (david-lyle)
status: Confirmed → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to horizon (master)

Reviewed: https://review.openstack.org/168426
Committed: https://git.openstack.org/cgit/openstack/horizon/commit/?id=b2ec97f7ed513c533c564adcf29947f51ec3f3f6
Submitter: Jenkins
Branch: master

commit b2ec97f7ed513c533c564adcf29947f51ec3f3f6
Author: David Lyle <email address hidden>
Date: Fri Mar 27 11:20:25 2015 -0600

    Removing HA interfaces from port list

    In the network topology, HA interfaces cause inconsistent results
    when trying to display the network topology.

    Closes-Bug: #1405049
    Change-Id: Ied14259e17d9bf7f720f0f8dcf86145a5e47c27e

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

Fix proposed to branch: stable/juno
Review: https://review.openstack.org/170214

Akihiro Motoki (amotoki)
Changed in horizon:
milestone: none → kilo-rc1
Thierry Carrez (ttx)
Changed in horizon:
status: Fix Committed → Fix Released
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to horizon (stable/juno)

Reviewed: https://review.openstack.org/170214
Committed: https://git.openstack.org/cgit/openstack/horizon/commit/?id=ad475489988ba4a95a46d4fe0ed22bbcbce16f21
Submitter: Jenkins
Branch: stable/juno

commit ad475489988ba4a95a46d4fe0ed22bbcbce16f21
Author: David Lyle <email address hidden>
Date: Fri Mar 27 11:20:25 2015 -0600

    Removing HA interfaces from port list

    In the network topology, HA interfaces cause inconsistent results
    when trying to display the network topology.

    Closes-Bug: #1405049
    Change-Id: Ied14259e17d9bf7f720f0f8dcf86145a5e47c27e
    (cherry picked from commit b2ec97f7ed513c533c564adcf29947f51ec3f3f6)

tags: added: in-stable-juno
Thierry Carrez (ttx)
Changed in horizon:
milestone: kilo-rc1 → 2015.1.0
Alan Pevec (apevec)
tags: removed: in-stable-juno
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.