Bug 873823

Summary: dashboard tries to use quantum when it's not enabled
Product: [Fedora] Fedora EPEL Reporter: Kevin Fenzi <kevin>
Component: openstack-utilsAssignee: Matthias Runge <mrunge>
Status: CLOSED CURRENTRELEASE QA Contact: Fedora Extras Quality Assurance <extras-qa>
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: el6CC: apevec, apevec, e.g.www.facebook, Jan.van.Eldik, jose.castro.leon, markmc, mrunge, nsantos, pbrady, p
Target Milestone: ---   
Target Release: ---   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: openstack-utils-2012.2-6.el6 Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2012-11-17 19:49:05 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Kevin Fenzi 2012-11-06 19:12:01 UTC
Clean install of RHEL6. 
Enabled epel-testing. 

Ran openstack-demo-install

In the dashboard click on networks and you get: 

Error: Network list can not be retrieved.

In /var/log/httpd/error_log: 

[Tue Nov 06 19:10:38 2012] [error] \x1b[31;1mRecoverable error: [Errno 111] Connection refused\x1b[0m
[Tue Nov 06 19:10:38 2012] [error] Traceback (most recent call last):
[Tue Nov 06 19:10:38 2012] [error]   File "/usr/lib/python2.6/site-packages/horizon/dashboards/nova/networks/views.py", line 49, in get_data
[Tue Nov 06 19:10:38 2012] [error]     tenant_id)
[Tue Nov 06 19:10:38 2012] [error]   File "/usr/lib/python2.6/site-packages/horizon/api/quantum.py", line 126, in network_list_for_tenant
[Tue Nov 06 19:10:38 2012] [error]     shared=False, **params)
[Tue Nov 06 19:10:38 2012] [error]   File "/usr/lib/python2.6/site-packages/horizon/api/quantum.py", line 104, in network_list
[Tue Nov 06 19:10:38 2012] [error]     networks = quantumclient(request).list_networks(**params).get('networks')
[Tue Nov 06 19:10:38 2012] [error]   File "/usr/lib/python2.6/site-packages/quantumclient/v2_0/client.py", line 102, in with_params
[Tue Nov 06 19:10:38 2012] [error]     ret = self.function(instance, *args, **kwargs)
[Tue Nov 06 19:10:38 2012] [error]   File "/usr/lib/python2.6/site-packages/quantumclient/v2_0/client.py", line 244, in list_networks
[Tue Nov 06 19:10:38 2012] [error]     return self.get(self.networks_path, params=_params)
[Tue Nov 06 19:10:38 2012] [error]   File "/usr/lib/python2.6/site-packages/quantumclient/v2_0/client.py", line 525, in get
[Tue Nov 06 19:10:38 2012] [error]     headers=headers, params=params)
[Tue Nov 06 19:10:38 2012] [error]   File "/usr/lib/python2.6/site-packages/quantumclient/v2_0/client.py", line 510, in retry_request
[Tue Nov 06 19:10:38 2012] [error]     headers=headers, params=params)
[Tue Nov 06 19:10:38 2012] [error]   File "/usr/lib/python2.6/site-packages/quantumclient/v2_0/client.py", line 455, in do_request
[Tue Nov 06 19:10:38 2012] [error]     self._handle_fault_response(status_code, replybody)
[Tue Nov 06 19:10:38 2012] [error]   File "/usr/lib/python2.6/site-packages/quantumclient/v2_0/client.py", line 436, in _handle_fault_response
[Tue Nov 06 19:10:38 2012] [error]     exception_handler_v20(status_code, des_error_body)
[Tue Nov 06 19:10:38 2012] [error]   File "/usr/lib/python2.6/site-packages/quantumclient/v2_0/client.py", line 82, in exception_handler_v20
[Tue Nov 06 19:10:38 2012] [error]     message=message)
[Tue Nov 06 19:10:38 2012] [error] QuantumClientException: [Errno 111] Connection refused
[Tue Nov 06 19:10:38 2012] [error] unable to retrieve service catalog with token
[Tue Nov 06 19:10:38 2012] [error] Traceback (most recent call last):
[Tue Nov 06 19:10:38 2012] [error]   File "/usr/lib/python2.6/site-packages/keystoneclient/v2_0/client.py", line 135, in _extract_service_catalog
[Tue Nov 06 19:10:38 2012] [error]     endpoint_type='adminURL')
[Tue Nov 06 19:10:38 2012] [error]   File "/usr/lib/python2.6/site-packages/keystoneclient/service_catalog.py", line 73, in url_for
[Tue Nov 06 19:10:38 2012] [error]     raise exceptions.EndpointNotFound('Endpoint not found.')
[Tue Nov 06 19:10:38 2012] [error] EndpointNotFound: Endpoint not found.

# openstack-status  | egrep "quantum|network"
openstack-nova-network:       active
quantum-server:               inactive

So, it should be using nova-network and not quantum.

Comment 1 Matthias Runge 2012-11-08 09:10:04 UTC
ok, openstack-status reports just running services. here for me is configured:
[mrunge@rhel6 ~]$ keystone service-list| grep network
| 698d63cc6670477da4e4a2d7e25773d0 |   quantum   |   network    |      Quantum Service      |
 (from the openstack pov).

I agree, we should change this in demo install to nova-network.

Comment 2 Pádraig Brady 2012-11-08 09:47:34 UTC
Since openstack-demo-install doesn't touch any networking config, it seems to me that horizon shouldn't be defaulting to looking for quantum?

Comment 3 Alan Pevec 2012-11-08 10:03:22 UTC
So problem is that openstack-demo-install creates quantum entry in Keystone's service catalog but remaining configuration of Quantum is separate:
https://fedoraproject.org/wiki/QA:Testcase_Quantum_V2#Setup

These needs to be integrated into demo-install, but leave nova-network by default: i.e. configure quantum only when e.g. --quantum parameter is supplied.

Comment 4 Alan Pevec 2012-11-08 10:05:57 UTC
(In reply to comment #2)
> Since openstack-demo-install doesn't touch any networking config, it seems
> to me that horizon shouldn't be defaulting to looking for quantum?

Dashboard is configured on the fly according to the content of the service catalog.

Comment 5 Matthias Runge 2012-11-08 10:10:45 UTC
(In reply to comment #2)
> Since openstack-demo-install doesn't touch any networking config, it seems
> to me that horizon shouldn't be defaulting to looking for quantum?

/usr/share/openstack-keystone/sample-data.sh:
L229 ff:

if [[ -n "$ENABLE_QUANTUM" ]]; then
    QUANTUM_SERVICE=$(get_id \
    keystone service-create --name=quantum \
                            --type=network \
                            --description="Quantum Service")
    QUANTUM_USER=$(get_id keystone user-create --name=quantum \
                                               --pass="$SERVICE_PASSWORD" \
                                               --tenant_id $SERVICE_TENANT \
                                               --email=quantum)
    keystone user-role-add --tenant_id $SERVICE_TENANT \
                           --user_id $QUANTUM_USER \
                           --role_id $ADMIN_ROLE
    if [[ -n "$ENABLE_ENDPOINTS" ]]; then
        keystone endpoint-create --region RegionOne --service_id $QUANTUM_SERVICE \
            --publicurl http://localhost:9696 \
            --adminurl http://localhost:9696 \
            --internalurl http://localhost:9696
    fi
fi

Comment 6 Pádraig Brady 2012-11-08 10:12:34 UTC
Thanks for the clarification Alan.

Seems like openstack-demo-install should be modified to not add quantum to keystone's service catalog. That can be left as a doc step in:
https://fedoraproject.org/wiki/QA:Testcase_Quantum_V2#Setup

openstack-demo-install should just be concerned with installing all packages
(on a single node) and bare bones config to wire them up.

Comment 8 Fedora Update System 2012-11-08 12:46:32 UTC
openstack-utils-2012.2-6.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/openstack-utils-2012.2-6.el6

Comment 9 Fedora Update System 2012-11-08 12:48:47 UTC
openstack-utils-2012.2-6.fc18 has been submitted as an update for Fedora 18.
https://admin.fedoraproject.org/updates/openstack-utils-2012.2-6.fc18

Comment 10 Fedora Update System 2012-11-08 21:08:53 UTC
python-keystoneclient-0.1.3.27-1.el6, openstack-glance-2012.2-2.el6, python-glanceclient-0.5.1-1.el6, python-websockify-0.2.0-1.el6, novnc-0.4-2.el6, python-prettytable-0.6.1-1.el6, openstack-quantum-2012.2-2.el6, python-quantumclient-2.1.1-0.el6, python-cinderclient-0.2.26-1.el6, python-novaclient-2.9.0-1.el6, python-django-openstack-auth-1.0.2-3.el6, openstack-nova-2012.2-2.el6, openstack-cinder-2012.2-3.el6, python-django-horizon-2012.2-3.el6, openstack-keystone-2012.2-1.el6, openstack-utils-2012.2-6.el6 has been submitted as an update for Fedora EPEL 6.
https://admin.fedoraproject.org/updates/FEDORA-EPEL-2012-13088/openstack-utils-2012.2-6.el6,python-websockify-0.2.0-1.el6,novnc-0.4-2.el6,python-django-horizon-2012.2-3.el6,openstack-nova-2012.2-2.el6,openstack-cinder-2012.2-3.el6,python-django-openstack-auth-1.0.2-3.el6,python-cinderclient-0.2.26-1.el6,python-novaclient-2.9.0-1.el6,openstack-quantum-2012.2-2.el6,python-quantumclient-2.1.1-0.el6,python-prettytable-0.6.1-1.el6,openstack-glance-2012.2-2.el6,python-glanceclient-0.5.1-1.el6,openstack-keystone-2012.2-1.el6,python-keystoneclient-0.1.3.27-1.el6

Comment 11 Fedora Update System 2012-11-09 18:28:12 UTC
Package python-keystoneclient-0.1.3.27-1.el6, python-glanceclient-0.5.1-1.el6, python-websockify-0.2.0-1.el6, novnc-0.4-2.el6, python-prettytable-0.6.1-1.el6, openstack-quantum-2012.2-2.el6, python-quantumclient-2.1.1-0.el6, python-cinderclient-0.2.26-1.el6, python-novaclient-2.9.0-1.el6, python-django-openstack-auth-1.0.2-3.el6, openstack-nova-2012.2-2.el6, openstack-cinder-2012.2-3.el6, python-django-horizon-2012.2-3.el6, openstack-utils-2012.2-6.el6, openstack-keystone-2012.2-3.el6, openstack-glance-2012.2-3.el6:
* should fix your issue,
* was pushed to the Fedora EPEL 6 testing repository,
* should be available at your local mirror within two days.
Update it with:
# su -c 'yum update --enablerepo=epel-testing python-keystoneclient-0.1.3.27-1.el6 python-glanceclient-0.5.1-1.el6 python-websockify-0.2.0-1.el6 novnc-0.4-2.el6 python-prettytable-0.6.1-1.el6 openstack-quantum-2012.2-2.el6 python-quantumclient-2.1.1-0.el6 python-cinderclient-0.2.26-1.el6 python-novaclient-2.9.0-1.el6 python-django-openstack-auth-1.0.2-3.el6 openstack-nova-2012.2-2.el6 openstack-cinder-2012.2-3.el6 python-django-horizon-2012.2-3.el6 openstack-utils-2012.2-6.el6 openstack-keystone-2012.2-3.el6 openstack-glance-2012.2-3.el6'
as soon as you are able to.
Please go to the following url:
https://admin.fedoraproject.org/updates/FEDORA-EPEL-2012-13088/openstack-utils-2012.2-6.el6,python-websockify-0.2.0-1.el6,novnc-0.4-2.el6,python-django-horizon-2012.2-3.el6,openstack-nova-2012.2-2.el6,openstack-cinder-2012.2-3.el6,python-django-openstack-auth-1.0.2-3.el6,python-cinderclient-0.2.26-1.el6,python-novaclient-2.9.0-1.el6,openstack-quantum-2012.2-2.el6,python-quantumclient-2.1.1-0.el6,python-prettytable-0.6.1-1.el6,openstack-glance-2012.2-3.el6,python-glanceclient-0.5.1-1.el6,openstack-keystone-2012.2-3.el6,python-keystoneclient-0.1.3.27-1.el6
then log in and leave karma (feedback).

Comment 12 Fedora Update System 2012-11-14 01:56:20 UTC
openstack-utils-2012.2-6.fc18 has been pushed to the Fedora 18 stable repository.  If problems still persist, please make note of it in this bug report.

Comment 13 Fedora Update System 2012-11-17 19:49:07 UTC
python-keystoneclient-0.1.3.27-1.el6, python-glanceclient-0.5.1-1.el6, python-websockify-0.2.0-1.el6, novnc-0.4-2.el6, python-prettytable-0.6.1-1.el6, openstack-quantum-2012.2-2.el6, python-quantumclient-2.1.1-0.el6, python-cinderclient-0.2.26-1.el6, python-novaclient-2.9.0-1.el6, python-django-openstack-auth-1.0.2-3.el6, openstack-nova-2012.2-2.el6, openstack-cinder-2012.2-3.el6, openstack-utils-2012.2-6.el6, openstack-glance-2012.2-3.el6, python-django-horizon-2012.2-4.el6, openstack-keystone-2012.2-5.el6 has been pushed to the Fedora EPEL 6 stable repository.  If problems still persist, please make note of it in this bug report.