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 APIsONAP-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

  • ETSI package distribution support from SDC → SO SDC Controller → ONAP-ETSI Catalog Manager
ONAP-ETSI Catalog Manger - SOL003/SOL005 AdaptersSOL003/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

  • ETSI Catalog Manager subscribes for SDC package notification through DMaaP
  • ETSI Catalog Manager queries SDC for ETSI packages (SOL004 and SOL007)
Yes

MODELING-334 - Getting issue details... STATUS


ETSI Catalog Manager subscribes for SDC package notification through DMaaP

ETSI Catalog Manager subscribes for SDC package notification through DMaaP

Yes

MODELING-335 - Getting issue details... STATUS


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

MODELING-336 - Getting issue details... STATUS


ETSI Catalog Manager supports SOL005-compliant package management APIs for the SOL005 AdapterETSI Catalog Manager supports SOL005-compliant package management APIs for the SOL005 AdapterNo

Assign to Verizon; handled by  SO-2857 - Getting issue details... STATUS

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-Adapter-for-Guilin

  1. SDC -> ETSI Catalog Manager
    1. SDC package notification
  2. ETSI Catalog Manager -> SDC
    1. /sdc/v1/catalog/{assetType}/{uuid}/toscalModel  (download CSAR)
    2. /sdc/v1/catalog/{assetType}/{uuid}/metadata
  3. ETSI Catalog Manager
    1. Get an SDC CSAR and extract the vendor SOL004 package from the ETSI_PACKAGE artifact directory
    2. Store the vendor SOL004 package into the ETSI Catalog Manager DB
  4. ETSI Catalog Manager provides package management APIs and package management notification APIs based on the SOL003 specification
    1. etsicatalog.swagger.json
    2. etsicatalog.swagger.notification.json
    3. For more details, see https://wiki.onap.org/display/DW/ETSI+Catalog+Management > SO ETSI Catalog DB Support for NS, VNF and PNF packages
  5. SOL003 Adapter provides notification APIs for ETSI Catalog Manager and invokes the package management APIs
  6. SOL003 Adapter and SVNFM use SOL003 package management APIs
    1. SVNFM implements VNF package management notification API
    2. SOL003-VnfPackageManagementNotification-API.json
    3. SOL003-VnfPackageManagement-API.json
  7. SOL005 Adapter provides notification APIs for ETSI Catalog Manager and invokes the package management APIs
  8. SOL005 Adapter and External NFVO/VFC/ONAP SO NFVO uses SOL005 package management APIs
    1. External NFVO/VFC/ONAP SO NFVO implements NS package management notification API
    2. SOL005-NSDManagementNotification-API.json
    3. 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.
  1. 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:
    • 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

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 packageSDC ControllerPOST/api/catalog/v1/vnfpackagesInvoke 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
  • 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 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}

      • 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 packageSOL003 AdapterGET

    /api/catalog/v1/vnfpackages/{csarId}

    Invoke a SOL004 VNF package from  ONAP-ETSI Catalog

    Query ETSI NS Package

    SOL005 AdapterGET/nspackages/{csarId}Query NS Package info from the ONAP-ETSI Catalog





  • No labels

1 Comment

  1. Is there any API available in ETSI Catalog Manager to upload vendor CSAR file into ETSI Catalog DB (Instead of uploading CSAR from SDC) ?

    I see below API's exposed by ETSI Catalog Manager (ONAP Guilin release). Will it support to upload csar file in to ETSI Catalog DB?


      - PUT
    - Upload a VNF package by providing the content of the VNF package
    * - /api/vnfpkgm/v1/vnf_packages/{{vnfPkgId}}/package_content/upload_from_uri

    - PUT
    - Upload a VNF package by providing the address information of the VNF package
    * - /api/vnfpkgm/v1/vnf_packages/{{vnfPkgId}}/package_content

    Any help would be greatly appreciated.