dashboard requires L3 extension to be enabled else throws an error while launching instance

Bug #1292022 reported by Ashok kumaran B
42
This bug affects 7 people
Affects Status Importance Assigned to Milestone
OpenStack Dashboard (Horizon)
Fix Released
Medium
Akihiro Motoki

Bug Description

I have a flat network with ml2 where there is no need for L3. So I haven't enabled the L3 extension in neutron.conf. However dashboard mandates the L3 extension to be enabled during launch of instance, without enabling it getting the below error

http://paste.openstack.org/show/73381/

This is not an intended behavior

Tags: neutron
Revision history for this message
Akihiro Motoki (amotoki) wrote :

Neutron without L3 extension is a possible case and it is better to take into account it.

description: updated
Changed in horizon:
assignee: nobody → Akihiro Motoki (amotoki)
importance: Undecided → Medium
status: New → Triaged
Revision history for this message
Thiago Martins (martinx) wrote :
Revision history for this message
Akihiro Motoki (amotoki) wrote :

I am working on this but it is not in time for icehouse initial release.
If the fix lands by icehouse stable update, we would like to consider the backport.

tags: added: icehouse-backport-potential
Revision history for this message
Akihiro Motoki (amotoki) wrote :

After Neutron ML2 plugin is shipped, we sometimes receive this report.
It is because ML2 plugin can be used without L3 feature.

tags: added: neutron
Revision history for this message
Édouard Thuleau (ethuleau) wrote :

Horizon Neutron API interface already proposes a mechanism to cache and check if an extension is supported by the Neutron API [1].
I think we should add that test for the L3 extension.
And I also found another extension not tested: agent extension. That extension is used in the admin dashboard to list Neutron agents [2]. If that extension is not supported, Horizon raised a 404 error.

I think we need to check if a Neutron API request is dependent to an extension.
Perhaps, add a decorator to add that check?

[1] https://github.com/openstack/horizon/blob/master/openstack_dashboard/api/neutron.py#L831
[2] https://github.com/openstack/horizon/blob/master/openstack_dashboard/dashboards/admin/info/tables.py#L128

Revision history for this message
Akihiro Motoki (amotoki) wrote :

L3 extension check is a bit tricky compared to other neutron extensions because floating IP support also depends on L3 extension.
I am working on this bug as a blueprint hide-router-panel-by-config.

Another reason is that Horizon does not have a way to control enabling/disabling panel/dashboard based on extension list from neutron. Dynamic control mechanism is being implemented as a part of blueprint separate-identity-dash and the mechanism can be used to control Neutron related panels.

> And I also found another extension not tested: agent extension. That extension is used in the admin dashboard to list Neutron agents [2]. If that extension is not supported, Horizon raised a 404 error.

Regarding agent extension, we already check agent extension is enabled based on extension list from Neutron.
Please check NetworkAgentsTab.allowed() and if you have still an issue please file it as a separate bug.

Akihiro Motoki (amotoki)
tags: removed: icehouse-backport-potential
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/113336

Changed in horizon:
status: Triaged → In Progress
Revision history for this message
OpenStack Infra (hudson-openstack) wrote :

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

Changed in horizon:
assignee: Akihiro Motoki (amotoki) → David Lyle (david-lyle)
Changed in horizon:
assignee: David Lyle (david-lyle) → Akihiro Motoki (amotoki)
Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Fix merged to horizon (master)

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

commit 11001691308b633abf6cac378ae926677ad0d903
Author: Akihiro Motoki <email address hidden>
Date: Sat Aug 9 09:45:56 2014 +0900

    Add a config option to disable Router panel

    Neutron setup allows operators not to enable Router feautre
    (by not using Router service plugin in neutron.conf) and
    some Neutron plugin does not support Router feature.
    According to bug 1350639 there is also a case where operators
    want to disable Router panel from their policy.
    It seems nice we have a option to control Router panel.

    This commit add a new option 'enable_router' to OPENSTACK_NEUTRON_NETWORK.
    The default is True since router feature is enabled in most deployments
    and it is the current default behavior of Horizon.
    If this option is False, Router panel will disappear.

    blueprint hide-router-panel-by-config
    Partial-Bug: #1292022
    Closes-Bug: #1350639
    Change-Id: If90517bd35c5b18173c54c14a1ba229f97ba4797

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

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

commit 936fc59aa8c9b1a45aaefc9779741c84ed3fea90
Author: Akihiro Motoki <email address hidden>
Date: Sat Aug 9 15:08:40 2014 +0900

    Disable Floating IP features if Neutron router is disabled

    If the config option 'enable_router' is set to False,
    Floating IP features are disabled when Neutron is enabled.
    It does not affect when Neutron is disabled.

    It also adds unit tests for api.network.servers_update_addresses
    which is affected by this change.

    Completes blueprint hide-router-panel-by-config
    Closes-Bug: #1292022
    Change-Id: Ib63c6a0e7bb5661d4a60d10a1722fdad978b50bb

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

Fix proposed to branch: stable/icehouse
Review: https://review.openstack.org/189459

Revision history for this message
OpenStack Infra (hudson-openstack) wrote : Change abandoned on horizon (stable/icehouse)

Change abandoned by Tracy Jones (<email address hidden>) on branch: stable/icehouse
Review: https://review.openstack.org/189459
Reason: don't need it

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.