Revision history [back]

click to hide/show revision 1
initial version

After some investigation this is what I have learned:

  1. I had the curl call almost right. I realized that I had omitted the OpenStack-API-Version header. The following curl call would work:

    curl -s -H "Content-Type: application/json" -H "X-Auth-Token: <redacted>" -H "OpenStack-API-Version: volume 3.42" http://<redacted>:8776/v3/a17f01bc783445f5b352209283f4cc02/volumes/006e4fcc-aa4d-414b-981c-5b2360d30202/action -d '{"os-extend":{"new_size":2}}'
  2. There is in fact an openstack cli tool. It is called like this:

    OS_VOLUME_API_VERSION=3.42 cinder extend 006e4fcc-aa4d-414b-981c-5b2360d30202 2

    Again, specifying the API version is neccessary here in order to enable extending of in-use volumes. I still haven't found anything to expose this functionality in Horizon.

  3. This almost works on my packstack setup, but I get the following in my /var/log/cinder/volume.log:

    2019-02-11 19:38:10.807 10278 ERROR cinder.compute.nova [req-7c27e5dc-d7eb-4290-a48f-290fe1964e08 2b2c9c98ce6948e28ba007722a2f9588 a17f01bc783445f5b352209283f4cc02 - default default] Failed to notify nova on events: [{'tag': u'006e4fcc-aa4d-414b-981c-5b2360d30202', 'name': 'volume-extended', 'server_uuid': u'1dcd32a3-41d0-443d-abd4-9e054cb1844d'}].: Forbidden: Policy doesn't allow os_compute_api:os-server-external-events:create to be performed. (HTTP 403) (Request-ID: req-dec890fe-9c2a-45a3-885c-3f0d3acd369e)

    Searching for this, I found a Red Hat bug report:

    It seems on my system, I'm missing an admin connection between nova and cinder. This has been fixed in TripleO, but likely not in packstack deployments. However, fixing that's a question for a different question. :-)