Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

STATUS: CopyDraft

...

VNFSDK:

1 High Level Component Definition and Architectural Relationships 

...

draw.io Diagram
bordertrue
viewerToolbartrue
fitWindowfalse
diagramNameCLAMP VNFSDK System Context View
simpleViewerfalse
width
diagramWidth624615
revision14


The

...

VNF SDK provides the functionality to create VNF and PNF packages, test VNF and VNF ONAP compliance and provides market place functionality to store VNF and PNF packages. It supports:

  • The ability to create a HEAT and ETSI compliant (SOL004,SOL001) based VNF&PNF packages in a csar format.

  • Test VNFand PNF packages for ONAP compliance.

  • Upload and download VNF pages to/from a marketplace

In addition VNF SDK is used outside of ONAP by the LFN compliance and verification functionality.

2. VNFSDK API definitions

VNFSDK provides

  • Create control loop from DCAE blueprint sent by SDC
  • Create configuration policy from the policy Tosca sent by SDC
  •  Configure DCAE applications of the control loop
  • Associate µService configuration policies to the DCAE application
  • Configure the operations to be taken by the control loop (by creating/updating/deleting operational policies)
  • Deploy/un-deploy control loop flow (blueprints) to DCAE
  • Control loop visualization. 

CLAMP relies on Policy to communicate to App-C/VF-C/SDN-C/SO in runtime, hence these are not part of CLAMP 

2. CLAMP API definitions

CLAMP provides the following interfaces:

Interface NameInterface Definition Interface Capabilities
CLAMPEVNFSDKE-1Control Loop Lifecycle

VNF Package Management Interface.

 
  A user interface for:
  • Selecting the control loop flow
  • Entering configuration policy parameters
  • Entering operational policy parameters
  • Managing life cycle of DCAE control flow blueprint 


(Also called sdk-Md)

Provides the VNF SDK as commands and client side language bindings. Enables use of VNF SDK functions from graphical user interfaces, shell scripts, programs and command line interfaces

 A command interface for:
  • Building a VNF/PNF package
  • Validating a VNF/PNF package
  • Extracting a VNF/PNF package
  • Parsing a VNF/PNF package
  • Testing a VNF/PNF package (dry run install)
VNFSDKE-2

Market Place GUI
(also called Sdk-Mp)

Provides the VNF SDK as commands and client side language bindings. Enables use of VNF SDK functions from graphical user interfaces, shell scripts, programs and command line interfaces

 A user interface for:

  • Upload/Re-upload VNF/PNF package
  •  Delete VNF/PNF package
  • Download VNF/PNF Package
  • Quiery individual VNF/PNF package
  • Quiery list of VNF/PNF packages
 VNFSDKE-3

Market Place
(also called Mp-API)

 Exposed by the NF Marketplace as a programmatic API. Enables use of NF marketplace functions from command and graphical user interfaces.

 VNFSKDE-3 provides the following capabilities

  • Upload/Re-upload VNF/PNF package
  •  Delete VNF/PNF package
  • Download VNF/PNF Package
  • Quiery individual VNF/PNF package
  • Quiery list of VNF/PNF packages
VNFSDKE4 

VNF Test Platform
(Also called Mp-Tf)

Exposed by the NF Marketplace as a programmatic API. Enables use of the NF Marketplace's PnP test framework for validation of uploaded VNF products.

 An interface to:

  • Retrieve the list of test cases
  •  Request the execution of a test case and get a result
CLAMPE-2Control loop dashboard.  User interface to show the overall status of the control loop through DMAAP events

 Display and update:

  • Events received and actions taken on the control loop.

Note:   xxxI interface is a Component internal interface.  xxxxE interface is a component external interface

The current API documents can be found at:

VNFSDK consumes CLAMP consumes the following Interfaces:

Deploy/remove DCAE application. 
Interface NamePurpose Reason For Use
SDCE-6To receive the Control Loop Blueprint from SDCTo receive
PolicyE-2To create and configure the closed Loop Operational Policies and Configuration policies(DCAE Aps. Config.)
DCAEE-x Retrieve DCAE appplication status
N/AN/ADCAEE-y 


3. Component Description:

...

4. known system limitations

Runtime: None

Clamp data redundancy is dependent on Kubernetes and the persistent volume.

Clamp application redundancy HA relies on Kubernetes

None known.  Note, VNF-SDK is a design time component.

5. Used Models

Clamp VNFSDK uses the following models:

  • VNF Package Model
  • PNF Package Model
  • Service model (received from SDC)
  • VNF model (received from SDC)
  • Policy Model.

6. System Deployment Architecture

Clamp consists of 5 containers:

This needs to be checked

VNFSDKconsists of 3 components deployed in one container:

  • VNF Test Platform
  • Marketplace
  • Package Builder
  • CLAMP container
  • MariaDB container
  • Kibana container
  • E_Search container
  • LogStash container 

draw.io Diagram
bordertrue
viewerToolbartrue
fitWindowfalse
diagramNameCLAMP VNFSDK runtime architectrue
simpleViewerfalse
width
diagramWidth821231
revision12

7. New Capabilities in this Release

This release, CLAMP VNFSDK adds the following Capabilities:

  • Enhanced VTP features to run test case(s) and track the results 
  • Add VVP support for HEAT based VNF validation
  • Support PNF Package basic Validation
  • Introduction of the model driven approach for Control Loops
    • add policy-model to the SDC distribution
    • automatic rendering of configuration policy UI based on the distributed policy model
    •  better rending of the display of the control loop flow based on the distributed blueprint
  • enhanced internal model to better support model driven approach. 

8. References

  1.  CLAMP Overview & User Guide VNF  Package Tool: https://docs.onap.readthedocs.ioorg/en/latestcasablanca/submodules/vnfsdk/clampmodel.git/docs/files/indexpkgtool.html CLAMP internal interfaces:  ?highlight=VNFSDK
  2. Marketplace API: https://docs.onap.readthedocs.ioorg/en/latest/_downloads/d3c9f924c6586fe411d40a05ad9b1bb7/swagger.pdf /casablanca/submodules/vnfsdk/model.git/docs/files/vnfsdk-apis.html