← Back to team overview

openstack team mailing list archive

can't create LoadBalancer with heat

 

Hi stackers,

I am running devstack with heat enabled.
I was trying to create a new stack using WordPress_With_LB.template from github.
However, it failed and I got the following error in screen-h-eng.log

2013-07-05 10:00:13.998 26996 INFO heat.engine.resource [-] Validating LoadBalancer "LoadBalancer"
2013-07-05 10:00:14.129 26996 DEBUG heat.openstack.common.rpc.amqp [-] UNIQUE_ID is cb110b14dc064928a944f577ef96a06e. _add_unique_id /opt/stack/heat/heat/openstack/common/rpc/amqp.py:325
2013-07-05 10:00:14.130 26996 DEBUG heat.engine.scheduler [-] Task create_task from Stack "mystack" starting start /opt/stack/heat/heat/engine/scheduler.py:127
2013-07-05 10:00:14.130 26996 DEBUG heat.engine.scheduler [-] Task create_task from Stack "mystack" running step /opt/stack/heat/heat/engine/scheduler.py:160
2013-07-05 10:00:14.163 26996 DEBUG heat.engine.scheduler [-] Task resource_create starting start /opt/stack/heat/heat/engine/scheduler.py:127
2013-07-05 10:00:14.163 26996 INFO heat.engine.resource [-] creating NestedStack "DatabaseServer"
2013-07-05 10:00:14.163 26996 DEBUG heat.engine.scheduler [-] Task resource_create running step /opt/stack/heat/heat/engine/scheduler.py:160
2013-07-05 10:00:14.280 26996 INFO heat.common.urlfetch [-] Fetching data from https://raw.github.com/openstack/heat-templates/master/cfn/MySQL_Single_Instance.template
2013-07-05 10:00:14.337 26996 DEBUG heat.openstack.common.rpc.amqp [-] UNIQUE_ID is b1adf7d73f5544b5b9aecd16ab1db55f. _add_unique_id /opt/stack/heat/heat/openstack/common/rpc/amqp.py:325
2013-07-05 10:00:14.342 26996 DEBUG heat.openstack.common.rpc.amqp [-] received {u'_context_roles': [u'anotherrole', u'Member'], u'_msg_id': u'8884a3955e4b433785bf563ca16f671b', u'_context_password': u'supersecret', u'_context_auth_url': u'http://172.16.2.45:5000/v2.0', u'_context_aws_auth_uri': None, u'_unique_id': u'7d82fea1193748258569d3d91dc10b03', u'_reply_q': u'reply_284c45add90e4b52a6a5e5f6d7982cad', u'_context_aws_creds': None, u'args': {}, u'_context_tenant': u'demo', u'_context_auth_token': '<SANITIZED>', u'_context_is_admin': True, u'version': u'1.0', u'_context_tenant_id': u'd8983734739d48febde2d1f8fe2ac447', u'namespace': None, u'method': u'list_stacks', u'_context_username': u'demo'} _safe_log /opt/stack/heat/heat/openstack/common/rpc/common.py:298
2013-07-05 10:00:14.343 26996 DEBUG heat.openstack.common.rpc.amqp [-] unpacked context: {'username': u'demo', 'roles': [u'anotherrole', u'Member'], 'aws_auth_uri': None, 'tenant_id': u'd8983734739d48febde2d1f8fe2ac447', 'auth_token': '<SANITIZED>', 'auth_url': u'http://172.16.2.45:5000/v2.0', 'is_admin': True, 'password': u'supersecret', 'aws_creds': None, 'tenant': u'demo'} _safe_log /opt/stack/heat/heat/openstack/common/rpc/common.py:298
2013-07-05 10:00:14.351 26996 INFO requests.packages.urllib3.connectionpool [-] Starting new HTTP connection (1): 172.16.2.45
2013-07-05 10:00:14.456 26996 DEBUG requests.packages.urllib3.connectionpool [-] "POST /v2.0/tokens HTTP/1.1" 200 7667 _make_request /usr/local/lib/python2.7/dist-packages/requests/packages/urllib3/connectionpool.py:289
2013-07-05 10:00:14.457 26996 INFO requests.packages.urllib3.connectionpool [-] Starting new HTTP connection (1): 172.16.2.45
2013-07-05 10:00:14.474 26996 DEBUG requests.packages.urllib3.connectionpool [-] "GET /v2/d8983734739d48febde2d1f8fe2ac447/os-availability-zone HTTP/1.1" 200 97 _make_request /usr/local/lib/python2.7/dist-packages/requests/packages/urllib3/connectionpool.py:289
2013-07-05 10:00:14.478 26996 DEBUG heat.openstack.common.rpc.amqp [-] UNIQUE_ID is 70b9a0126c5145b7955d9175928d75d3. _add_unique_id /opt/stack/heat/heat/openstack/common/rpc/amqp.py:325
2013-07-05 10:00:14.479 26996 DEBUG heat.openstack.common.rpc.amqp [-] UNIQUE_ID is 319e42f2a5224c5eba7ccc3e1f2170f1. _add_unique_id /opt/stack/heat/heat/openstack/common/rpc/amqp.py:325
2013-07-05 10:00:15.113 26996 DEBUG heat.engine.scheduler [-] Task create_task from Stack "mystack-DatabaseServer-ruht2gxmpi4h" starting start /opt/stack/heat/heat/engine/scheduler.py:127
2013-07-05 10:00:15.113 26996 DEBUG heat.engine.scheduler [-] Task create_task from Stack "mystack-DatabaseServer-ruht2gxmpi4h" running step /opt/stack/heat/heat/engine/scheduler.py:160
2013-07-05 10:00:15.147 26996 DEBUG heat.engine.scheduler [-] Task resource_create starting start /opt/stack/heat/heat/engine/scheduler.py:127
2013-07-05 10:00:15.147 26996 INFO heat.engine.resource [-] creating WaitConditionHandle "MySqlWaitHandle"
2013-07-05 10:00:15.147 26996 DEBUG heat.engine.scheduler [-] Task resource_create running step /opt/stack/heat/heat/engine/scheduler.py:160
2013-07-05 10:00:15.264 26996 INFO requests.packages.urllib3.connectionpool [-] Starting new HTTP connection (1): 172.16.2.45
2013-07-05 10:00:15.373 26996 DEBUG requests.packages.urllib3.connectionpool [-] "POST /v2.0/tokens HTTP/1.1" 200 7667 _make_request /usr/local/lib/python2.7/dist-packages/requests/packages/urllib3/connectionpool.py:289
2013-07-05 10:00:15.375 26996 INFO requests.packages.urllib3.connectionpool [-] Starting new HTTP connection (1): 172.16.2.45
2013-07-05 10:00:15.449 26996 DEBUG requests.packages.urllib3.connectionpool [-] "POST /v2.0/tokens HTTP/1.1" 200 7667 _make_request /usr/local/lib/python2.7/dist-packages/requests/packages/urllib3/connectionpool.py:289
2013-07-05 10:00:15.450 26996 INFO requests.packages.urllib3.connectionpool [-] Starting new HTTP connection (1): 172.16.2.45
2013-07-05 10:00:15.455 26996 DEBUG requests.packages.urllib3.connectionpool [-] "POST /v2.0/users HTTP/1.1" 403 132 _make_request /usr/local/lib/python2.7/dist-packages/requests/packages/urllib3/connectionpool.py:289
2013-07-05 10:00:15.455 26996 DEBUG keystoneclient.client [-] Request returned failure status: 403 request /opt/stack/python-keystoneclient/keystoneclient/client.py:554
2013-07-05 10:00:15.455 26996 ERROR heat.engine.resource [-] CREATE : WaitConditionHandle "MySqlWaitHandle"
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource Traceback (most recent call last):
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource   File "/opt/stack/heat/heat/engine/resource.py", line 347, in _do_action
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource     handle_data = handle()
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource   File "/opt/stack/heat/heat/engine/resources/wait_condition.py", line 78, in handle_create
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource     self.physical_resource_name())
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource   File "/opt/stack/heat/heat/common/heat_keystoneclient.py", line 74, in create_stack_user
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource     enabled=True)
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource   File "/opt/stack/python-keystoneclient/keystoneclient/v2_0/users.py", line 108, in create
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource     return self._create('/users', params, "user")
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource   File "/opt/stack/python-keystoneclient/keystoneclient/base.py", line 89, in _create
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource     resp, body = self.api.post(url, body=body)
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource   File "/opt/stack/python-keystoneclient/keystoneclient/client.py", line 593, in post
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource     return self._cs_request(url, 'POST', **kwargs)
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource   File "/opt/stack/python-keystoneclient/keystoneclient/client.py", line 583, in _cs_request
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource     **kwargs)
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource   File "/opt/stack/python-keystoneclient/keystoneclient/client.py", line 555, in request
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource     raise exceptions.from_response(resp, body or resp.text)
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource Forbidden: You are not authorized to perform the requested action, admin_required. (HTTP 403)
2013-07-05 10:00:15.455 26996 TRACE heat.engine.resource
2013-07-05 10:00:15.556 26996 DEBUG heat.engine.scheduler [-] Task resource_create cancelled cancel /opt/stack/heat/heat/engine/scheduler.py:183
2013-07-05 10:00:15.590 26996 DEBUG heat.engine.scheduler [-] Task create_task from Stack "mystack-DatabaseServer-ruht2gxmpi4h" complete step /opt/stack/heat/heat/engine/scheduler.py:166
2013-07-05 10:00:15.590 26996 DEBUG heat.engine.scheduler [-] Task create_task from Stack "mystack" running step /opt/stack/heat/heat/engine/scheduler.py:160
2013-07-05 10:00:15.590 26996 DEBUG heat.engine.scheduler [-] Task resource_create running step /opt/stack/heat/heat/engine/scheduler.py:160
2013-07-05 10:00:15.590 26996 ERROR heat.engine.resource [-] CREATE : NestedStack "DatabaseServer"
2013-07-05 10:00:15.590 26996 TRACE heat.engine.resource Traceback (most recent call last):
2013-07-05 10:00:15.590 26996 TRACE heat.engine.resource   File "/opt/stack/heat/heat/engine/resource.py", line 350, in _do_action
2013-07-05 10:00:15.590 26996 TRACE heat.engine.resource     while not check(handle_data):
2013-07-05 10:00:15.590 26996 TRACE heat.engine.resource   File "/opt/stack/heat/heat/engine/stack_resource.py", line 90, in check_create_complete
2013-07-05 10:00:15.590 26996 TRACE heat.engine.resource     raise exception.Error(self._nested.state_description)
2013-07-05 10:00:15.590 26996 TRACE heat.engine.resource AttributeError: 'Stack' object has no attribute 'state_description'
2013-07-05 10:00:15.590 26996 TRACE heat.engine.resource
2013-07-05 10:00:15.690 26996 DEBUG heat.engine.scheduler [-] Task resource_create cancelled cancel /opt/stack/heat/heat/engine/scheduler.py:183
2013-07-05 10:00:15.724 26996 DEBUG heat.engine.scheduler [-] Task create_task from Stack "mystack" complete step /opt/stack/heat/heat/engine/scheduler.py:166
2013-07-05 10:00:15.724 26996 WARNING heat.engine.service [-] Stack create failed, status FAILED

Seems I can't create a WaitConditionHandle. Do I miss anything here?
Thanks in advance.

Regards,
Shunde Zhang