port resource residue
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
OpenStack Heat |
Fix Released
|
Undecided
|
huangtianhua |
Bug Description
1. create a stack with AWS::EC2::Instance resource and specified the "SubnetId"
2. heat will call neutronclient to create a port in _build_nics() function
3. then heat call novaclient to create a server, it was failed in nova-scheduling, and the stack is CREATE_FAILED
4. delete the stack, heat won't to delete the port, just to call novaclient to delete the server, and if server creation is failed in scheduling, nova can't delete the port.
5. And also see the nova patch https:/
May be there are other resources which be implicit-created by heat, but heat won't delete them.
Is there any good way to solve?
Changed in heat: | |
assignee: | nobody → huangtianhua (huangtianhua) |
Changed in heat: | |
milestone: | none → juno-3 |
status: | Fix Committed → Fix Released |
Changed in heat: | |
milestone: | juno-3 → 2014.2 |
On 19/08/14 15:59, huangtianhua wrote: /review. openstack. org/#/c/ 77043/, it will not delete the port if the port was passed in via the api.
> Public bug reported:
>
> 1. create a stack with AWS::EC2::Instance resource and specified the "SubnetId"
> 2. heat will call neutronclient to create a port in _build_nics() function
> 3. then heat call novaclient to create a server, it was failed in nova-scheduling, and the stack is CREATE_FAILED
> 4. delete the stack, heat won't to delete the port, just to call novaclient to delete the server, and if server creation is failed in scheduling, nova can't delete the port.
Suggested fix for this is to store the created port ID in the instance
resource_data, then delete the port on resource delete.
> 5. And also see the nova patch https:/
That is a separate issue caused by nova/neutron interaction, but it does
affect heat.
> May be there are other resources which be implicit-created by heat, but heat won't delete them.
> Is there any good way to solve?
We generally do a good job of deleting implicitly created resources.