Port is removed in instance delete and causes instance start failure with HARestarter
Using grizzly version from heta/opensatck.
Ports on template also removed when instance is deleted, is that normal? I have HARestarter policy and few alarms for instances in the template and when I issue heat-wacth command from command line:
heat-watch set-state teststack.
Related instance is deleted ok, but it will also delete Port from with instance is dependent on. That will cause Instance start to fail as Port is not found.
See below my template and heat-engine.log and nova-api.log.
Template:
{
"AWSTemplate
"Description" : "Test template.",
"Parameters" : {
"KeyName" : {
"Type" : "String"
},
"InstanceType" : {
"Type" : "String",
"Default" : "m1.small",
},
"DemoDistr
"Default": "DemoV1",
"Type": "String",
}
},
"Mappings" : {
"AWSInstan
"m1.small" : { "Arch" : "64" }
},
"DistroArc
"DemoV1" : { "64" : "ubuntu1304-
}
},
"Resources" : {
"private-
"Type": "OS::Quantum::Net"
},
"public-
"Type": "OS::Quantum::Net",
"Properties": {
"value_specs": {"router:external" : true}
}
},
"private-
"Type": "OS::Quantum:
"DependsOn" : "private-network",
"Properties": {
"cidr": "10.0.0.0/24",
"gateway_ip": "10.0.0.1",
"allocation_
}
},
"public-subnet": {
"Type": "OS::Quantum:
"DependsOn" : "public-network",
"Properties": {
"cidr": "192.168.0.0/24",
"gateway_ip": "192.168.0.1",
"allocation_
}
},
"private-port": {
"Type": "OS::Quantum:
"DependsOn" : "private-subnet",
"Properties": {
}
},
"private-
"Type": "OS::Quantum:
"DependsOn" : "private-subnet",
"Properties": {
}
},
"router": {
"Type": "OS::Quantum:
"DependsOn" : "public-subnet"
},
"router_
"Type": "OS::Quantum:
"DependsOn" : "router",
}
},
"router_
"Type": "OS::Quantum:
"DependsOn" : "router_interface",
"Properties": {
}
},
"testInst1": {
"Type": "AWS::EC2:
"Metadata" : {
}
},
"ImageId" : { "Fn::FindInMap" : [ "DistroArch2AMI", { "Ref" : "DemoDistribution" },
"KeyName" : { "Ref" : "KeyName" },
"NetworkInter
}
},
"testInst2": {
"Type": "AWS::EC2:
"Metadata" : {
}
},
"ImageId" : { "Fn::FindInMap" : [ "DistroArch2AMI", { "Ref" : "DemoDistribution" },
"KeyName" : { "Ref" : "KeyName" },
"NetworkInter
}
},
"Test_
"Type" : "OS::Heat:
"Properties" : {
}
},
"Test_
"Type" : "OS::Heat:
"Properties" : {
}
},
"AllFailure
"Type": "AWS::CloudWatc
"Properties": {
"Period": "300",
}
},
"Test_
"Type": "AWS::CloudWatc
"Properties": {
"Period": "300",
}
},
"Test_
"Type": "AWS::CloudWatc
"Properties": {
"Period": "300",
}
}
}
}
heat-engine.log:
2013-07-01 19:57:14.279 12829 INFO heat.engine.
2013-07-01 19:57:14.360 12829 DEBUG heat.engine.
2013-07-01 19:57:14.365 12829 INFO heat.engine.
2013-07-01 19:57:14.365 12829 INFO heat.engine.
2013-07-01 19:57:14.701 12829 INFO heat.engine.
2013-07-01 19:57:15.035 12829 INFO heat.engine.
2013-07-01 19:57:15.370 12829 INFO heat.engine.
2013-07-01 19:57:17.515 12829 DEBUG heat.engine.service [-] Periodic watcher task for stack 0d2f4fe7-
2013-07-01 19:57:20.002 12829 INFO heat.engine.
2013-07-01 19:57:20.484 12829 ERROR heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.484 12829 TRACE heat.engine.
2013-07-01 19:57:20.646 12829 INFO heat.engine.
2013-07-01 19:57:20.896 12829 INFO heat.engine.
2013-07-01 19:57:21.189 12829 INFO heat.engine.
2013-07-01 19:58:17.544 12829 DEBUG heat.engine.service [-] Periodic watcher task for stack 0d2f4fe7-
nova-api.log:
2013-07-01 19:57:20.479 ERROR nova.api.openstack [req-624845c9-
etwork None
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack Traceback (most recent call last):
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack return req.get_
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack application, catch_exc_
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack app_iter = application(
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack return resp(environ, start_response)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack return self.app(env, start_response)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack return resp(environ, start_response)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack return resp(environ, start_response)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack return resp(environ, start_response)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/local/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack response = self.app(environ, start_response)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack return resp(environ, start_response)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack resp = self.call_func(req, *args, **self.kwargs)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack return self.func(req, *args, **kwargs)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack content_type, body, accept)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack action_result = self.dispatch(meth, request, action_args)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack return method(req=request, **action_args)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack scheduler_
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack rv = f(*args, **kwargs)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack scheduler_
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack reservation_id, scheduler_hints)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack QUOTAS.
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack self.gen.next()
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack self._check_
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack self.network_
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack port = quantumv2.
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack ret = self.function(
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack return self.get(
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack headers=headers, params=params)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack headers=headers, params=params)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack self._handle_
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack exception_
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack File "/usr/lib/
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack message=error_dict)
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack QuantumClientEx
2013-07-01 19:57:20.479 7044 TRACE nova.api.openstack
2013-07-01 19:57:20.482 INFO nova.api.openstack [req-624845c9-
Question information
- Language:
- English Edit question
- Status:
- Answered
- Assignee:
- No assignee Edit question
- Last query:
- Last reply:
Can you help with this problem?
Provide an answer of your own, or ask Samuli Silvius for more information if necessary.