ETSI Catalog Management (ETSI Catalog Manger)- Guilin
Use Case
- ONAP-ETSI Catalog Manager Use Case
- ONAP-ETSI Catalog API Manager
- ONAP-ETSI Catalog Database
- SO ETSI Catalog Management
- SDC - SO SDC Controller - ONAP-ETSI Catalog Manager
- SOL003/SOL005 Adapter Interaction with ONAP-ETSI Catalog Manager
Feature Descriptions
Feature | Description |
---|---|
ONAP-ETSI Catalog Manager APIs | ONAP-ETSI Catalog Manager supports APIs for SO and SOL003/SOL005 Adapters |
SO ETSI Catalog DB Support for NS, PNF and VNF packages | SO retrieves ETSI packages from SDC and stores the packages to ONAP-ETSI Catalog DB thru ONAP-ETSI Catalog APIs
|
ONAP-ETSI Catalog Manger - SOL003/SOL005 Adapters | SOL003/SOL005 Adapters use ONAP-ETSI Catalog Manager APIs to retrieve ETSI packages |
Epic and User Story
Epic | User Story | Description | In Guilin Plan? | JIRA |
---|---|---|---|---|
Support SDC-ETSI Catalog Manager Interface | Support the SDC-ETSI Catalog Manager interfaces
| Yes | ||
ETSI Catalog Manager subscribes for SDC package notification through DMaaP | ETSI Catalog Manager subscribes for SDC package notification through DMaaP | Yes | ||
ETSI Catalog Manager queries SDC for ETSI packages (SOL004 and SOL007) and stores the packages | ETSI Catalog Managers queries SDC for ETSI packages (SOL004 and SOL007) from the ETSI_PACKAGE directory and stores the packages | Yes | ||
ETSI Catalog Manager supports SOL005-compliant package management APIs for the SOL005 Adapter | ETSI Catalog Manager supports SOL005-compliant package management APIs for the SOL005 Adapter | No | postponed to a future release |
Direct SDC-ETSI Catalog Manager Interactions
The following diagram depicts the direct SDC-ETSI Catalog Manager Interactions.
- SDC -> ETSI Catalog Manager
- SDC package notification
- ETSI Catalog Manager -> SDC
- /sdc/v1/catalog/{assetType}/{uuid}/toscalModel (download CSAR)
- /sdc/v1/catalog/{assetType}/{uuid}/metadata
- ETSI Catalog Manager
- Get an SDC CSAR and extract the vendor SOL004 package from the ETSI_PACKAGE artifact directory
- Store the vendor SOL004 package into the ETSI Catalog Manager DB
- ETSI Catalog Manager provides package management APIs and package management notification APIs based on the SOL003 specification
- etsicatalog.swagger.json
- etsicatalog.swagger.notification.json
- For more details, see https://lf-onap.atlassian.net/wiki/display/DW/ETSI+Catalog+Management > SO ETSI Catalog DB Support for NS, VNF and PNF packages
- SOL003 Adapter provides notification APIs for ETSI Catalog Manager and invokes the package management APIs
- SOL003 Adapter and SVNFM use SOL003 package management APIs
- SVNFM implements VNF package management notification API
- SOL003-VnfPackageManagementNotification-API.json
- SOL003-VnfPackageManagement-API.json
- SOL005 Adapter provides notification APIs for ETSI Catalog Manager and invokes the package management APIs
- SOL005 Adapter and External NFVO/VFC/ONAP SO NFVO uses SOL005 package management APIs
- External NFVO/VFC/ONAP SO NFVO implements NS package management notification API
- SOL005-NSDManagementNotification-API.json
- SOL005-NSDManagement-API.json
Interactions between SDC and ETSI Catalog Manager
- Only Challenge A will be supported for Guilin.
- Challenge B is for future discussions
Challenge A will be supported for Guilin.
SO ETSI Catalog DB Support for NS, VNF and PNF Packages
For the ETSI package storage, SO does the following:
- SO (SDC Controller component) queries the package from SDC
- SO stores ETSI (including SDC AID DM) + vendor VNF package CSAR or ZIP
- If the onboarding vendor package is a zip file with signature and certificate, SO stores the vendor VNF package as a zip format.
- Not all VNFD needs to be transformed to the SDC AID DM - TBD
- For Non-ETSI models (Service + Non-ETSI Resource), SO will use the existing SO embedded Catalog DB
Instead of building ONAP-ETSI Catalog management in SO, SO will leverage the existing ONAP-ETSI Catalog Manager function.
- Use VF-C Catalog Microservices for the NS, VNF and PNF catalog support, https://wiki.onap.org/pages/viewpage.action?pageId=63996543
- VFC Catalog Manager has been migrated as a common component, ETSI Catalog Manager Hereinafter, it is called as "ETSI Catalog Manager"
- ETSI Catalog Manager has been enhanced to handle the vendor package in the ETSI_PACKAGE directory.
- ETSI Catalog DB Microservice
- Database: nfvocatalog (vfc-nfvo-catalog-createdb.sql // create db scripts) // vfc prefix should be generalized
- Database Table (vfc-nfvo-catalog-createobj.sql // create tables scripts) . // vfc prefix should be generalized
- Catalog_NSPackage
- Catalog_VNFPackage
- Catalog_PNFPackage
- Catalog_SoftwareImageModel
2.VF-C Catalog (API) Microservice / ETSI Catalog (API) Microservice
- vfc-catalog docker // vfc prefix should be generalized
- ETSI Catalog Manager REST APIs
- ETSI Catalog Manager provides the following Package Management and Package Notification APIs:
- Package Management:
- Package Management Notification:
- Package Management:
API descriptions
NS Package Management
VNF Package Management
PNF Management
•GET /nspackages // query NS package info
•POST /nspackages // NS package distribute / create
•GET /nspackages/{csarId} // query NS package info
•DELETE /nspackages/{csarId} // delete NS package
•GET /vnfpackages //query vnf package info
•POST /vnfpackages // vnf package distribute / create
•GET /vnfpackages/{csarId} // query vnf package info
•DELETE /vnfpackages/{csarId} // delete vnf package
•PUT /vnfpackages/{csarId}. // create/upload vnf package
•GET /pnf_descriptors
•POST /pnf_descriptors
•GET /pnf_descriptors/{pnfdInfoId}
•DELETE /pnf_descriptors/{pnfdInfoId}
Model Parsing
Job Management (used for async LCM)
More…
•POST /parsernsd // NS package model
•POST /parservnfd // VNF package model
•GET /jobs/{jobId} // Job Status
•POST /jobs/{jobId} // Update Job Status
•
- ETSI Catalog Manager provides the following Package Management and Package Notification APIs:
The following diagram depicts a possible ONAP-ETSI Catalog DB handling for NS, VNF and PNF Packages.
- SDC Stores Service models/templates into the existing SO Catalog DB, and ETSI model will be stored in the ONAP-ETSI Catalog Manager database.
- Note: SO and other ONAP run-time components could leverage the ONAP-ETSI Catalog Manager function, as a common service.
- ONAP-ETSI Catalog Manager Interfaces:
- Supports its NBI for create and update ONAP-ETSI catalog. SDC Controller will uses the NBI.
- Retrieves model artifact files from SDC
- Stores the data to the ONAP-ETSI Catalog DB.
- For now, both SDC AID DM and original vendor package will be stored
- Supports its Query operations for SOL003/SOL005 Adapters
- The Catalog Manager will provide the original vendor packages to SOL003/SOL005 Adapters
SO Package Management ( SDC - SO SDC Controller - ONAP-ETSI Catalog Manager)
- SO SDC Controller module (ASDCController and ToscaResourceInstall) needs to be updated for handling SOL004 packages including SOL001 VNFD and PNFD.
- Service-level catalog and other non-ETSI catalog (SDC AID DM) will be stored in SO Catalog DB.
- VNF/PNF/NS-level catalog handling would be simplified:
- By using the ONAP-ETSI Catalog Manager, ETSI VNF/PNF/NS-level catalogs (i.e., original vendor packages) will be stored in ONAP-ETSI Catalog DB
- SO itself does not need to manage ETSI-based VNF LCM; i.e., delegates the LCM to VNFM through the SOL003 VNFM Adapter
- In Frankfurt, VNF and NS package management will be supported.
- The following diagram depicts the component interactions for VNF Package store for ONAP runtime.
- Interfaces between SDC Controller and ONAP-ETSI Catalog Manager
- ONAP-ETSI Catalog Manager POST API will be used to store the VNF packages
- POST /api/catalog/v1/vnfpackages // passing csarId, vimIds and labVimId
- Operation Requirements
API Action | Actor | Method | Endpoint URI | Description |
---|---|---|---|---|
Store ETSI package | SDC Controller | POST | /api/catalog/v1/vnfpackages | Invoke the ONAP-ETSI Catalog to store SOL004 VNF packages to ONAP-ETSI Catalog DB |
SO Catalog Modelling
- The service database table has TOSCA_CSAR_ARTIFACT_UUID column. We continue to use this column to link the TOSCA CSAR.
- The TOSCA_CSAR database has a logical relationship with Catalog_NSPackage, Catalog_PNFPackage and Catalog_VNFPackage.
- When a record is entered in the TOSCA_CSAR,
- if the CSAR artifact type is NS, add a NS package into Catalog_NSPackage
- if the CSAR artifact type is VNF, add a VNF package into Catalog_VNFPackage
- if the CSAR artifact type is PNF, add a PNF package into Catalog_NSPackage
- When a record is entered in the TOSCA_CSAR,
- For the SOL004 VNF onboarding into SO,
- SO does not populate data info the VF-Module database table if the VF-Module is not populated in the modeling.
- It depends on the SOL001 VNFD mapping to SDC AID DM whether it populates VF-Modules or not.
- SO does not populate data into the HEAT-Template database table
- Heat-Template is part of the VNF package
- SO invokes the ONAP-ETSI Catalog Manager APIs with the CSAR UUID.
- ToscaResourceInstaller (InstallTheVfResource, InstallThePNFResource) will be modified to invoke the ONAP-ETSI Catalog Manager.
- Note: the NS use case needs to be defined since SDC does not support SOL007 (NS Package) yet.
- The ONAP-ETSI Catalog Manager receives VNF packages and stores them into the ONAP-ETSI Catalog Database Catalog_VNFPackage
- It stores the VNF package as a whole and its APIs can extract the VNFD, artifacts, softwareImage, etc.
- SO does not populate data info the VF-Module database table if the VF-Module is not populated in the modeling.
- SO Catalog models and relationships are as follows:
- Note: the relationship between TOSCA_CSAR and Catalog_NSPackage/Catalog_VNFPackage/Catalog_PNFPackage is "logical" since the Catalog_***Package and Catalog_Softwareimage will be resided in the ONAP-ETSI Catalog DB.
- Based on the CSAR UUID, the ONAP-ETSI Catalog Manager gets all the artifacts and files from SDC to fulfill the Catalog_***Package and Catalog_Softwareimage.
ONAP-ETSI Catalog Manager - SOL003/SOL005 Adapter
As the diagram depicts, ETSI Catalog Manager consists of two microservices:
- ONAP-ETSI Catalog API
- ONAP-ETSI Catalog DB
Interfaces between ONAP-ETSI Catalog Manager and SOL003/SOL005 Adapters
- ONAP-ETSI Catalog Manager provides RESTful services to Adapters:
- ETSI package management for the Adapters.
- GET /api/catalog/v1/vnfpackages/{csarId}
- ETSI package management for the Adapters.
- Need to pass artifacts (images) to VIM thru the Adapter
- Get the original vendor VNF package
- Retrieving VNFD for SOL003 Adapter
- Retrieving NSD/VNFD for SOL005 Adapter
- GET /nspackages/{csarId} // query NS package info
- More SOL005 Adapter requirements are being collected.
Operation Requirements
API Action
Actor
Method
Endpoint URI
Description
Query ETSI VNF package SOL003 Adapter GET /api/catalog/v1/vnfpackages/{csarId}
Invoke a SOL004 VNF package from ONAP-ETSI Catalog Query ETSI NS Package
SOL005 Adapter GET /nspackages/{csarId} Query NS Package info from the ONAP-ETSI Catalog