Ask Your Question
0

Could not determine a suitable URL for the plugin for Neutron

asked 2018-06-27 10:41:29 -0500

amirdhaoui gravatar image

updated 2018-06-27 17:09:44 -0500

Hello,

I am following the installation guide for Queens OpenStack platform: https://docs.openstack.org/install-gu... I finished the neutron service installation and now I am at verifying operation.

I taped this command as indicated in the guide: openstack extension list --network And I got this error: Failed to retrieve extensions list from Network API

here the log file :/var/log/neutron/neutron-server.log

2018-06-27 17:32:55.685 14770 ERROR oslo_middleware.catch_errors     service_catalog = self.get_access(session).service_catalog
2018-06-27 17:32:55.685 14770 ERROR oslo_middleware.catch_errors   File "/usr/lib/python2.7/dist-packages/keystoneauth1/identity/base.py", line 134, in get_access
2018-06-27 17:32:55.685 14770 ERROR oslo_middleware.catch_errors     self.auth_ref = self.get_auth_ref(session)
2018-06-27 17:32:55.685 14770 ERROR oslo_middleware.catch_errors   File "/usr/lib/python2.7/dist-packages/keystoneauth1/identity/generic/base.py", line 199, in get_auth_ref
2018-06-27 17:32:55.685 14770 ERROR oslo_middleware.catch_errors     self._plugin = self._do_create_plugin(session)
2018-06-27 17:32:55.685 14770 ERROR oslo_middleware.catch_errors   File "/usr/lib/python2.7/dist-packages/keystoneauth1/identity/generic/base.py", line 194, in _do_create_plugin
2018-06-27 17:32:55.685 14770 ERROR oslo_middleware.catch_errors     raise exceptions.DiscoveryFailure('Could not determine a suitable URL '
2018-06-27 17:32:55.685 14770 ERROR oslo_middleware.catch_errors DiscoveryFailure: Could not determine a suitable URL for the plugin
2018-06-27 17:32:55.685 14770 ERROR oslo_middleware.catch_errors 
2018-06-27 17:32:55.686 14770 INFO neutron.wsgi [-] 192.168.2.116 "GET /v2.0/extensions HTTP/1.1" status: 500  len: 404 time: 0.0045609

I would be grateful if someone helps me.

edit retag flag offensive close merge delete

Comments

I believe this could mean you misconfigured the keystone_authtoken section. See an example in the install guide.

Bernd Bausch gravatar imageBernd Bausch ( 2018-06-27 17:14:46 -0500 )edit

Or does Keystone work at all? Do you get a token from openstack token issue?

Bernd Bausch gravatar imageBernd Bausch ( 2018-06-27 17:15:34 -0500 )edit

Yes I get a token

amirdhaoui gravatar imageamirdhaoui ( 2018-06-28 02:30:45 -0500 )edit

In this case check the keystone_authtoken section in the neutron configuration file.

Bernd Bausch gravatar imageBernd Bausch ( 2018-06-28 03:12:31 -0500 )edit

The config is this (the same in the guide):

auth_uri = http://controller:5000

auth_url = http://controller:35357

memcached_servers = controller:11211

auth_type = password

project_domain_name = default

user_domain_name = default

project_name = service

username = neutron

password = PASSWORD

amirdhaoui gravatar imageamirdhaoui ( 2018-06-28 07:19:03 -0500 )edit

2 answers

Sort by » oldest newest most voted
1

answered 2018-06-29 07:17:06 -0500

Your Keystone doesn’t listen on 35357. While I am not certain if that is the root of the problem, try setting auth_url = http://controller:5000 in neutron.conf.

In any case, when you use Keystone API v3, there is no need for separating admin and public endpoints anymore. See https://ask.openstack.org/en/question....

What I don’t quite understand: Since you deploy Keystone API v2 as well, you should have an admin endpoint that is different from public.

edit flag offensive delete link more

Comments

the bootstrap command in the guide is : # keystone-manage bootstrap --bootstrap-password ADMIN_PASS \ --bootstrap-admin-url http://controller:5000/v3/ \ --bootstrap-internal-url http://controller:5000/v3/ \ --bootstrap-public-url http://controller:5000/v3/ \ --bootstrap-region-id RegionOn

amirdhaoui gravatar imageamirdhaoui ( 2018-06-29 08:51:48 -0500 )edit

The instructions also say

With the removal of the v2 API, keystone can be run on the same port for all interfaces.

Still, Neutron uses port 35357. It should not be too hard to find out whether port 5000 fixes the problem. Also, your Keystone still exposes API v2 for some reason.

Bernd Bausch gravatar imageBernd Bausch ( 2018-06-29 09:12:09 -0500 )edit

But I don't see where in the Neutron install guide port 35357 is used. All the pages I have seen set auth_url = http://controller:5000.

Bernd Bausch gravatar imageBernd Bausch ( 2018-06-29 09:20:21 -0500 )edit

https://docs.openstack.org/neutron/queens/install/controller-install-option2-ubuntu.html (https://docs.openstack.org/neutron/qu...) /etc/neutron/neutron.conf [keystone_authtoken] field 35357 is used

amirdhaoui gravatar imageamirdhaoui ( 2018-06-29 09:49:24 -0500 )edit

I looked at this: https://docs.openstack.org/neutron/la.... I understand where the confusion comes from. In any case, your Keystone doesn’t use 35357, and therefore your Neutron shouldn’t.

Bernd Bausch gravatar imageBernd Bausch ( 2018-06-29 18:12:57 -0500 )edit
0

answered 2018-06-29 04:05:01 -0500

amirdhaoui gravatar image

Hello Bernd ,

root@controller:/home/controller# curl http://controller:5000

{"versions": {"values": [{"status": "stable", "updated": "2018-02-28T00:00:00Z", "media-types": [{"base": "application/json", "type": "application/vnd.openstack.identity-v3+json"}], "id": "v3.10", "links": [{"href": "http://controller:5000/v3/", "rel": "self"}]}, {"status": "deprecated", "updated": "2016-08-04T00:00:00Z", "media-types": [{"base": "application/json", "type": "application/vnd.openstack.identity-v2.0+json"}], "id": "v2.0", "links": [{"href": "http://controller:5000/v2.0/", "rel": "self"}, {"href": "https://docs.openstack.org/", "type": "text/html", "rel": "describedby"}]}]}}

root@controller:/home/controller# curl http://controller:35357

curl: (7) Failed to connect to controller port 35357: Connection refused

Below the log file:

2018-06-29 10:35:14.049 2631 INFO neutron.wsgi [-] 192.168.2.116 "GET / HTTP/1.1" status: 200 len: 252 time: 0.0007980 2018-06-29 10:35:14.054 2631 WARNING keystoneauth.identity.generic.base [-] Failed to discover available identity versions when contacting http://controller:35357. Attempting to parse version from URL.: ConnectFailure: Unable to establish connection to http://controller:35357: HTTPConnectionPool(host='controller', port=35357): Max retries exceeded with url: / (Caused by NewConnectionError('<urllib3.connection.httpconnection 0x7f0ca20cd0d0="" at="" object="">: Failed to establish a new connection: [Errno 111] ECONNREFUSED',)) 2018-06-29 10:35:14.054 2631 ERROR oslo_middleware.catch_errors [-] An error occurred during processing the request: GET /v2.0/extensions HTTP/1.0 Accept: application/json Accept-Encoding: gzip, deflate Connection: keep-alive Content-Type: text/plain Host: controller:9696 User-Agent: osc-lib/1.9.0 keystoneauth1/3.4.0 python-requests/2.18.4 CPython/2.7.12 X-Auth-Token: </urllib3.connection.httpconnection>: DiscoveryFailure: Could not determine a suitable URL for the plugin 2018-06-29 10:35:14.054 2631 ERROR oslo_middleware.catch_errors Traceback (most recent call last): 2018-06-29 10:35:14.054 2631 ERROR oslo_middleware.catch_errors File "/usr/lib/python2.7/dist-packages/oslo_middleware/catch_errors.py", line 40, in __call__ 2018-06-29 10:35:14.054 2631 ERROR oslo_middleware.catch_errors response = req.get_response(self.application) 2018-06-29 10:35:14.054 2631 ERROR oslo_middleware.catch_errors File "/usr/lib/python2.7/dist-packages/webob/request.py", line 1316, in send 2018-06-29 10:35:14.054 2631 ERROR oslo_middleware.catch_errors application, catch_exc_info=False) 2018-06-29 10:35:14.054 2631 ERROR oslo_middleware.catch_errors File "/usr/lib/python2.7/dist-packages/webob/request.py", line 1280, in call_application 2018-06-29 10:35:14.054 2631 ERROR oslo_middleware.catch_errors app_iter = application(self.environ, start_response) 2018-06-29 10:35:14.054 2631 ERROR oslo_middleware.catch_errors File "/usr/lib/python2.7/dist-packages/webob/dec.py", line 131, in __call__ 2018-06-29 10:35:14.054 2631 ERROR oslo_middleware.catch_errors resp = self.call_func(req, *args, *self.kwargs) 2018-06-29 10:35:14.054 2631 ERROR oslo_middleware.catch_errors File "/usr/lib/python2.7/dist-packages/webob/dec.py", line 196, in call_func 2018-06-29 10:35:14.054 2631 ERROR oslo_middleware.catch_errors return self.func(req, args, *kwargs) 2018-06-29 10:35:14.054 2631 ERROR oslo_middleware.catch_errors File "/usr/lib/python2.7/dist-packages/keystonemiddleware/auth_token/__init__.py", line 334, in __call__ 2018-06-29 10:35:14.054 2631 ERROR oslo_middleware.catch_errors response = self.process_request(req) 2018-06-29 10:35:14.054 2631 ERROR oslo_middleware.catch_errors File "/usr ... (more)

edit flag offensive delete link more

Your Answer

Please start posting anonymously - your entry will be published after you log in or create a new account.

Add Answer

Get to know Ask OpenStack

Resources for moderators

Question Tools

1 follower

Stats

Asked: 2018-06-27 10:41:29 -0500

Seen: 409 times

Last updated: Jun 29 '18