NS status is active but member vnfs are in error
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
tacker |
Confirmed
|
Medium
|
Unassigned |
Bug Description
gongysh@
+------
| id | name | mgmt_url | status | vim_id | vnfd_id |
+------
| 90c7f984-
| 0f21c74e28e6 | -4999-a724-
| | f1fe3de4-
| | 528e73b06132 | | | | |
| afd49fa0-02ab-49aa- | create_
| 90d4-c350fd883c16 | f4b7-40f3-
| | 358_f1fe3de4-
| | 525-528e73b06132 | | | | |
+------
gongysh@
+------
| id | name | nsd_id | mgmt_urls | status |
+------
| 19e44435-
+------
Changed in tacker: | |
status: | New → Confirmed |
Changed in tacker: | |
importance: | Undecided → Medium |
milestone: | none → queens-3 |
Should check the vnfs' status after ns_create in ns_db.create_ ns_post, like this:
vnf_status = [] vnfd_dict) : 'instances' ]:
if 'mgmt_url_' + instance in output:
mgmt_ urls[instance] = ast.literal_eval(
output[ 'mgmt_url_ ' + instance].strip())
vnf_ ids[instance] = output['vnf_id_' + instance]
vnf_ status. append( output[ "status_ " + instance])
mgmt_ urls = str(mgmt_urls)
if len(output) > 0:
for vnfd_name, vnfd_val in iteritems(
for instance in vnfd_val[
vnf_ids = str(vnf_ids)
if not vnf_ids:
mgmt_ urls = None
status = constants.ERROR
vnf_ids = None
if not mgmt_urls:
status = constants.ACTIVE if mistral_obj.state == 'SUCCESS' \
else constants.ERROR
if vnf_status:
if constants.ERROR in vnf_status:
But how to process the vnf's status which is PENDING_CREATE should be more complex, we think need a notification from vnfm to nfvo after the vnf's ACTIVE.