Bug 1368601 - Cannot create V2 load balancer from UI
Summary: Cannot create V2 load balancer from UI
Keywords:
Status: CLOSED WONTFIX
Alias: None
Product: Red Hat OpenStack
Classification: Red Hat
Component: openstack-neutron-lbaas
Version: 9.0 (Mitaka)
Hardware: All
OS: All
low
high
Target Milestone: async
: 10.0 (Newton)
Assignee: Nir Magnezi
QA Contact: Toni Freger
URL:
Whiteboard:
: 1409830 (view as bug list)
Depends On:
Blocks: 1381612
TreeView+ depends on / blocked
 
Reported: 2016-08-19 22:00 UTC by Jon Jozwiak
Modified: 2020-08-13 08:33 UTC (History)
25 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Environment:
Last Closed: 2018-11-18 14:25:19 UTC
Target Upstream Version:


Attachments (Terms of Use)
Packstack Answers (47.91 KB, text/plain)
2016-09-26 15:57 UTC, Jon Jozwiak
no flags Details

Description Jon Jozwiak 2016-08-19 22:00:58 UTC
Description of problem:
I cannot create a V2 load balancer from the UI without getting an error.

Version-Release number of selected component (if applicable):
OSP 9 Mitaka

openstack-neutron-lbaas-ui-1.0.1-0.20160606131231.b85927d.el7ost.noarch
python-neutron-lbaas-8.0.0-1.el7ost.noarch
openstack-neutron-lbaas-8.0.0-1.el7ost.noarch
openstack-dashboard-theme-9.0.1-1.el7ost.noarch
openstack-dashboard-9.0.1-1.el7ost.noarch

How reproducible:


Steps to Reproduce:
1. In the Load Balancer V2 Screen in Mitaka click 'Launch Load Balancer' 
2. Fill in the form as follows:
   IP: Create New
   Name: testlb
   Method: Round Robin
   Protocol: HTTP
   Instance Port: 80
 On Monitor Tab:
   Monitor: HTTP
   Health Check Interval: 5
   Retry Count: 3
 On Instances Tab (optional):
   Add instances
3. Click Launch 

Actual results:
You will get errors saying the following:

Error: source_type
Unable to launch load balancer named "testlb"

Expected results:
Expect my load balancer to be provisioned

Additional info:
In /var/log/horizon/horizon.log: 
2016-08-19 21:55:22,963 5946 WARNING horizon.exceptions Recoverable error: 'source_type'


No errors are in the lbaas log

Comment 5 Assaf Muller 2016-09-13 20:01:47 UTC
*** Bug 1368597 has been marked as a duplicate of this bug. ***

Comment 6 Nir Magnezi 2016-09-14 13:51:26 UTC
Jon,

Can you please share some details about your setup? (So I can debug the issue).
How was it deployed, rpm versions, how was LBaaS configured (by the installer? manually?), etc.

Please also attach relevant logs and configuration files.

Comment 7 Jon Jozwiak 2016-09-26 15:54:45 UTC
I built the environment with a packstack all in one build.  Then I added LBaaS v2 as follows: 

yum -y install openstack-neutron-lbaas haproxy

# In /etc/neutron/neutron.conf, add lbaasv2 to service plugins.
service_plugins = neutron_lbaas.services.loadbalancer.plugin.LoadBalancerPluginv2

# In [service_providers] section of /etc/neutron/neutron.conf, add the load balancer with haproxy backend:
service_provider=LOADBALANCERV2:Haproxy:neutron_lbaas.drivers.haproxy.plugin_driver.HaproxyOnHostPluginDriver:default

# Set the interface driver to openvswitch (or linuxbridge if applicable)
openstack-config --set /etc/neutron/lbaas_agent.ini DEFAULT interface_driver openvswitch

# Ensure the device_driver is commented out if it was previously defined for v1
sed -i -e 's/^device_driver/#device_driver/g' /etc/neutron/

# Run the database migration
neutron-db-manage --subproject neutron-lbaas upgrade head
systemctl disable neutron-lbaas-agent
systemctl stop neutron-lbaas-agent
systemctl restart neutron-server
systemctl enable neutron-lbaasv2-agent
systemctl start neutron-lbaasv2-agent

# Enable the v2 UI 
yum -y install openstack-neutron-lbaas-ui

# Ensure the following section in /etc/openstack-dashboard/local_settings:
OPENSTACK_NEUTRON_NETWORK = {
 ...
    'enable_lb': True,
 ...
}

systemctl restart httpd



In terms of logs while testing, I'm not seeing anything of great interest.  

/var/log/horizon/horizon.log shows: 
2016-09-26 15:49:16,050 4395 WARNING horizon.exceptions Recoverable error: 'source_type'

I see nothing of interest in the Neutron logs.

Comment 8 Jon Jozwiak 2016-09-26 15:57:41 UTC
Created attachment 1204881 [details]
Packstack Answers

Packstack answer file from my environment

Comment 9 dciancio 2017-02-28 22:37:17 UTC
Any update on this issue?  I am facing the same problem

Comment 10 Jeremy 2017-03-02 18:05:37 UTC
I have customer facing the same issue in OSP10. gui using lbaas v2. Can I provide any information on this?

Comment 13 Alfredo Moralejo 2017-04-17 09:42:19 UTC
Note that the reported error is related to the use of the old panel from lbaas-dashboard instead of the new one ngloadbalancersv2. This was fixed in RDO package in https://review.rdoproject.org/r/#/q/topic:fix-lbaas-ui

AFAIK, that fix should work for RHOSP also. As workaround, removing old panel files from enabled directory should work:

rm /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1480*

Comment 14 Jeremy 2017-04-17 18:12:32 UTC

Customer went ahead and moved those files out of the enabled dir, but now does not see the Load Balancer  (v1 or v2) in the dashboard.  I did restart httpd after making the change.

Here's what the dir looks like on each controller:

controller 0
-------------

[stack@rhelosp10-dir-nprod ~]$ sshc0 'ls -la  /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/'
total 84
drwxr-xr-x. 2 root root 4096 Apr 17 16:58 .
drwxr-xr-x. 3 root root  181 Mar  2 15:59 ..
-rw-r-----. 1 root root 1212 Mar 17  2016 _1481_project_ng_loadbalancersv2_panel.py
-rw-r--r--. 2 root root  672 Oct 26 18:32 _1481_project_ng_loadbalancersv2_panel.pyc
-rw-r--r--. 2 root root  672 Oct 26 18:32 _1481_project_ng_loadbalancersv2_panel.pyo
-rw-r--r--. 1 root root  397 Oct  6  2016 _1810_data_processing_panel_group.py
-rw-r--r--. 2 root root  472 Oct 20 05:34 _1810_data_processing_panel_group.pyc
-rw-r--r--. 2 root root  472 Oct 20 05:34 _1810_data_processing_panel_group.pyo
-rw-r--r--. 1 root root 1464 Oct  6  2016 _1820_data_processing_clusters_panel.py
-rw-r--r--. 2 root root  957 Oct 20 05:34 _1820_data_processing_clusters_panel.pyc
-rw-r--r--. 2 root root  957 Oct 20 05:34 _1820_data_processing_clusters_panel.pyo
-rw-r--r--. 1 root root 1177 Oct  6  2016 _1830_data_processing_plugins_panel.py
-rw-r--r--. 2 root root  654 Oct 20 05:34 _1830_data_processing_plugins_panel.pyc
-rw-r--r--. 2 root root  654 Oct 20 05:34 _1830_data_processing_plugins_panel.pyo
-rw-r--r--. 1 root root 1402 Oct  6  2016 _1840_data_processing_jobs_panel.py
-rw-r--r--. 2 root root  897 Oct 20 05:34 _1840_data_processing_jobs_panel.pyc
-rw-r--r--. 2 root root  897 Oct 20 05:34 _1840_data_processing_jobs_panel.pyo
-rw-r--r--. 1 root root  185 Nov  4 05:52 _50_settings.py.example
lrwxrwxrwx. 1 root root   59 Dec 12 18:32 _90_manila_admin_shares.py -> /etc/openstack-dashboard/enabled/_90_manila_admin_shares.py
-rw-r--r--. 1 root root  449 Feb 21 20:15 _90_manila_admin_shares.pyc
lrwxrwxrwx. 1 root root   61 Dec 12 18:32 _90_manila_project_shares.py -> /etc/openstack-dashboard/enabled/_90_manila_project_shares.py
-rw-r--r--. 1 root root  723 Feb 21 20:15 _90_manila_project_shares.pyc
-rw-r--r--. 1 root root    0 Nov  4 05:52 __init__.py
-rw-r--r--. 2 root root  163 Nov 28 16:31 __init__.pyc
-rw-r--r--. 2 root root  163 Nov 28 16:31 __init__.pyo

Comment 16 Alfredo Moralejo 2017-04-18 08:34:04 UTC
(In reply to Jeremy from comment #14)
> 
> Customer went ahead and moved those files out of the enabled dir, but now
> does not see the Load Balancer  (v1 or v2) in the dashboard.  I did restart
> httpd after making the change.
> 
> Here's what the dir looks like on each controller:
> 
> controller 0
> -------------
> 
> [stack@rhelosp10-dir-nprod ~]$ sshc0 'ls -la 
> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/'
> total 84
> drwxr-xr-x. 2 root root 4096 Apr 17 16:58 .
> drwxr-xr-x. 3 root root  181 Mar  2 15:59 ..
> -rw-r-----. 1 root root 1212 Mar 17  2016
> _1481_project_ng_loadbalancersv2_panel.py
> -rw-r--r--. 2 root root  672 Oct 26 18:32
> _1481_project_ng_loadbalancersv2_panel.pyc
> -rw-r--r--. 2 root root  672 Oct 26 18:32
> _1481_project_ng_loadbalancersv2_panel.pyo
> -rw-r--r--. 1 root root  397 Oct  6  2016
> _1810_data_processing_panel_group.py
> -rw-r--r--. 2 root root  472 Oct 20 05:34
> _1810_data_processing_panel_group.pyc
> -rw-r--r--. 2 root root  472 Oct 20 05:34
> _1810_data_processing_panel_group.pyo
> -rw-r--r--. 1 root root 1464 Oct  6  2016
> _1820_data_processing_clusters_panel.py
> -rw-r--r--. 2 root root  957 Oct 20 05:34
> _1820_data_processing_clusters_panel.pyc
> -rw-r--r--. 2 root root  957 Oct 20 05:34
> _1820_data_processing_clusters_panel.pyo
> -rw-r--r--. 1 root root 1177 Oct  6  2016
> _1830_data_processing_plugins_panel.py
> -rw-r--r--. 2 root root  654 Oct 20 05:34
> _1830_data_processing_plugins_panel.pyc
> -rw-r--r--. 2 root root  654 Oct 20 05:34
> _1830_data_processing_plugins_panel.pyo
> -rw-r--r--. 1 root root 1402 Oct  6  2016 _1840_data_processing_jobs_panel.py
> -rw-r--r--. 2 root root  897 Oct 20 05:34
> _1840_data_processing_jobs_panel.pyc
> -rw-r--r--. 2 root root  897 Oct 20 05:34
> _1840_data_processing_jobs_panel.pyo
> -rw-r--r--. 1 root root  185 Nov  4 05:52 _50_settings.py.example
> lrwxrwxrwx. 1 root root   59 Dec 12 18:32 _90_manila_admin_shares.py ->
> /etc/openstack-dashboard/enabled/_90_manila_admin_shares.py
> -rw-r--r--. 1 root root  449 Feb 21 20:15 _90_manila_admin_shares.pyc
> lrwxrwxrwx. 1 root root   61 Dec 12 18:32 _90_manila_project_shares.py ->
> /etc/openstack-dashboard/enabled/_90_manila_project_shares.py
> -rw-r--r--. 1 root root  723 Feb 21 20:15 _90_manila_project_shares.pyc
> -rw-r--r--. 1 root root    0 Nov  4 05:52 __init__.py
> -rw-r--r--. 2 root root  163 Nov 28 16:31 __init__.pyc
> -rw-r--r--. 2 root root  163 Nov 28 16:31 __init__.pyo

Is this OSP9 or OSP10?

Comment 17 Alfredo Moralejo 2017-04-18 10:27:32 UTC
I've just tested successfully the lbaas plugin in OSP10 from packstack deployment with following procedure:

# yum install openstack-neutron-lbaas-ui
# rm /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1480*
# vim /etc/openstack-dashboard/local_settings

Enable LBaaS:

OPENSTACK_NEUTRON_NETWORK = {
    'enable_distributed_router': False,
    'enable_firewall': False,
    'enable_ha_router': False,
    'enable_lb': True,
    'enable_quotas': True,
    'enable_security_group': True,
    'enable_vpn': False,
    'profile_support': None,
}


# systemctl restart httpd

A new "Load Balancer" tab appears in "Network" menu and you can create, edit and delete Load Balancers. I've done some basic manual testing for the three use cases and worked fine.

I'm doing the same test for OSP9

Comment 18 Jeremy 2017-04-18 13:28:52 UTC
Hello,
my customer is on OSP10.

Comment 19 Alfredo Moralejo 2017-04-18 13:48:07 UTC
(In reply to Jeremy from comment #18)
> Hello,
> my customer is on OSP10.

Workaround proposed in comment #17 should work. Could you make sure enable_lb has been properly set in all controllers?

Comment 20 Alfredo Moralejo 2017-04-18 14:48:27 UTC
I've also tested the same workaround procedure in OSP9 and it works as expected using latest package version openstack-neutron-lbaas-ui-1.0.1-0.20160606131231.b85927d.el7ost.noarch

Comment 21 Justinas Balciunas 2017-06-15 08:14:46 UTC
This issue is also present in RHOSP10.

Comment 22 Nir Magnezi 2017-06-19 12:00:54 UTC
*** Bug 1409830 has been marked as a duplicate of this bug. ***

Comment 23 David Pasqua 2017-08-31 19:47:15 UTC
I have the same problem
couldn't make it work on OSP10 

the setting
   'enable_lb': True, 


Enable LBaaS:

OPENSTACK_NEUTRON_NETWORK = {
    'enable_distributed_router': False,
    'enable_firewall': False,
    'enable_ha_router': False,
    'enable_lb': True,
    'enable_quotas': True,
    'enable_security_group': True,
    'enable_vpn': False,
    'profile_support': None,
}

is referring to Load balancer V1 not V2
and in the UI is the tab "Load Balancers"
this can create a load balancer, but can not delete.
It says all the time there is a listener online and can disassociate 




the RPM openstack-neutron-lbaas-ui
Install and configure the UI with the tab "Load Balancers v2"
but this can not create due to source type...
also, it can not delete any LB created in the "Load Balancer" tab 

any workaround I could apply ? to solve this issue

Thanks in advance.

Best regards

Comment 24 David Pasqua 2017-08-31 19:48:41 UTC
(In reply to David Pasqua from comment #23)
> I have the same problem
> couldn't make it work on OSP10 
> 
> the setting
>    'enable_lb': True, 
> 
> 
> Enable LBaaS:
> 
> OPENSTACK_NEUTRON_NETWORK = {
>     'enable_distributed_router': False,
>     'enable_firewall': False,
>     'enable_ha_router': False,
>     'enable_lb': True,
>     'enable_quotas': True,
>     'enable_security_group': True,
>     'enable_vpn': False,
>     'profile_support': None,
> }
> 
> is referring to Load balancer V1 not V2
> and in the UI is the tab "Load Balancers"
> this can create a load balancer, but can not delete.
> It says all the time there is a listener online and can disassociate 
> 
> 
> 
> 
> the RPM openstack-neutron-lbaas-ui
> Install and configure the UI with the tab "Load Balancers v2"
> but this can not create due to source type...
> also, it can not delete any LB created in the "Load Balancer" tab 
> 
> any workaround I could apply ? to solve this issue
> 
> Thanks in advance.
> 
> Best regards

Sorry typo error:

It says all the time there is a listener online and can not disassociate

Comment 37 Jamel Abiadh 2018-05-02 16:41:08 UTC
Have the same issue on OSP10. the Tab did not show up after implementing comment #17

Never the less looking into:
[root@overcloud-controller-1 ~]# cd /etc/openstack-dashboard/enabled/
[root@overcloud-controller-1 enabled]# ls -l
total 24
lrwxrwxrwx. 1 root root  101 Mar 29 22:59 _1810_data_processing_panel_group.py -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1810_data_processing_panel_group.py
lrwxrwxrwx. 1 root root  102 Mar 29 22:59 _1810_data_processing_panel_group.pyc -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1810_data_processing_panel_group.pyc
lrwxrwxrwx. 1 root root  104 Mar 29 22:59 _1820_data_processing_clusters_panel.py -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1820_data_processing_clusters_panel.py
lrwxrwxrwx. 1 root root  105 Mar 29 22:59 _1820_data_processing_clusters_panel.pyc -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1820_data_processing_clusters_panel.pyc
lrwxrwxrwx. 1 root root  103 Mar 29 22:59 _1830_data_processing_plugins_panel.py -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1830_data_processing_plugins_panel.py
lrwxrwxrwx. 1 root root  104 Mar 29 22:59 _1830_data_processing_plugins_panel.pyc -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1830_data_processing_plugins_panel.pyc
lrwxrwxrwx. 1 root root  100 Mar 29 22:59 _1840_data_processing_jobs_panel.py -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1840_data_processing_jobs_panel.py
lrwxrwxrwx. 1 root root  101 Mar 29 22:59 _1840_data_processing_jobs_panel.pyc -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1840_data_processing_jobs_panel.pyc
-rw-r--r--. 1 root root  913 Oct  4  2016 _90_manila_admin_shares.py
-rw-r--r--. 2 root root  417 Jan 15 22:42 _90_manila_admin_shares.pyc
-rw-r--r--. 2 root root  417 Jan 15 22:42 _90_manila_admin_shares.pyo
-rw-r--r--. 1 root root 1200 Oct  4  2016 _90_manila_project_shares.py
-rw-r--r--. 2 root root  691 Jan 15 22:42 _90_manila_project_shares.pyc
-rw-r--r--. 2 root root  691 Jan 15 22:42 _90_manila_project_shares.pyo

I noticed that there was missing links for the lbaas files so I created those links manually:

[root@overcloud-controller-1 enabled]#  ln -s  /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1481_project_ng_loadbalancersv2_panel.pyc ./
[root@overcloud-controller-1 enabled]#  ln -s  /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1481_project_ng_loadbalancersv2_panel.py ./

[root@overcloud-controller-1 enabled]# ls -l
total 24
lrwxrwxrwx. 1 root root  106 May  2 19:30 _1481_project_ng_loadbalancersv2_panel.py -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1481_project_ng_loadbalancersv2_panel.py
lrwxrwxrwx. 1 root root  107 May  2 19:30 _1481_project_ng_loadbalancersv2_panel.pyc -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1481_project_ng_loadbalancersv2_panel.pyc
lrwxrwxrwx. 1 root root  101 Mar 29 22:59 _1810_data_processing_panel_group.py -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1810_data_processing_panel_group.py
lrwxrwxrwx. 1 root root  102 Mar 29 22:59 _1810_data_processing_panel_group.pyc -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1810_data_processing_panel_group.pyc
lrwxrwxrwx. 1 root root  104 Mar 29 22:59 _1820_data_processing_clusters_panel.py -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1820_data_processing_clusters_panel.py
lrwxrwxrwx. 1 root root  105 Mar 29 22:59 _1820_data_processing_clusters_panel.pyc -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1820_data_processing_clusters_panel.pyc
lrwxrwxrwx. 1 root root  103 Mar 29 22:59 _1830_data_processing_plugins_panel.py -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1830_data_processing_plugins_panel.py
lrwxrwxrwx. 1 root root  104 Mar 29 22:59 _1830_data_processing_plugins_panel.pyc -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1830_data_processing_plugins_panel.pyc
lrwxrwxrwx. 1 root root  100 Mar 29 22:59 _1840_data_processing_jobs_panel.py -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1840_data_processing_jobs_panel.py
lrwxrwxrwx. 1 root root  101 Mar 29 22:59 _1840_data_processing_jobs_panel.pyc -> /usr/share/openstack-dashboard/openstack_dashboard/local/enabled/_1840_data_processing_jobs_panel.pyc
-rw-r--r--. 1 root root  913 Oct  4  2016 _90_manila_admin_shares.py
-rw-r--r--. 2 root root  417 Jan 15 22:42 _90_manila_admin_shares.pyc
-rw-r--r--. 2 root root  417 Jan 15 22:42 _90_manila_admin_shares.pyo
-rw-r--r--. 1 root root 1200 Oct  4  2016 _90_manila_project_shares.py
-rw-r--r--. 2 root root  691 Jan 15 22:42 _90_manila_project_shares.pyc
-rw-r--r--. 2 root root  691 Jan 15 22:42 _90_manila_project_shares.pyo


and restarted httpd:

root@overcloud-controller-1 enabled]# systemctl restart httpd

Did the same on all controller nodes and now I have the Load balancer tab showing up


Note You need to log in before you can comment on or make changes to this bug.