Versions Compared

Key

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

...

    • Leverage ETSI standards for VNF LCM in SO

    • Build SO VNFM Adapter

      • Use SOL003 APIs (2.5.1) for VNF LCM

      • Support operations such as create, instantiate, grant, query, terminate, LCN subscription and LCN

      • Support of Delete VNF is a stretch goal in Dublin
    • Enhance SO BPMN workflows & recipes

      • VNF-level and VF-Module workflows, leveraging VNFM Adapter 

      • Passing VNF LCM requests to VNFM using VNFM Adapter

  • Note: the following is candidates for the El Alto release.
    • Provide VNF package management for VNFM

    • Policy-based VNF scaling thru VNFM Adapter

...

    • A new SO sub-component, following ONAP Microservice Architecture

    • A Generic VNFM Adapter, supporting SOL003-compliant SVNFMs

    • Support of SOL003 APIs for VNFM LCM
      • VNF Package handling (Download & Parse VNF Package)
        • Get package files from the SDC repository thru SO
        • Provide VNF package(s), VNFDs and Artifacts to VNFM
        • SO Catalog DB enhancement for SOL001/SOL004 is identified as future release work
      • Invoking SVNFM based on SOL003 VNF LCM APIs as a client
      • Granting, based on ETSI VNFLifecycleOperationGranting
      • Subscription to SVNFM for getting notifications
        • STARTING, PROCESSING, COMPLETED
    • SVNFM selection based on configuration values that are configured during VNF on-boarding and VNFM registration. Two methods are considered:
      • Correlation between VNF NF Type and VNFM Type (Nokia method)
      • Utilizing VNFD vnfm_info:type, VNFM registration values: VNFM type, Cloud region, vendor

...

    • Vendor SVNFM must be "SOL003-compliant"
    • Providing SOL003 APIs for VNFM LCM, based on ETSI VNFLifecycleManagement
    • Registration itself to ONAP (thru A&AI ESR) - Name, Type, Vendor, Version, URL, VIM, Username and Password
    • Providing Subscription Services for Life-cycle Management Notifications
    • Support of the "Direct Mode" of Resource Management only
      • After receiving a grant permission, the VNFM sends requests for resources directly to VIM
      • Invoking MultiCloud from VNFM is under discussion, but not for Dublin
      • The "Indirect Mode" of Resource Management is being discussed, but not for Dublin

...

Gliffy Diagram
nameSO VNFM Adapter Architecture Dublin
pagePin12


  • SOL001/SOL004 Standard Conformance

    • VNF Package

      • A VNF Package is a compressed file that contains the following:
        • One VNF descriptor (VNFD)
        • One or more Software Image files
        • Zero or more manifest files
        • Other files
      • Package structure is SOL004 2.5.1 compliant.

    • Cloud Service Archive (CSAR) format

      • It is a packaging construct defined in SOL004 2.5.1, identified by a .csar suffix on the package file. There are two package options. The second option is supported.

      • The CSAR file does not contain TOSCA-Metadata directory, the descriptor yaml file is in the root directory of the CSAR.

      • The CSAR file contains TOSCA-Metadata directory, the TOSCA meta file in this directory contains the location and name of the descriptor file denoted by Entry-Definitions

    • VNFD

      • It is specified by the SOL001 2.5.1.

      • Note that the input and get_input function would be used by a TOSCA orchestrator at run time to access the selected input parameter. If the deployment is not done by a TOSCA orchestrator, the inputs and get_input function may not be needed. The VNFD design should follow the vendor SVNFM orchestration capabilities. 

...

User StoriesFeatureDescription

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1538

Create the Functional test case to validate VNFM Adapter NBI and SOL003-based SBIValidate VNFM Adapter NBI and SOL003-based SBI

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1618

SVNFM Simulator

For integration testing in ONAP, vendor-neutral SVNFM is needed, 

This SVNFM Simulator supports SOL003-based interfaces and message exchange sequences for interface verification.

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1619

Create SO VNFM Adapter Northbound Interface using SwaggerCreate SO VNFM Adapter Northbound Interface using Swagger

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1620

Create Shell Adapter
  • Deployable VNFM Adapter container in ONAP (including docker image and helm chart)
  • Register VNFM Adapter with MSB

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1621

Create placeholder implementation for create VNF (without SVNFM interaction)
  • Create Override YAML in OOM project
  • Define Create/instantiate VNF interface which log the request in SVNFM adapter
  • Create request to VNFM adapter for VNF creation

Note: manual database update to trigger new BB flow and no pre-load

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1622

Check for existing VNF (with SVNFM Interaction)
  • Update Override YAML to add A&AI basic auth and URL
  • Generate 003 APIs using swagger
  • Get the generic-vnf from A&AI
  • Select a VNFM from A&AI (if not already associated with a VNFM)
  • Check for existing VNF

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1623

Handle Create VNF request in VNFM adapter
  • Get VNFD Id from original csar
  • Send create request to the SVNFM
  • Set self-link based on result of create operation

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1624

Instantiate VNF (with SVNFM Interaction)
  • With pre-load data from SDNC based on model name and VNF-type
  • Get the flavor Id from the CSAR
  • Get the VIM info from A&AI
  • Send request to SVNFM
  • Update generic-vnf orchestration status A&AI

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1625

Handle Grant Request (Without Homing/OOF)Reply to grant request based on given VIM info in request

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1626

Monitor Job Status

Monitor Job Status

  • Adapter Store and return job Id ( job ids stored in cache)
  • Introduce Job monitoring handling in flow
  • Handle time out for Job monitoring ( hard coded/configure in yaml timeout)
  • Identify the VNFM and operation Id for the job
  • Send get operation status request to VNFM
  • Return status

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1627

Create relationship between esr-vnfm and generic-vnf in AAI

Create relationship between esr-vnfm and generic-vnf in AAI

  • add a rule to AAI DBEdgeRule ESR
{ "from": "generic-vnf", "to": "esr-vnfm", "label": "tosca.relationships.DependsOn", "direction": "OUT", "multiplicity": "MANY2ONE", "contains-other-v": "NONE", "delete-other-v": "NONE", "prevent-delete": "NONE", "default": "true", "description":"" }
  • read the relationship in the SO VNFM Adapter Adapter

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1628

Handle Notification Subscription

Notification Subscription

  • Update generic-vnf status
  • Create vServers
  • Set OAM IP address - source of which needs to be configurable
  • Update Orch status in A&AI to completed

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1629

Notification Handling - Instantiate

Notification Handling - Instantiate

  • Update generic-vnf status
  • Create vServers
  • Set OAM IP address - source of which needs to be configurable
  • Update Orch status in A&AI to completed

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1630

Monitor Node Status

Monitor Node Status

  • Introduce Node monitoring handling in flow which periodically check orchestration status in A&AI
  • Handle time out for node status handling (hard coded/configurable timeout)

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1631

Handling Homing in FlowHandling Homing in Flow

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1632

Handle VNF delete and termination (without SVNFM integration)

Deleting/Terminating VNF (without SVNFM integration)

  • Define Terminate VNF interface in VNFM adapter
  • Update or introduce new building block which invoke VNFM adapter for termination

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1633

Terminate VNF (with SVNFM interaction)

Terminate VNF (with SVNFM interaction)

  • Identify the SVNFM to use from A&AI
  • Send terminate request to SVNFM
  • Send delete request to SVNFM
  • Return a job Id
  • Check termination job status in flow

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1634

Notification Handling - Terminate

Notification Handling - Terminate

  • Delete vServers
  • Update generic-vnf orchestration status
  • Check node termination status in flow

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1635

Remove SDNC pre-load and introduce user_param handling

Remove SDNC pre-load and introduce user_param handling

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1636

Handle Failure case where notification is missed (Query VNF)

Handle Failure case where notification is missed (Query VNF)

  • VNFM Adapter expose interface to get of VNF info
  • Flow use VNF info to check status at timeout

Jira
serverONAP JIRA
serverId425b2b0a-557c-3c0c-b515-579789cceedb
keySO-1637

Spike - investigate OAM IP address handling for generic-vnf

Investigate OAM IP Address handling for generic-vnf

  • Use Cases



  • Testing

    • Choose a use case for demonstrating the VNFM Adapter capabilities
    • Ericsson Internal Test:
      • A vendor provides their VNF Package and SVNFM for managing the vendor-specific VNF package. 
      • For the SO VNFM Adapter NBI and SOL003-SBI interface validation, Ericsson SVNFM is used for the internal testing
    • Integration Test:
      • For the integration testing, generic/dummy VNF package and VNFM simulator are provided.
      • The generic/dummy VNF package is to test onboarding and SOL001 parameters extraction during SOL003-based API parameters, such as descriptor_id, flavor, etc. 
      • VNFM simulator is a vendor-neutral SOL003-compliant VNFM, which supports SOL003 responses and message exchanges.

...

  • VNFM Adapter Sub-components


Gliffy Diagram
nameSO VNFM Adapter Architecture Dublin
pagePin2


    • SO VNFM Adapter component is a sub component of SO; utilizing docker image and container manged.
      • North Bound Interface (NBI)
        • RESTful APIs that support createVnf, instantiateVnf, queryVnf, grantVnf, TerminateVnf
        • Its APIs are SO specific; i.e., not SOL003-based ones
      • Business Logic layer
        • It is invoked by the NBI and provides business logic for createVnf, instantiateVnf, queryVnf, terminateVnf
        • SDNC and A&AI access to collect assignment and VimConnectionInfo
        • Accesses SdcPackageProvider for getting SOL003 package(s) and parameters
        • SdcPackageProvider
          • Supports SOL001/SOL004 package management
          • Provides getPackage, getVnfdId, getFlavorId, getVnfNodeProperty
          • Provides getPackage(s), getVnfd, getArtifactFile for SVNFM
          • Uses SDC Tosca Parser
        • GrantManager
          • Provides requestGrantForInstantiate REST API for SVNFM
          • Invokes OOF for homing decision; HPA support, and/or non-OOF decision
        • SOL003Lcn APIs
          • Supports VnfIdentifierCreationNotification, VnfIdentifierDeletionNotification, VnfLcmOperationOccurrenceNotification
      • SOL003 Communication Layer
        • It is a thin REST client layer, which sends SOL003-compliant requests to SVNFMs and receives responses/notifications from SVNFM.
        • For Grant, it provides the Grant REST endpoint for
  • SVNFMs.
        • SVNFM


  • SOL001/SOL004 Support & Design

...

Note: SO future release could consider SOL001/SOL004 internal representation in its Catalog DB, or using the Run-time Catalog DB

  • Design

    • TBD


  • VNFM Adapter VNF Flow Design

    • The following diagram depicts VNF flow design.

Gliffy Diagram
nameSO VNFM Adapter High Level Flow Design
pagePin1

  • VNFM Adapter Run-time Scenarios

...