yahoo-eng-team team mailing list archive
-
yahoo-eng-team team
-
Mailing list archive
-
Message #32910
[Bug 1454369] Re: nova needs to move to using the 'volume' service type
@Jay, per "Cinder has added version discovery in Liberty so Nova should
go back to using the 'volume' service type as the volumev2 service type
will go away and version discovery should take care of making sure the
right API version is used." - what is the cinder version discovery
change mentioned? Is that in cinder - can you link to the patch?
Also, I think this is novaclient which means if the version discovery in
cinder is only liberty, we can't assume novaclient isn't talking to a
kilo cinder.
** Also affects: python-novaclient
Importance: Undecided
Status: New
** Changed in: python-novaclient
Status: New => Confirmed
** Changed in: python-novaclient
Importance: Undecided => Low
** No longer affects: nova
** Summary changed:
- nova needs to move to using the 'volume' service type
+ novaclient needs to move to using the 'volume' service type
--
You received this bug notification because you are a member of Yahoo!
Engineering Team, which is subscribed to OpenStack Compute (nova).
https://bugs.launchpad.net/bugs/1454369
Title:
novaclient needs to move to using the 'volume' service type
Status in Python client library for Nova:
Confirmed
Bug description:
It appears that there are still places in Nova that are being
hardcoded to use the Cinder V1 api. Evidence of this can be seen by
setting enable_v1_api to false in Cinder and then trying to use any of
the 'nova volume' commands. Errors like the following are produced:
[root@controller-x86-KVM-SCE-Refstack-SCERest-430gm-abd12ca7 ˜]# nova --debug volume-create 1
DEBUG (session:195) REQ: curl -g -i -X GET http://169.55.21.52:5000/v2.0 -H "Accept: application/json" -H "User-Agent: python-keystoneclient"
INFO (connectionpool:194) Starting new HTTP connection (1): 169.55.21.52
DEBUG (connectionpool:360) "GET /v2.0 HTTP/1.1" 200 338
DEBUG (session:224) RESP: [200] date: Sun, 10 May 2015 19:02:38 GMT vary: X-Auth-Token content-length: 338 content-type: application/json
RESP BODY: {"version": {"status": "stable", "updated": "2014-04-17T00:00:00Z", "media-types": [{"base": "application/json", "type": "application/vnd.openstack.identity-v2.0+json"}], "id": "v2.0", "links": [{"href": "http://169.55.21.52:5000/v2.0/", "rel": "self"}, {"href": "http://docs.openstack.org/", "type": "text/html", "rel": "describedby"}]}}
DEBUG (v2:76) Making authentication request to http://169.55.21.52:5000/v2.0/tokens
DEBUG (connectionpool:360) "POST /v2.0/tokens HTTP/1.1" 200 4531
DEBUG (iso8601:171) Parsed 2015-05-10T20:02:38Z into {'tz_sign': None, 'second_fraction': None, 'hour': u'20', 'daydash': u'10', 'tz_hour': None, 'month': None, 'timezone': u'Z', 'second': u'38', 'tz_minute': None, 'year': u'2015', 'separator': u'T', 'monthdash': u'05', 'day': None, 'minute': u'02'} with default timezone <iso8601.iso8601.Utc object at 0x1a26bd0>
DEBUG (iso8601:127) Got u'2015' for 'year' with default None
DEBUG (iso8601:127) Got u'05' for 'monthdash' with default None
DEBUG (iso8601:127) Got 5 for 'month' with default 5
DEBUG (iso8601:127) Got u'10' for 'daydash' with default None
DEBUG (iso8601:127) Got 10 for 'day' with default 10
DEBUG (iso8601:127) Got u'20' for 'hour' with default None
DEBUG (iso8601:127) Got u'02' for 'minute' with default None
DEBUG (iso8601:127) Got u'38' for 'second' with default None
DEBUG (session:195) REQ: curl -g -i -X POST http://169.55.21.52:8776/v1/a7d1b663366740859037201fa8a48b03/volumes -H "User-Agent: python-novaclient" -H "Content-Type: application/json" -H "Accept: application/json" -H "X-Auth-Token: {SHA1}3724d0d949251ec67dd2d3b67201b7e196f36c47" -d '{"volume": {"display_name": null, "imageRef": null, "availability_zone": null, "volume_type": null, "display_description": null, "snapshot_id": null, "size": 1}}'
INFO (connectionpool:194) Starting new HTTP connection (1): 169.55.21.52
DEBUG (connectionpool:360) "POST /v1/a7d1b663366740859037201fa8a48b03/volumes HTTP/1.1" 400 141
DEBUG (session:224) RESP:
DEBUG (shell:914) The server could not comply with the request since it is either malformed or otherwise incorrect. (HTTP 400)
Traceback (most recent call last):
File "/usr/lib/python2.7/site-packages/novaclient/shell.py", line 911, in main
OpenStackComputeShell().main(argv)
File "/usr/lib/python2.7/site-packages/novaclient/shell.py", line 838, in main
args.func(self.cs, args)
File "/usr/lib/python2.7/site-packages/novaclient/v2/shell.py", line 2053, in do_volume_create
imageRef=args.image_id)
File "/usr/lib/python2.7/site-packages/novaclient/v2/volumes.py", line 72, in create
return self._create('/volumes', body, 'volume')
File "/usr/lib/python2.7/site-packages/novaclient/base.py", line 161, in _create
_resp, body = self.api.client.post(url, body=body)
File "/usr/lib/python2.7/site-packages/keystoneclient/adapter.py", line 176, in post
return self.request(url, 'POST', **kwargs)
File "/usr/lib/python2.7/site-packages/novaclient/client.py", line 96, in request
raise exceptions.from_response(resp, body, url, method)
BadRequest: The server could not comply with the request since it is either malformed or otherwise incorrect. (HTTP 400)
ERROR (BadRequest): The server could not comply with the request since it is either malformed or otherwise incorrect. (HTTP 400)
Attempts to run tempest also fail.
Cinder has added version discovery in Liberty so Nova should go back
to using the 'volume' service type as the volumev2 service type will
go away and version discovery should take care of making sure the
right API version is used.
To manage notifications about this bug go to:
https://bugs.launchpad.net/python-novaclient/+bug/1454369/+subscriptions
References