Work in progress
Goal
- Migrate PNF PNP workflow to Building Blocks (BBs).
- Include newly created BBs in Service-Macro-Create flow.
By PNF PNP workflow we understand 2 BPMNs:
- CreateAndActivatePnfResource
- ConfigurePnfResource
Both included in CreateVcpeResCustService_simplified BPMN
Proposed building blocks
AssignPnfBB
- Responsibility:
- Creates PNF entry in AAI
- Makes a link in AAI between Service entry and PNF entry
- Currently implemented in CreateAndActivatePnfResource.bpmn
- Things to consider:
- In current implementation connecting PNF entry in AAI with service entry is done at the end of CreateAndActivatePnfResource (after the "PNF ready" event is received)
WaitForPnfReadyBB
- Responsibility:
- Waits for "PNF ready" event sent from PRH to DMaaP
- Currently implemented in CreateAndActivatePnfResource.bpmn
- Things to consider:
- BBS-related parameters stored in AAI?
- Make new BBs generic enough (i.e. wait for an event sent to DMaaP) that they could be reused in other flows (request from Seshu)
ConfigAssignPnfBB
- Responsibility:
- Runs config assign via CDS
- Currently implemented in ConfigurePnfResource.bpmn
- Things to consider:
- New approach to calling CDS/controllers - ControllerExecutionBB/actor in SDC model (Henry Xie, see https://wiki.onap.org/display/DW/SO+Weekly+Meeting+2019-12-4)
- Service decompositioon should handle SkipPostInstantiationConfiguration
ConfigDeployPnfBB
- Responsibility:
- Runs config deploy via CDS
- Currently implemented in ConfigurePnfResource.bpmn
- Things to consider:
- New approach to calling CDS/controllers - ControllerExecutionBB/actor in SDC model (Henry Xie, see https://wiki.onap.org/display/DW/SO+Weekly+Meeting+2019-12-4)
- Service decompositioon should handle SkipPostInstantiationConfiguration
ActivatePnfBB
- Responsibility:
- Sets PNF orchestration status in AAI as Active
Other considerations
- Are all required PNF parameters included in GeneralBuildingBlock->ServiceInstance→Pnf?
- Currently those are:
- pnf-id
- pnf-name
- role
- orchestration-status
- cloud-region
- Currently AAI schema (aai_schema_v19.xsd) for PNF contains:
- Fields: pnf-name, pnf-name2, selflink, pnf-name2-source, pnf-id, equip-type, equip-vendor, equip-model, management-option, orchestration-status, ipaddress-v4-oam, sw-version, in-maint, frame-id, serial-number, ipaddress-v4-loopback-0, ipaddress-v6-loopback-0, ipaddress-v4-aim, ipaddress-v6-aim, ipaddress-v6-oam, inv-status, resource-version, prov-status, nf-role, admin-status, operational-status, model-customization-id, model-invariant-id, model-version-id (from SO cataloge), pnf-ipv4-address, pnf-ipv6-address
- Sub-structures: software-versions, relationship-list, p-interfaces, lag-interfaces, vrfs
- BBInputSetup implementation does not mention PNF at all - is it even initialized in GeneralBuildingBlock?
- PNF ip is resolved by CDS by PNF ID (it should be in AAI) - it's populated by PRH
- Currently those are:
- How to include new BBs in Service-Macro-Create flow?
- Where to put new BBs in the flow sequence?
- Service decomposition in WorkflowActionBB may not unserstand PNFs (Retrieve BB Execution List)
- Service decompositioon should handle SkipPostInstantiationConfiguration
- PNF orchestration status changes in AAI - which states should be assigned in which steps of the workflow
- Should we have ActivatePnfBB?
- PNF SW upgrade (Oskar Malm)
- PNF should be active - PNP is finished
- new Upgrade flow will be created (BBs vs traditional considered)
- 5G NRM Configuration - plan for new BB which invokes configuration via CDS of NRM resource(?) (Yaoguang Wang, see https://wiki.onap.org/display/DW/SO+Weekly+Meeting+2019-12-4)
- Make new BBs generic enough that they could be reused in other flows (request from Seshu)
- Service-Macro-Delete
- Should we delete PNF resource from AAI on service deletion?
- We plan to leave it. What orchestration status should it get? Inactive?
- Should we delete PNF resource from AAI on service deletion?
Proposed sequence in Service-Macro-Create flow
- AssignServiceInstanceBB
- CreateNetworkCollectionBB
- AssignNetworkBB
- AssignVnfBB
- AssignVolumeGroupBB
- AssignVfModuleBB
- AssignPnfBB
- WaitForPnfReadyBB
- ActivatePnfBB
- CreateNetworkBB
- ActivateNetworkBB
- CreateVolumeGroupBB
- ActivateVolumeGroupBB
- CreateVfModuleBB
- ActivateVfModuleBB
- ActivateVnfBB
- ActivateNetworkCollectionBB
- ActivateServiceInstanceBB