When I use heat to deploy a simple vm with volume in a TripleO deployed cloud, the stack always failed.
The following error was reported in cinder-api.log:
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.504 7010 INFO cinder.api.openstack.wsgi [req-cb5117dd-3a87-46be-a593-dd529e633a1d b88aaf5949a94ebc9ad587838941ab48 1fe5c3f342834f56b3823abaad1e655f - - -] GET http://192.0.2.2:8776/v2/1fe5c3f342834f56b3823abaad1e655f/volumes/12e377ca-3d9e-442c-aa97-cb22de43dbcd
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.505 7010 DEBUG cinder.api.openstack.wsgi [req-cb5117dd-3a87-46be-a593-dd529e633a1d b88aaf5949a94ebc9ad587838941ab48 1fe5c3f342834f56b3823abaad1e655f - - -] Empty body provided in request get_body /opt/stack/venvs/cinder/local/lib/python2.7/site-packages/cinder/api/openstack/wsgi.py:869
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 ERROR cinder.api.middleware.fault [req-b17f56f5-9b4f-4f4c-97ea-4db5ad631755 b88aaf5949a94ebc9ad587838941ab48 1fe5c3f342834f56b3823abaad1e655f - - -] Caught error: Remote error: RequiredOptError value required for option: lock_path
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: [u'Traceback (most recent call last):\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/messaging/rpc/dispatcher.py", line 134, in _dispatch_and_reply\n incoming.message))\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/messaging/rpc/dispatcher.py", line 177, in _dispatch\n return self._do_dispatch(endpoint, method, ctxt, args)\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/messaging/rpc/dispatcher.py", line 123, in _do_dispatch\n result = getattr(endpoint, method)(ctxt, **new_args)\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/osprofiler/profiler.py", line 105, in wrapper\n return f(*args, **kwargs)\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/cinder/volume/manager.py", line 734, in attach_volume\n return do_attach()\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/concurrency/lockutils.py", line 305, in inner\n do_log=False)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: :\n', u' File "/usr/lib/python2.7/contextlib.py", line 17, in __enter__\n return self.gen.next()\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/concurrency/lockutils.py", line 264, in lock\n ext_lock = external_lock(name, lock_file_prefix, lock_path)\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/concurrency/lockutils.py", line 204, in external_lock\n lock_file_path = _get_lock_path(name, lock_file_prefix, lock_path)\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/concurrency/lockutils.py", line 198, in _get_lock_path\n raise cfg.RequiredOptError(\'lock_path\')\n', u'RequiredOptError: value required for option: lock_path\n'].
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault Traceback (most recent call last):
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/cinder/api/middleware/fault.py", line 76, in __call__
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault return req.get_response(self.application)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/webob/request.py", line 1320, in send
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault application, catch_exc_info=False)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/webob/request.py", line 1284, in call_application
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault app_iter = application(self.environ, start_response)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/webob/dec.py", line 144, in __call__
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault return resp(environ, start_response)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/webob/dec.py", line 130, in __call__
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault resp = self.call_func(req, *args, **self.kwargs)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/webob/dec.py", line 195, in call_func
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault return self.func(req, *args, **kwargs)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/osprofiler/web.py", line 99, in __call__
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault return request.get_response(self.application)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/webob/request.py", line 1320, in send
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault application, catch_exc_info=False)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/webob/request.py", line 1284, in call_application
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault app_iter = application(self.environ, start_response)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/keystonemiddleware/auth_token.py", line 748, in __call__
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault return self._call_app(env, start_response)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/keystonemiddleware/auth_token.py", line 684, in _call_app
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault return self._app(env, _fake_start_response)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/webob/dec.py", line 144, in __call__
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault return resp(environ, start_response)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/webob/dec.py", line 144, in __call__
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault return resp(environ, start_response)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/routes/middleware.py", line 131, in __call__
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault response = self.app(environ, start_response)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/webob/dec.py", line 144, in __call__
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault return resp(environ, start_response)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/webob/dec.py", line 130, in __call__
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault resp = self.call_func(req, *args, **self.kwargs)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/webob/dec.py", line 195, in call_func
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault return self.func(req, *args, **kwargs)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/cinder/api/openstack/wsgi.py", line 977, in __call__
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault content_type, body, accept)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/cinder/api/openstack/wsgi.py", line 1025, in _process_stack
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault action_result = self.dispatch(meth, request, action_args)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/cinder/api/openstack/wsgi.py", line 1101, in dispatch
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault return method(req=request, **action_args)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/cinder/api/contrib/volume_actions.py", line 118, in _attach
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault instance_uuid, host_name, mountpoint, mode)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/cinder/volume/api.py", line 87, in wrapped
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault return func(self, context, target_obj, *args, **kwargs)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/cinder/volume/api.py", line 501, in attach
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault mode)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/cinder/volume/rpcapi.py", line 147, in attach_volume
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault mode=mode)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/messaging/rpc/client.py", line 152, in call
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault retry=self.retry)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/messaging/transport.py", line 90, in _send
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault timeout=timeout, retry=retry)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/messaging/_drivers/amqpdriver.py", line 408, in send
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault retry=retry)
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/messaging/_drivers/amqpdriver.py", line 399, in _send
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault raise result
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault RemoteError: Remote error: RequiredOptError value required for option: lock_path
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault [u'Traceback (most recent call last):\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/messaging/rpc/dispatcher.py", line 134, in _dispatch_and_reply\n incoming.message))\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/messaging/rpc/dispatcher.py", line 177, in _dispatch\n return self._do_dispatch(endpoint, method, ctxt, args)\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/messaging/rpc/dispatcher.py", line 123, in _do_dispatch\n result = getattr(endpoint, method)(ctxt, **new_args)\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/osprofiler/profiler.py", line 105, in wrapper\n return f(*args, **kwargs)\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/cinder/volume/manager.py", line 734, in attach_volume\n return do_attach()\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/c
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: oncurrency/lockutils.py", line 305, in inner\n do_log=False):\n', u' File "/usr/lib/python2.7/contextlib.py", line 17, in __enter__\n return self.gen.next()\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/concurrency/lockutils.py", line 264, in lock\n ext_lock = external_lock(name, lock_file_prefix, lock_path)\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/concurrency/lockutils.py", line 204, in external_lock\n lock_file_path = _get_lock_path(name, lock_file_prefix, lock_path)\n', u' File "/opt/stack/venvs/cinder/local/lib/python2.7/site-packages/oslo/concurrency/lockutils.py", line 198, in _get_lock_path\n raise cfg.RequiredOptError(\'lock_path\')\n', u'RequiredOptError: value required for option: lock_path\n'].
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.515 7007 TRACE cinder.api.middleware.fault
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.518 7007 INFO cinder.api.middleware.fault [req-b17f56f5-9b4f-4f4c-97ea-4db5ad631755 b88aaf5949a94ebc9ad587838941ab48 1fe5c3f342834f56b3823abaad1e655f - - -] http://192.0.2.2:8776/v1/1fe5c3f342834f56b3823abaad1e655f/volumes/12e377ca-3d9e-442c-aa97-cb22de43dbcd/action returned with HTTP 500
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.519 7007 INFO eventlet.wsgi.server [req-b17f56f5-9b4f-4f4c-97ea-4db5ad631755 b88aaf5949a94ebc9ad587838941ab48 1fe5c3f342834f56b3823abaad1e655f - - -] 192.0.2.4 - - [05/Dec/2014 02:49:44] "POST /v1/1fe5c3f342834f56b3823abaad1e655f/volumes/12e377ca-3d9e-442c-aa97-cb22de43dbcd/action HTTP/1.1" 500 401 0.223674
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.528 7007 INFO cinder.api.openstack.wsgi [req-bda4a54d-956f-430e-932b-e1f0b092a74d b88aaf5949a94ebc9ad587838941ab48 1fe5c3f342834f56b3823abaad1e655f - - -] POST http://192.0.2.2:8776/v1/1fe5c3f342834f56b3823abaad1e655f/volumes/12e377ca-3d9e-442c-aa97-cb22de43dbcd/action
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.529 7007 DEBUG cinder.api.openstack.wsgi [req-bda4a54d-956f-430e-932b-e1f0b092a74d b88aaf5949a94ebc9ad587838941ab48 1fe5c3f342834f56b3823abaad1e655f - - -] Action body: {"os-unreserve": null} get_method /opt/stack/venvs/cinder/local/lib/python2.7/site-packages/cinder/api/openstack/wsgi.py:1090
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.578 7007 INFO cinder.api.openstack.wsgi [req-bda4a54d-956f-430e-932b-e1f0b092a74d b88aaf5949a94ebc9ad587838941ab48 1fe5c3f342834f56b3823abaad1e655f - - -] http://192.0.2.2:8776/v1/1fe5c3f342834f56b3823abaad1e655f/volumes/12e377ca-3d9e-442c-aa97-cb22de43dbcd/action returned with HTTP 202
Dec 5 02:49:44 overcloud-controller0-2ykvpydz2e6c cinder-api: 2014-12-05 02:49:44.578 7007 INFO eventlet.wsgi.server
The OSLO_LOCK_PATH is not set when installing cinder from tripleo-image-elements/elements/cinder-api/install.d/cinder-source-install/73-cinder-api.
Another option is to set 'lock_path = /var/lock/cinder' in /etc/cinder/ cinder. conf [default] section as the official Ubuntu package does.