Nova / Neutron Client failing upon re-authentication after token expiration
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Compute (nova) |
Fix Released
|
High
|
Drew Thorstensen | ||
Havana |
Fix Released
|
High
|
Matt Riedemann | ||
python-neutronclient |
Fix Released
|
Low
|
Drew Thorstensen |
Bug Description
By default, the token length for clients is 24 hours. When that token expires (or is invalidated for any reason), nova should obtain a new token.
Currently, when the token expires, it leads to the following fault:
File "/usr/lib/
nets = neutron.
File "/usr/lib/
ret = self.function(
File "/usr/lib/
**_params)
File "/usr/lib/
for r in self._paginatio
File "/usr/lib/
res = self.get(path, params=params)
File "/usr/lib/
headers=
File "/usr/lib/
headers=
File "/usr/lib/
resp, replybody = self.httpclient
File "/usr/lib/
self.
File "/usr/lib/
token_url = self.auth_url + "/tokens"
TRACE nova.openstack.
This error is occurring because nova/network/
Since nova is passing the token directly into the neutron client, nova does not validate whether or not the token is authenticated.
After the 24 hour period of time, the token naturally expires. Therefore, when the neutron client goes to make a request, it catches an exceptions.
The issue arises in the re-authentication of the token. The neutron client's authenticate method requires that the following parameters are sent in from its users:
- username
- password
- tenant_id or tenant_name
- auth_url
- auth_strategy
Since the nova client is not passing these parameters in, the neutron client is failing with the exception above.
Not all methods from the nova client are exposed to this. Invocations to nova/network/
Methods from nova/network/
- _get_available_
- allocate_
- deallocate_
- deallocate_
- list_ports
- show_port
- add_fixed_
- remove_
- validate_networks
- _get_instance_
- associate_
- get_all
- get
- get_floating_ip
- get_floating_
- get_floating_
- get_floating_
- get_instance_
- allocate_
- release_floating_ip
- disassociate_
- _get_subnets_
Changed in python-neutronclient: | |
assignee: | nobody → Drew Thorstensen (thorst) |
Changed in nova: | |
importance: | Undecided → High |
tags: | added: havana-backport-potential |
Changed in nova: | |
milestone: | none → icehouse-1 |
Changed in nova: | |
status: | Fix Committed → Fix Released |
Changed in nova: | |
milestone: | icehouse-1 → 2014.1 |
Changed in python-neutronclient: | |
milestone: | none → 2.3.5 |
importance: | Undecided → Low |
Changed in python-neutronclient: | |
status: | Fix Committed → Fix Released |
This is essentially a duplicate of bug 1177579.