Table of Contents
Use Case
...
Epic | User Story | Description | In Frankfurt? | JIRA | Size | |||||||||||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
SOL003 Adapter Enhancement for Frankfurt | Epic: ETSI Alignment Support - SOL003 Adapter Enhancement for Frankfurt | Yes (partially) |
| |||||||||||||||||||||||||||||||||||
SOL003 Adapter NBI Enhancement | Expose the Adapter NBI to any SOL003 Adapter client in ONAP | YesNo |
| |||||||||||||||||||||||||||||||||||
|
| YesNo |
| |||||||||||||||||||||||||||||||||||
|
| YesNo |
| |||||||||||||||||||||||||||||||||||
|
| YesNo |
| |||||||||||||||||||||||||||||||||||
|
| YesNo |
| |||||||||||||||||||||||||||||||||||
|
| TBDNo | - | |||||||||||||||||||||||||||||||||||
|
| TBDNo | - | |||||||||||||||||||||||||||||||||||
|
| TBDNo | - | |||||||||||||||||||||||||||||||||||
SOL003 Adapter Package Management by leveraging ONAP-ETSI Catalog Manager | Support VNF Package Management interfaces between the SOL003 Adapter and SVNFM (SVNFM → SOL003 Adapter) by leveraging ONAP-ETSI Catalog Manager (SOL003 Adapter → ONAP-ETSI Catalog Mgr)
| Yes |
| |||||||||||||||||||||||||||||||||||
|
| Yes |
|
|
| Yes |
| |||||||||||||||||||||||||||||||
|
| Yes |
|
| Fetch VNF Package Artifacts
| |||||||||||||||||||||||||||||||||
|
| Yes | Jira Legacy | server | System Jira | serverId |
| Yes |
|
| Subscribe
| |||||||||||||||||||||||||||
|
| Yes |
|
|
| Yes |
| Yes |
|
| Terminate/Delete Subscription
| |||||||||||||||||||||||||||
|
| Yes |
| Yes |
| |||||||||||||||||||||||||||||||||
|
| Yes |
|
|
|
| ||||||||||||||||||||||||||||||||
|
| Yes |
| |||||||||||||||||||||||||||||||||||
|
| Yes |
| |||||||||||||||||||||||||||||||||||
|
| Yes |
| |||||||||||||||||||||||||||||||||||
| Grant Enhancement that supports HPA by leveraging OOF VNF Granting that supports HPA by leveraging OOF | Yes |
| SOL003 Adapter Enhancement for VNF Query | To invoke VNF Query | Yes
|
| No |
| |||||||||||||||||||||||||||||
SOL003 Adapter Enhancement for VNF Operation Status To invoke Operation StatusGrant Enhancement that supports HPA by leveraging OOF | VNF Granting that supports HPA by leveraging OOF | Yes |
| |||||||||||||||||||||||||||||||||||
SOL003 Adapter Enhancement for VNF ModifyQuery | To invoke VNF Modify | TBD | -Query | No |
| |||||||||||||||||||||||||||||||||
SOL003 Adapter Enhancement for VNF HealOperation Status | To invoke VNF Heal | TBD | -Operation Status | No |
| |||||||||||||||||||||||||||||||||
SOL003 Adapter Enhancement for VNF Scaling (Stretch goal)Modify | To invoke VNF Modify | No | - | |||||||||||||||||||||||||||||||||||
SOL003 Adapter Enhancement for VNF Heal | To invoke VNF Heal | No | - | |||||||||||||||||||||||||||||||||||
SOL003 Adapter Enhancement for VNF Scaling (Stretch goal) | to support Policy-based VNF Scaling support; Interface to DCAE for VES event | TBDNo | - | |||||||||||||||||||||||||||||||||||
Secured communication support between SOL003 Adapter and SVNFM | Secured communication between SOL003 Adapter and SVNFM | Yes (minimum) |
| |||||||||||||||||||||||||||||||||||
Authentication and authorization support between between SOL003 Adapter and SVNFM | Authentication and authorization support between between SOL003 Adapter and SVNFM | Yes (minimum) |
| |||||||||||||||||||||||||||||||||||
Preload using user_param (without UI changes) | Preload using user_param (without UI changes) | Yes |
| |||||||||||||||||||||||||||||||||||
SO BPPN Workflows & Java for SOL003 Operations | SO BPMN Workflows & Java for SOL003 Operations by leveraging the SOL003 Adapter NBIs | YesNo |
| |||||||||||||||||||||||||||||||||||
|
| YesNo |
| |||||||||||||||||||||||||||||||||||
|
| YesNo |
| |||||||||||||||||||||||||||||||||||
|
| YesNo |
| |||||||||||||||||||||||||||||||||||
|
| YesNo |
| |||||||||||||||||||||||||||||||||||
CSIT enhancement for testing SOL003 Adapter package management enhancement | CSIT enhancement for testing SOL003 Adapter package management enhancement | YesNo |
| |||||||||||||||||||||||||||||||||||
Documentation for SOL003 Adapter enhancement features | Documentation for SOL003 Adapter enhancement features | Yes |
|
SOL003 VNFM Adapter Architecture for Frankfurt
The diagram depicts SOL003 VNFM Adapter Architecture.
...
NO |
SOL003 VNFM Adapter Architecture for Frankfurt
The diagram depicts SOL003 VNFM Adapter Architecture.
Gliffy | ||||
---|---|---|---|---|
|
- VNFM Adapter SOL003 Adapter continues to be an SO microservice component, and exposes its NBI to any VNFM SOL003 Adapter client in ONAPVNFM
- SOL003 Adapter continues to be a SO microservice componentis registered to MSB.
- VNFM Adapter will be registered to MSB.
- a VNFM Adapter client (e.g., GNFC) will locate the VNFM Adapter through MSB. Interfaces are refactored to be
- generic (accessed by other ONAP/External components) - TBDthe VNFM Adapter Operator registers VNFM and VIM to ESR in AAI.
- SOL003 Adapter exposes its NBI to any SOL003 Adapter client in ONAP (not for Frankfurt)
- Interfaces will be refactored to be generic to allow access by other ONAP components.
- The NBI will be enhanced for additional SOL003 operation support.
- SDC distributes SDC CSAR packages including the SDC internal model and the vendor original SOL004 package is supported
- SO leverages ONAP-ETSI Catalog microservice for ETSI-based NS, VNF and PNF
- VNFM (VNF and PNF) and SOL007 (NS) packages – SOL007 is not for Frankfurts
- SO (SDC Controller) passes the SDC CSAR ID to ETSI Catalog Manager to invoke storage
- ETSI Catalog Manager queries for SDC CSAR with the SDC CSAR id & store SOL004/SOL007 package.
- SO (BPMN) and the SOL003 Adapter client locates SOL003 Adapter.
- SO (BPMN) and the SOL003 Adapter client invokes SOL003 Adapter.
- SOL003 Adapter retrieves VNF package from Catalog Manager.
- VNFM Adapter Client uses MSB to locate the VNFM Adapter
- VNFM Adapter locates a VNFM SOL003 Adapter gets available VNFM locations (endpoints) and gets VIM and VNF Info.
- SOL003 Adapter selects a VNFM, based on a better VNFM locating mechanism.
- VNFM SOL003 Adapter and SVNFM support additional SOL003 operations, possibly including modification for configurationVNFM supports SOL003 VNF LCM, granting and package management operations.
- SOL003 Adapter supports HPA-based Granting, leveraging OOF.
- SOL003 Adapter updates vServer, status and VNF association in AAI
- SOL003 Adapter and SVNFM support authentication and authorization
- AAF will be used for authentication and authorization
- But, vendor SVNFMs may use their own AA mechanism
- VNFM Adapter interfaces with OOF to support HPA-support granting (see the Granting enhancement section)
- For the integration testing, the VNFM Simulator in the CSIT container will be used.
- (AAF, and vendor AA mechanism) – partially for Frankfurt.
- For integration testing, the VNFM Simulator is used.
SOL003 Operations
The following SOL003 operations will be supported:
...
- Query/Reading VNF package information (VNFM → SOL003 Adapter)
SOL003 Adapter Package - Query VNF Package
- SOL003 Adapter provides the SOL003 Query/Reading VNF package services to the SVNFM.
- SVNFM requests for multiple VNF packages or an individual VNF package for the given vnfPkgId .to SOL003 Adapter
- GET .../vnf_packages, GET .../vnf_packages/{vnfPkgId}
- SOL003 Adapter queries for VNF packages or an individual VNF package to the ETSI Catalog Manager.
- GET /api/vnfpkgm/v1/vnf_packages, GET /api/vnfpkgm/v1/vnf_packages/{vnfPkgId}
- ETSI Catalog Manager returns VNF packages or an individual VNF package to the SOL003 Adapter
- SOL003 Adapter returns the VnfPkgInfo[] or VnfPkgInfo to the SVNFM
Precondition: one or more individual VNF package resources are created.
Postcondition: SVNFM receives VNF packages or an individual VNF package in form of VnfPkgInfo[] or VnfPkgInfo
...
- Reading VNFD of an on-boarded VNF package (VNFM → SOL003 Adapter → ETSI Catalog Manager)
SOL003 Adapter Package Management - Read VNFD
- SOL003 Adapter provides the SOL003 Reading VNFD service to SVNFM.
- SVNFM requests for a VNFD for the given vnfd SOL003 Adapter requests for a VNFD for to SOL003 Adapter
- GET .../vnf_packages/{vnfpkgid}/vnfd
- SOL003 Adapter requests for a VNFD for the given vnfd to ETSI Catalog Manager
- GET /api/vnfpkgm/v1/vnf_packages/{vnfPkgId}/vnfd
- ETSI Catalog Manager returns a zip file of VNF package including vnfdModel JSONDefinition directory to SOL003 Adapter
- SOL003 Adapter returns a Vnfd with the vnfdModel JSON zip file of VNF package Definition directory to SVNFM
Precondition: The VNF package is onboarded to the ONAP-ETSI Catalog Manager
Postcondition: SVNFM receives Vnfda Vnf package definition zip file
- Fetching an on-boarded VNF package (VNFM → SOL003 Adapter)
- SOL003 Adapter supports the whole package content fetch only.
- GET ...Support of the package_contents partial is a stretch goal in Frankfurt. The ETSI Catalog Manager supports fetching package_contents partial by setting the HTTP_RANGE in the request headers when the SOL003 Adapter wants to obtain a single range of bytes from the VNF package file.
- SVNFM sends a GET request for the VNF package content resource to the SOL003 Adapter.
- GET .../vnf_packages/{vnfPkgId}/package_content
- SOL003 Adapter sends a GET request for the VNF package content resource to the ETSI Catalog Manager
- GET .../vnf_pacakges/{vnfPkgId}/package_content or
- ETSI Catalog Manager API: GET /api/vnfpkgm/v1/vnf_packages/{vnfPkgId}/package_content (To be enhanced to make it as the SOL003 standard interface)content
- ETSI Catalog Manager returns a copy of the VNF package file in the payload body to SOL003 Adapter.
- SOL003 Adapter returns with a copy of the VNF package file in the payload body to SVNFM.
- SOL003 Adapter supports the whole package content fetch only.
...
- Fetching a VNF package artifact (VNFM → SOL003 Adapter)
- The SOL003 Adapter supports the whole content of the artifact only.
- The SVNFM sends a GET request for the Individual VNF package artifact to SOL003 Adapter.
- GET .../vnf_packages/{vnfPkgId}/artifacts/{artifactPath}
- The SOL003 Adapter sends a GET request for the individual VNF package artifact to the ETSI Catalog Manager
- GET .../vnf_packages/{vnfPkgId}/artifacts/{artifactPath} orETSI Catalog Manager API .../api/vnfpkgm/v1/vnf_packages/{vnfPkgId}/artifacts/{artifactPath} // to be enhanced.
- The ETSI Catalog Manager returns a copy of the applicable artifact files from the onboarded VNF package to the SOL003 Adapter.
- The SOL003 Adapter returns with a copy of the applicable artifact file from the onboarded VNF package to SVNFM.
...
SVNFM gets package subscription (PkgmSubscription)
<Sequence Diagram SVNFM → SOL003 Adapter>
<Sequence Diagram SOL003 Adapter → ETSI_Catalog_Manager>
- Query Subscription Info
- SVNFM re-synchronizes all or selected subscriptions after some errors in SVNFM or some exception handling.
- SVNFM sends a Query Subscription Info request to the SOL003 Adapter.
- GET .../subscriptions // for all subscriptions
- SOL003 Adapter returns package subscription lists in the form of PkgmSubscription[] in the payload
- or
- SVNFM sends a Query Subscription Info request for a selected subscription to the SOL003 Adapter
- GET .../subscriptions/{subscriptionId}
- SOL003 Adapter returns a selected package subscription to SVNFM.
...
Postcondition: SVNFM receives a notification
...
- Receiving notifications for the package management (ETSI Catalog Manager → SOL003 Adapter)
- The
...
- ETSI Catalog Manager team is working on the Notification API.
- Once the notification api is settled, the subscribed SOL003 Adapter will receive package notifications from the ETSI Catalog Manager.
- <Sequence Diagram: TBD>
Grant Request with Synchronous Response with HPA (VNFM → SOL003 Adapter)
The SOL003 Adapter acts as a NFVO and supports the Synchronous Grant operation. Hardware Platform capability requirements are downloaded as part of the VNFD data.
There are two methods to support HPA in SO:. In the Frankfurt release, only the Method 1 will be supported.
- Method 1: Use of Homing information that is made during the SO decompose processing.
- During SO decompose processing, SO calls OOF for collecting homing information for the service (which includes the VNFs).
- Call the OOF APIs to perform the optimize service/VNF homing and placement
- Use the existing homing workflows to pass hardware platform capability requirements to OOF
- See the following diagram for the component interaction.
...
- Method 2: If the above processing does not work for the vendor VNF HPA, OOF will be called from the SOL003 Adapter per VNF. The following describes the interactions between SOL003 Adapter and OOF.
- Note: current, OOF does NOT support the VNF Level Homing request. OOF API enhancement is under discussion. Otherwise, the method 1 (Service Level Homing) is used for Frankfurt . TBD. - Out of Frankfurt Release scope
- VNFM Adapter sends out homing requests to OOF (OSDF) containing resource info
- OOF (OSDF) pulls all the related homing constraints from Policy
- OOF (HAS) checks AAI database to pull region (flavor) information
- OOF (HAS) communicates with Multi-Cloud to check cloud capacity (vims which fulfill the requirements)
- OOF (OSDF) returns homing allocation solution to VNFM Adapter
- OOF collects information as following:
- Service and Resource Info, from: AAI
- HPA Flavors/Capabilities/Capacity Info, from: AAI
- Policy Models (Homing, PCI) from: Policy
- Infrastructure Metrics Info (capacity), from: MultiCloud
- Cloud Agnostic Intent Info, from: MultiCloud
- PCI configuration data (not yet a part of SDC model)
- SOL003 Adapter Homing Request to OOF
- <describe the homing request API and contract here>
...
- SOL003 Adapter sends a request for VNF LCM operation occurrence(s) to the SVNFM
- GET .../vnf_lcm_op_occs // multiple
- GET .../vnf_lcm_op_occs/{vnfLcmOpOccId} // single
- VNFM returns VNF LCM operation occurrence(s) to the SOL003 Adapter
- 200 OK (VnfLcmOpOcc[])
- 200 OK (VnfLcmOpOcc)
Precondition: SVNFM performed LCM operations
Postcondition: SOL003 Adapter receives VNF LCM operation occurrence(s)
Heal VNF (SOL003 Adapter → VNFM)
The SOL003 Adapter requests the Heal VNF operation. The following diagram depicts a sequence for the Heal VNF operation.
...
- 200 OK (VnfLcmOpOcc[])
- 200 OK (VnfLcmOpOcc)
Precondition: SVNFM performed LCM operations
Postcondition: SOL003 Adapter receives VNF LCM operation occurrence(s)
Heal VNF (SOL003 Adapter → VNFM)
The SOL003 Adapter requests the Heal VNF operation. The following diagram depicts a sequence for the Heal VNF operation.
Note: this is out of Frankfurt scope.
SO Workflows and Java Code (client) Enhancement
SO BPMN Workflows and associated Java code for SOL003 operations will be enhanced and created by leveraging the SOL003 Adapter NBIs.
Enhance Create/Instantiate Workflows & Associated Java Code
- Modify the existing workflow to separate Create and Instantiate tasks
- Invoke the modified SOL003 Adapter NBIs
Precondition: The generic VNF has been added in AAI. The VNF package has been distributed from SDC. The VNFM and VIM have been defined in AAI. VNFM simulator deployed as VNFM. SDNC preload completed through SDNC access site. Add the ETSI "Create_VNF" and "Terminate_VNF" building blocks to the "building_block_detail" table in MariaDB's "catalogdb". Edit the "orchestration_status_state_transition_directive" table in MariaDB's "catalogdb" to allow a service with "operationStatus" set to "CREATED" to allow a building block with a "TARGET_ACTION" of "ACTIVATE" to "CONTINUE".
Postcondition: Create and instantiate requests were correctly sent to the VNFM, the grant request from the VNFM was handled and reply sent to the VNFM and AAI was updated in accordance with the notifications received from the VNFM as a result of the VNF being instantiated.
Enhance Terminate/Delete Workflows & Associated Java Code
- Modify the existing workflow to separate Terminate and Delete tasks
- Invoke the modified SOL003 Adapter NBIs
Precondition: The VNF has been created via the VNFM adapter
Postcondition: Terminate and delete requests were correctly sent to the VNFM, the grant request from the VNFM was handled and reply sent to the VNFM and AAI was updated in accordance with the notifications received from the VNFM as a result of the VNF being terminated.
Create Query VNF Workflows & Associated Java Code
- Create a new workflow for Query VNF and associated Java code
- Invoke the modified SOL003 Adapter Query VNF NBI
Precondition: VNF is created previously
Postcondition: Query VNF workflow get VNF info
Create Get Operation Status Workflows & Associated Java code
- Create a new Get Operation Status Workflow & Associated Java code
- Invoke the modified SOL003 Adapter Get Operation Status NBI
- This operation could be used by the Instantiation and Termination of VNF; in this case, its workflow could be omitted
Precondition: VNF instantiation or terminate is started
Postcondition: the workflow or the SOL003 Adapter client gets the VnF operation status.
Authentication and Authorization for the SOL003 Adapter and the VNFM
...