Comment 3 for bug 1327406

Revision history for this message
Mike Spreitzer (mike-spreitzer) wrote : Re: OS::Heat::AutoScalingGroup scale up fails to find networks

Let me take it from the top.

Use DevStack to install OpenStack. Use nova networking, not Neutron. Include the line

IMAGE_URLS+=,http://cloud.fedoraproject.org/fedora-20.x86_64.qcow2

in your localrc.

This will produce a system with one network; in the DB this network's "label" is "private" and its project_id is null. There will be an image named fedora-20.x86_64.

Import a key pair, and adjust the default security group to your liking.

Git clone the heat-templates project, then `cd` into it. Then

cd hot
export OS_USERNAME=admin
export OS_PASSWORD=${your chosen admin password}
export HOST_IP=${IPv4 addr of host}
export OS_AUTH_URL=http://${HOST_IP}:5000/v2.0/
export OS_TENANT_NAME=admin
heat stack-create -f asg_sampler.yaml -P key_name=${your kepair} ${some stack name}

For fun (and, possibly, relevant edification) you might compare the output of these three commands:

nova network-show private
nova net private
nova net ${UUID of that network}

I find that `nova network-show private` finds the network and prints a lot of information about it, while `nova net private` fails to find the network; when given the network's UUID, `nova net` find the network and prints just a little information about it.

Once the stack is created, look at its outputs. You will find one named "old_up_url", whose value is a long URL. Send a POST command to that. E.g.,

curl -X POST "${the value of old_up_url}"

You will find that this succeeds.

You will find another stack output named "new_up_url". POST to it. E.g.,

curl -X POST "${the value of new_up_url}"

Curl will report something like the following.

<ErrorResponse><Error><Message>The request processing has failed due to an internal error:Remote error: ResourceFailure Error: Nested stack UPDATE failed: Error: Resource CREATE failed: NotFound: No Network matching {'label': u'private'}. (HTTP 404)
[u'Traceback (most recent call last):\n', u' File "/opt/stack/heat/heat/engine/service.py", line 61, in wrapped\n return func(self, ctx, *args, **kwargs)\n', u' File "/opt/stack/heat/heat/engine/service.py", line 911, in resource_signal\n stack[resource_name].signal(details)\n', u' File "/opt/stack/heat/heat/engine/resource.py", line 879, in signal\n raise failure\n', u"ResourceFailure: Error: Nested stack UPDATE failed: Error: Resource CREATE failed: NotFound: No Network matching {'label': u'private'}. (HTTP 404)\n"].</Message><Code>InternalFailure</Code><Type>Server</Type></Error></ErrorResponse>