Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

PlantUML Macro
typedot
@startuml
participant SO
participant SOL005_Adapter
participant SOL005_NBI
participant NS_LCMGR
participant Resource_Mgr
participant OOF
participant Catalog_DB_Adapter
participant ETSI_Catalog_Mgr
participant Inventory_DB_Adapter
participant AAI
participant SOL003_Adapter
participant VIM
participant VNFM

autonumber 

group Terminate NS
	SO -> SOL005_Adapter : Terminate NS
    SOL005_Adapter -> SOL005_NBI : Terminate NS
    SOL005_NBI -> NS_LCMGR : Terminate NS
    NS_LCMGR -> Resource_Mgr : Query all instances related to NS
    Resource_Mgr -> Inventory_DB_Adapter : Query all instances related to NS
    Inventory_DB_Adapter -> AAI : Query all instances related to NS
    AAI -> Inventory_DB_Adapter : Return all instances for NS
    Inventory_DB_Adapter -> Resource_Mgr : Return all instances for NS
    Resource_Mgr -> NS_LCMGR : Return all instances for NS
    NS_LCMGR --> NS_LCMGR : Start Delete NS instances
    NS_LCMGR -> Resource_Mgr : Request Homing Information\nfor Network Service
    Resource_Mgr -> OOF : Requests Homing Information\nfor Network Service
    OOF -> Resource_Mgr : Response with Homing Information\nfor Network Service
    Resource_Mgr --> Resource_Mgr : Persist Homing Information\nfor Network Service
loop Go thru each VNF
    NS_LCMGR -> SOL003_Adapter : Delete VNF
    SOL003_Adapter -> VNFM : Delete VNF
    VNFM -> SOL003_Adapter : Request Grant resource for deletion
    SOL003_Adapter -> NS_LCMGR : Request Grant resource for deletion
    VNFM -> SOL003_Adapter : Request Grant VNF resource
    SOL003_Adapter -> NS_LCMGR : Request Grant VNF resource
    NS_LCMGR -> Resource_Mgr : Request Homing Information 
    Resource_Mgr -> NS_LCMGR : Return with Homing Information\nfor the VNF
    NS_LCMGR --> NS_LCMGR : Make a Grant decision
    NS_LCMGR -> SOL003_Adapter : Return with a Grant decision
    SOL003_Adapter -> VNFM: Return with a Grant decision  
	VNFM --> VNFM : Delete Resources
    VNFM -> SOL003_Adapter : Notify changes of VNF/VDUs/CPs
    SOL003_Adapter -> NS_LCMGR : Notify changes of VNF/VDUs/CPs
    NS_LCMGR -> Resource_Mgr : Update records for Delete VNF/VDUs/CPs
    Resource_Mgr -> Inventory_DB_Adapter : Update records for Delete VNF/VDUs/CPs
    Inventory_DB_Adapter -> AAI : Update records for Delete VNF/VDUs/CPs
    AAI --> AAI : Update records for Delete VNF/VDUs/CPs
    AAI -> Inventory_DB_Adapter : Return with Delete VNF/VDUs/CPs
    Inventory_DB_Adapter -> Resource_Mgr : Return with Delete VNF/VDUs/CPs
    Resource_Mgr -> NS_LCMGR : Return with Delete VNF/VDUs/CPs
end
    NS_LCMGR -> Resource_Mgr : Request for Delete VLs (if needed)
    Resource_Mgr -> VIM : Request for Delete VLs
    VIM --> VIM : Delete VLs
    NS_LCMGR -> Resource_Mgr : Update records for Delete VLs
    Resource_Mgr -> Inventory_DB_Adapter : Update records for Delete VLs
    Inventory_DB_Adapter -> AAI : Update records for Delete VLs
    AAI --> AAI : Update records for Delete VLs
    AAI -> Inventory_DB_Adapter : Return with Delete VLs
    Inventory_DB_Adapter -> Resource_Mgr : Return with Delete VLs
    Resource_Mgr -> NS_LCMGR : Return with Delete VLs

    NS_LCMGR -> SOL005_NBI : Send\nnsLcmOperationOccurrenceNotification
    SOL005_NBI -> SOL005_Adapter : Send\nnsLcmOperationOccurrenceNotification
    SOL005_Adapter -> SO : Send\nnsLcmOperationOccurrenceNotification
end    



@enduml


Terminate NS

Image Added


Request

TerminateNsRequest

  • terminateTime

Response

201 Accepted

NsLcmOperationOccurrenceNotification (Start/Processing/Completed)


Design

  • Get an ns_inst_d, job_id and request_data from the parameters
  • if there no matching ns_inst_id from the NFVO_NSINT database table, consider there is nothing to terminate, and return
  • set job status as "Starting terminate..."
  • update the ns_inst_id row from the NFVO_NSINST database table with the status = TERMINATING
  • cancel SFC list
    • get sfc inst array
    • for each sfc inst
      • DELETE /api/nslcm/v1/ns/sfcs/{instId}
  • cancel VNF list
    • get vnf inst list array from NFVO_NFINST
      • for each vnf inst
        • delete_vnf (nf_instid)
          • POST /api/nslcm/v1/ns/terminateVnf/{instId}
  • cancel VL list
    • get VL Inst array
    • for each VL inst
      • DELETE /api/nslcm/v1/ns/vls/{instId}
  • cancel PNF list
    • get pnf inst array
    • for each pnf inst 
      • DELETE /api/nslcm/v1/pnfs/{instId}
  • modify the ns_inst_id row state from the NFVO_NSINST database table
  • modify NFVO_NSINST status = NOT_INSTANTIATED
  • set job status = NS terminate ends
  • Update NsLcmOpOCC to COMPLETED
  • Send nsLcmOperationOccurrenceNotification


Delete NS


Image Added


Request

  • No; just parameter nsInstanceId


Response

  • 204 No Content

Notification

  • Send NsIdentifierDeletionNotification


Design

  • get ns_inst_id
  • delete ns instance in AAI
    • get ns_instances from NFVO_NSINST database table
    • invoke delete_ns_aai with global_customer_id, service_type, ns_inst_id, resource_version
      • formulate the resource url with parameters
      • call_aaI (resource, "DELETE")
  • delete ns_inst_id row from the NFVO_NSINST database table
  • delete ns_inst_id row from the NFVO_INPutParamMapping database table
  • delete ns_inst_id row from the DefPkgMapping database table
  • delete ns_inst_id row from the ServiceBaseInfo database table
  • return 204 No Content
  • Send NsIdentifierDeletionNotification