Authors: Ben Benjamin Cheung , Michela Bevilacqua , Zu Qiang
Table of Contents
...
PNF PRE-ONBOARDING & ONBOARDING OVERVIEW
Descriptor, Artifacts and Package Delivery | PNF Package Pre-onboarding | ONAP onboarding process, PNF Package onboarding | ONAP Design Time activities | ONAP Run Time activities | |
---|---|---|---|---|---|
WHEN | PNF delivery time | Pre-Onboarding activities | Onboarding Activities | ONAP Design Time Activities | ONAP Run Time |
WHO | Vendor | Technology Specialist | Technology Specialist Asset Manager | Service Designer Operations Specialist | Operations Specialist |
WHAT | Descriptor, Artifacts and Package delivery | PNF Package NF validation Activities | PNF Package, PNF Descriptor PNF Onboarding SDC Meta-data added (vendor onboarded CSAR to SDC onboarded CSAR) | ONAP Common Information Model SDC Data Model 5G Service Definition Service Design SDC Model mapping | 5G Service Instantiation PNF Instance A&AI PNF Instance |
ETSI NFV reference | SOL001 PNFD SOL004 Package | ETSI SOL004 Package | ETSI SOL001 PNFD, SOL004 Package | - |
PNF PRE-ONBOARDING & ONBOARDING DUBLIN WORK
STAGE | DESCRIPTION | DELIVERABLE |
---|---|---|
(1) Package Delivery | Producing and collecting NF artifacts for a NF package. Vendor provided. Dublin Priorities are the artifacts & descriptor files of the PNF package. These include: 1. PNFD, 2. NF Registration YAML File (for VES event definition), 3. PM Dictionary & Schema. | PNF Onboarding Package |
(2) PNF Pre-Onboarding | VNF SDK: Enhance VNF-SDK to be able to validate (optionally) the on-boarding PNF package. Optionally, create a PNF onboarding package through VNF-SDK. VNF-SDK can: [1] (optionally) Create a PNF package. VNF-SDK optionally can extend a package and provide as output a new onboarding PNF package the SDC will use. Package, output of the VNF SDK (as optional step) must be compliant and aligned to the PNF package onboarding format provided by the vendor as both can be used as input to SDC for the ONAP onboarding package. [2] (optionally) Validate a PNF package. Validate the package according to available VES specifications and onboarding package structure. SDC/CDS: Load PNF model & Controller blue-print for PNF orchestration and Network communication. Before R3/Casalanca a Preload interim solution was used for Network Assignments. | VNF SDK validates PNF onboarding Package |
(3) PNF Onboarding | In PNF Onboarding, SDC takes the PNF vendor-provided package and adds meta-data content and recomposes a new CSAR into the SDC expected directory structure format. It copies the PNF vendor-provided PNF onboarded package and put it into a vendor-provided directory. Onboarding the Package: SDC Enhancements need to be made to onboard the PNF Package and enter into the SDC Catalog The CSAR package provided by SDC as output of the onboarding process. This work will include the PNF artifacts into CSAR package. | SDC CSAR Package of PNF Onboarded Package (CSAR) |
(4) Design Time Activities (SDC) | Design time activities occur where an operator and define services. A Service is defined, and a new CSAR package is produced with service-related artifacts associated with outputs of SDC ready for distribution to other ONAP run-time components. | SDC CSAR (output) |
(5) ONAP RT Component Ingestion of CSAR package & PNF Onboarding package artifacts | Proper Distribution & Reception of SDC CSAR: The SDC CSAR package is distributed by SDC to ONAP Run-Time Components. Chances need to be made to verify the reception of the CSAR and use of the CSAR by the Components. We need to insure that the distribution of PNF artifacts does not break the ONAP platform components. (for example SO looked for Heat Templates, which were only applicable for VNFs). Some ONAP RT assume that any package notification only have VNF artifacts. In practice, there is only the subscription of artifacts (listeners) and the distribution of the PNF package, we need to make sure this behaves correctly and that there are no errors. Pre-integration checks and validation that the distribution of PNF artifacts will not cause side effects. Want to insure that FM & PM artifacts are distributed properly. PM dictionary would be used in DCAE & PM Mapper. FM Meta Data is new, and from the start (what is new in Dublin) is that it is being used for both VNFs and PNF. | SDC CSAR (service artifacts from SDC) |
...
Project / PTL | JIRA | Description | Status | ||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
| PTL notified (11/19 ) Code is ready for M4(11/04) | ||||||||||||||||||||
| VNFSDK PTL notified (12/05) VNF SDK Model, Package notified (11/30) Scope planned for Dublin completed ...except from package security item: E2E work tracked in this Jira item:
| ||||||||||||||||||||
RESOURCE DATA MODEL | No JIRA ticket required, project can help to identify the mappings required in SDC in Dublin timeframe |
| PTL notified (11/26) | ||||||||||||||||||
VNF RQTS |
| PTL notified (01/16) |
...
PACKAGE DELIVERY: ARTIFACTS & PRODUCTS
PACKAGE DELIVERY | ONBOARDING PROCESS | DESIGN TIME | RUN TIME |
---|---|---|---|
NF Descriptor | NF Descriptor Model | SDC Data Model | A&AI PNF Data model, PNF instance |
VES event registration file/ PM dictionary | artifact | SDC Catalog | Run time Catalog |
Informational Artifacts | artifact | SDC Catalog | Run time Catalog |
Configuration Models and Files, (including Ansible Playbooks) | artifact | SDC Catalog | Run time Catalog |
Multiple artifacts can be provided by a vendor in the Package. A list of the supported artifacts by ONAP will be finalized during Dublin timeframe.
...
PACKAGE DELIVERY: PACKAGE CREATION (VENDOR PROVIDED)
The PNF Onboarding Package could contain the following things:
ARTIFACT | DESCRIPTION |
---|---|
PNF Descriptor | PNF Descriptor. The PNFD is a model which describes the requirements and capabilities of the PNF. The ETSI SOL 001 specification also suggests a model that can be used for a PNFD. This could be a TOSCA definition of the PNF. MANDATORY |
NF Registration | Definition of VES Events. The NF Registration is defined by the VES Registration specification. You can read about the VES Event Listener here: Service: VES Event Listener 7.0.1 MANDATORY |
Licensing | NF Licensing information that needs to be included in the Package N/A for PNF |
Informational Artifacts | Informational artifacts include:
OPTIONAL |
Configuration Files | Configuration Files related to the NF for configuration management OPTIONAL |
Ansible Playbooks | Ansible Playbooks to interact with NF. These are anticipated to be used with the communication of the NF controller to the NF. This can be seen in the PNF Plug and Play Wiki: 5G - PNF Plug and Play OPTIONAL |
PACKAGE DELIVERY: PNF PACKAGE FILES & DIRECTORIES
...
- metadata with following keynames: pnfd_ provider, pnfd_name, pnfd_release_date_time, pnfd_archive_version
- a list of all files contained in or referenced from the package with their location, expressed using a Source: location/name key-value pair.
- Non-mano-artefact tag: ONAP defined tags
EXAMPLE of the PNF manifeat file
...
The following diagram illustrates a basic PNF package and some suggested file structure and content in the directories.
The PNF package is expected to be a CSAR package with file extension .csar.
...
PNF PRE-ONBOARDING: VNF-SDK ENHANCEMENTS
VNF SDK is (optionally) responsible to validate the PNF package provided by the vendor.
...
TASK | VNF SDK S/W FUNCTION - DESCRIPTION | Release Priority | ||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|
#1: MANIFEST FILE (VNF SDK) vs FILE CHECK (Test only) | Verifies the MANIFEST file (MainServiceTemplate.mf) and checks that the defined directories of the PNF package against the manifest file. for example the manifest file might say a files should exist: "Measurements: source: Artifacts/Deployment/Measurements/PM_Dictionary.yaml", the VNF SDK would check that the file PM_Dictionary.yaml exists in the actual PNF package. (Confirmed that VNF-SDK supports already Feb 14, 2019). Bogumil Zebek There are two repositories: Java, Python. (investigate) ASSOCIATED DEVELOPMENT:
| R4 HIGH | ||||||||||
#2: TOSCA MetaFile LICENSE Term File Exists Check (VNF SDK) (Test Only) | VNF SDK will check a License Term File Check in the PNF package. TOSCA meta file points to a License. Just a check that the file exists no content check at all. Note: Related requirements standards from ETSI IFA011, SOL004 ASSOCIATED DEVELOPMENT: QUESTION is the file is not there will the process abort or is a warning given? (Already Supported, VNF-SDK already supports this confirmed Feb 14, 2019) | R4 HIGH | ||||||||||
#3: TOSCA MetaFile CERTIFICATE Check (VNF SDK) (Test Only) | (Test only) CERTIFICATE check. In the PNF package it is expected that there will be MainServiceTemplate.cert. This is mentioned in the TOSCA MetaFile. For example, in the TOSCA MetaFile, it could be mentioned "Entry-Certificate: Artifacts/resource-gnodeb-template.cert". And VNF SDK would check to make sure that the resource-gnodeb-template.cert file exists in the mentioned directory, the Artifacts in this case. VNF SDK does not look inside this file. (Needs Investigation) SOL004 has option 1 (signing each artifact individually / individual digest) and option 2 (sign entire package). It would be nice if VNF SDK supported both Option 1 and Option 2. (Needs Investigation) VNF-SDK option 1/2 support still needs investigation (as of Feb 18, 2019). Need to clarify how to do the test. ASSOCIATED DEVELOPMENT:
QUESTION is the file is not there will the process abort or is a warning given? | R4 HIGH | ||||||||||
#4: SOL004 PNF TAGS | Check keywords. needs VNF SDK to check the PNF keywords. in the MainServiceTemplate.mf there are new tags:
and the file list and the NON ETSI MANO artifact tags public tags. These public tags are under the "non_mano_artifact_sets". This would be NEW development in VNF SDK. An example Manifest file is shown in this diagram: metadata:pnfd_name: gNBpnfd_provider: Ericssonpnfd_archive_version:1.0pnfd_release_date_time:2018-12-03T08:44:00-05:00source: Definitions/MainServiceTemplate.yamlsource: Definitions/etsi_nfv_sol001_vnfd_2_5_1_types.yamlsource: Definitions/etsi_nfv_sol001_pnfd_2_5_1_types.yamlnon_mano_artifact_sets:onap_ves_events:source: Artifacts/Events/VES_registration.yamlonap_pm_dictionary:source: Artifacts/Measurements/PM_Dictionary.yamlonap_yang_module:source: Artifacts/Yang_module/Yang_module.yamlonap_others:source: Artifacts/scripts/install.shsource: Artifacts/Informational/user_guide.txtsource: Artifacts/Other/installation_guide.txtsource: Artifacts/Other/review_log.txt which shows the use of some of these fields. ASSOCIATED DEVELOPMENT:
| R4 High | ||||||||||
#5: VALIDATION FOR META DATA CHECK (ETSI SOL004) | Following ETSI SOL004 Validation for Meta-Data file and Manufacturer file, this is the TOSCA.meta file that is part of the PNF Package. Both VNF SDK implementing only meta-data option, in the package there is a meta file. Check TOSCA.meta, while this file is not mandatory, when it is included that it follows the SOL004 standard (ETSI). We expect that "TOSCA-Meta-Version" and "CSAR-Version" and "Created by" are already supported, and new checks for "Entry definition, ETSI-Entry-manifest, ETSI-Entry-change-log" would be new VNF SDK development work (needs to be verified). TOSCA-Meta-File-Version: 1.0 CSAR-Version: 1.1 Created-By: Ericsson Entry-Definitions: Definitions/MainServiceTemplate.yml ETSI-Entry-Manifest: MainServiceTemplate.mf ETSI-Entry-Change-Log: Artifacts/ChangeLog.txt VNF SDK does the check the TOSCA.meta file today, if a few keywords is there. ASSOCIATED DEVELOPMENT:
| R4 HIGH | ||||||||||
#6: PACKAGE SECURITY | Driven from SOL004: Option 1 (Supported in R4 Dublin)from ETSI GS NFV-SOL 004 v2.7.1 (Dec 2019) Option 1 : TOSCA.meta (exists) Meta-directory based, XML based approach. Option 2 (NOT support in R4 Dublin): CSAR without TOSCA.meta. Manifest (.mf) file that has everything (so the TOSCA.meta is redundant). Yaml-based approach.The Public Key a key to open the package. SOL004 Option 1, 2 and use key to open the package - X.509 certificates public key, private key to sign the package and private key correspond to the private key . from. Manifest file has digest (hashes) for each individual file locally stored in the VNF package. The VNF package shall verify the hashes in the manifest file. (Done in R5 El Alto, but released in R6 Frankfurt) Option 2 : Package is ensured by signing the CSAR file with the VNF provider private key. The digital signature is stored in a separate file. The provider include X.509 certificate. (Done in R4 Dublin) The Public Key a key to open the package. SOL004 Option 1, 2 and use key to open the package - X.509 certificates public key, private key to sign the package and private key correspond to the private key of the package also delivered with the package. a package, a signature, and public key certificate delivered together. There may be more than one signature. Option 1 there is a digest for every file. All of those digests are listed in the manifest file. The manifest file is signed, one signature on the manifest. One signature and one key/pair & 1 certificate. Still optional to sign other files. The signature is a file beside. myimage.iso myimage.xyz but the same file/directory. Every file signed should have a signature files. CSAR file signed in a .sm file, package signature. The public key is signed can be signed by a root certificate. An X.509 certificate is a digital certificate that uses the widely accepted international X.509 public key infrastructure (PKI) standard to verify that a public key belongs to the user, computer or service identity contained within the certificate. (investigate) if VNF-SDK would like to use AAF as the CA. Can AAF perform the CA functions. To open the package need: (1) Public Key (to open the manifest file) (2) file input (3) certificate input. create a hash, the hash is verified against the signature. SHA-256 ASSOCIATED DEVELOPMENT:
| |||||||||||
#7: PNF DESCRIPTOR | The descriptor. There is validation of the VNFD. PNF Descriptor: TOSCA descriptor, and validate the node type. Validation of TOSCA PNFD. Following TOSCA rules. Components required are there. (NEEDS INVESTIGATION) VNFSDK check the VNFD based on VNF requirements. ASSOCIATED DEVELOPMENT:
| R4 HIGH | ||||||||||
#8: PNF PACKAGE TESTING (Test Only) | Enhancement of Package Testing. A item to make sure that integration testing is performed and that VNF-SDK supports the functions as will be described in the Requirements work. Testing the package against the requirements (a user can enter a requirement#) VNF-RQTS project. It would be ideal if the PNF Package used by the VNF-SDK work is shared by the rest of the PNF preonboarding/onboarding development & integration. ASSOCIATED DEVELOPMENT:
| R4 HIGH | ||||||||||
LOW PRIORITY / PUSHED TO R5 EL ALTO | ||||||||||||
#F1: CREATE PACKAGE FUNCTION FOR PNF | The create package function creates the metadata files, and CSAR files. This needs to be modified to support SOL004. (NEEDS INVESTIGATION) [Low Priority] | R5 EL ALTO LOW PRI | ||||||||||
#F2: TOSCA Metafile License Content Check | SDC license model check. Potential ARTIFACTS: Vendor license model & agreement, features. VNF can have >1 features, entitlement pool, license key pools, actual keys. [Low Priority] PUSH TO R5 EL ALTO. | R5 EL ALTO LOW PRI | ||||||||||
...
the following diagram illustrates the VNF SDK work to check the new PNF tags in Task #4
The following diagram illustrates the VNF-SDK Task #5 check of the TOSCA Meta file Checks:
PNF ONBOARDING PACKAGE: PNF ONBOARDING PACKAGE LOADED
...
In Dublin timeframe, the focus is the onboarding package mapping in the internal package and AID model.
DESIGN TIME ACTIVITIES: SDC ONBOARDING PACKAGE
...
For model info about the PNF onboarding package format and an example of the format refer to ONAP R4+ Onboarding PNF package format, non-MANO artifacts set definition and PNF package mapping
DESIGN TIME ACTIVITIES: SDC ONBOARDING PACKAGE MAPPING INTO INTERNAL PACKAGE
SDC is used to map the Vendor provided onboarding package & PNF descriptor into the Internal Package & Internal (Platform) Data Model
DESIGN TIME ACTIVITIES: SDC ONBOARDING PACKAGE INTO SDC CATALOG
...
The NF Package is composed of Artifacts, Definitions, TOSCA-MetaData.
SDC CSAR Package Structure
...
FUNCTION | DUBLIN (R4) | FRANKFURT (R6) | GUILIN (R7) |
---|---|---|---|
Package Delivery | Initial Delivery | ||
Pre-onboarding: VNF-SDK Package Validation | Initial Delivery | ||
Onboarding: Package into SDC Catalog | Initial Delivery | ||
Onboarding: xNF Descriptor mapped to Platform Info/Data Model | Initial Delivery | ||
Design Time: Usage of Onboarded Package Creation of Resource/Svc | Initial Delivery | ||
Run Time: Ingestion of Service CSAR by ONAP Run-time components | Initial Delivery |
The following table has a list of the references pages for the Roadmap
Release | Wiki |
---|---|
Dublin (R4) | 5G - PNF Pre-Onboarding & Onboarding |
Frankfurt (R6) | PNF/VNF PREONBOARDING / ONBOARDING in R6 Frankfurt |
REQUIREMENTS
This section describes the requirements that are to be updated & added
(This section under development)
REQUIREMENTS CATEGORIES | DESCRIPTION | ||||||||||||||||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
CSAR structure | New requirements related to the CSAR structure for the PNF Onboarded package. Section 5.1.6, VNF CSAR requirements based on SOL004 based only for VNFs. Associated Tickets:
| ||||||||||||||||||||||||
PNFD Descriptor | New VNF-RQTS requirements related to the PNF Descriptor. The requirements describe the VNF-Descriptor and new updates need to be made to support PNF Descriptors. Associated Tickets:
| ||||||||||||||||||||||||
Onboarding Requirements | New VNF-RQTS onboarding requirements. In the document 7.2, xNF onboarding requirements but aren't clear what is needed. These requirements were copied from RFP but are outdated and some requirements are irrelevant, so in R4 for this use case, these requirements needs to be reviewed, updated, and revised. Associated Tickets: (TBD) | ||||||||||||||||||||||||
...
PNF ONBOARDING ARTIFACTS | MOCK-UP | ||||||
---|---|---|---|---|---|---|---|
PNF Descriptor TOSCA | |||||||
NF Registration (YAML) Defines records for NF events | |||||||
Informational Artifacts | |||||||
PNF CSAR (Onboarded) package (Dummy mockup) |
| ||||||
PNF CSAR (Onboarded) package (Dummy mockup) | |||||||
View file | |||||||
name | dummyPnfv2.zip | height | 250(Dummy mockup) |
|
- You can find actual onboarding files used for integration at: https://gerrit.onap.org/r/gitweb?p=integration.git;a=tree;f=test/mocks/pnf-onboarding;hb=HEAD
APPENDIX: PNF ONBOARDING OVERVIEW SLIDE PACKS
...
openecomp-be\backend\openecomp-sdc-vendor-software-product-manager\src\main\java\org\openecomp\sdc\vendorsoftwareproduct\impl\orchestration\csar