...
- VNFM Adapter supports VNF Package Management Interface
- Accepts the "Get VNF packages" request and returns VnfPkgInfo[]
- Accepts the "Get VNFD" request and returns Vnfd
- Accepts the "Get VNF artifact" request and return Artifact file
- VNFM Adapter supports VNF Package Management Interface
Design
- TBD
VNFM Adapter
SOL003 API SupportDesign
- SO VNFM Adapter component (a sub component of SO; docker image and container manged)
- North Bound Interface (NBI)
- RESTful APIs that support createVnf, instantiateVnf, queryVnf
- Business Logic layer
- It is invoked by the NBI and provides business logic for createVnf, instantiateVnf, queryVnf
- SDNC and A&AI access to collect assignment and VimConnectionInfo
- Access 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
- SOL003Lcn APIs
- Support VnfIdentifierCreationNotification, VnfIdentifierDeletionNotification, VnfLcmOperationOccurrenceNotification
VNFM Adapter
- SVNFM SOL003 InterfacesLocating SVNFM
- VNFM Adapter locates a proper SVNFM based on VNF NF Type/VNFD and VNFM registration
- Two methods are suggested as follows, and one of them will be chosen.
SOL003 Support and Design
SOL003 Interfaces between VNFM Adapter (Client) and SVNFM (Provider)
Create VNF
-HTTP Method Type: POST
-VNFM Endpoint: /vnf_instances/
-Request Payload: CreateVnfRequest
-Response Header: 201 success
-Response Body: VnfInstance
Instantiate Instantiate VNF
-HTTP Method Type: POST
-VNFM Endpoint: /vnf_instances/{vnfInstanceId}/instantiate
-Request Payload: InstantiateVNFRequest
-Response Header: 202 success
-Response Body: not applicable
Grant Query VNF
RequestInstances
-HTTP Method Type:
POSTGET
-VNFM Endpoint:
/grants/vnf_instances (for multiple VNFs), /vnf_instances/{vnfInstanceId} (for single VNF)
Request Payload:
GrantRequestnot applicable
-Response Header:
201 200 success
-Response Body:
not applicableScale VNFVnfInstance[] (for multiple VNFs), VnfInstance (for single VNF)
SOL003 Interfaces between SVNFM (Client) and VNFM Adapter (Provider)
Grant VNF Request
- HTTP Method Type: POST
VNFM Endpoint: /
vnf_instances/{vnfInstanceId}/scalegrants
Request Payload:
ScaleRequestGrantRequest
Response Header:
202 accepted201 success
Response Body: not applicable
Dublin RequirementsBuild SO VNFM Adapter- Use SOL003 APIs for VNFM communication Support operations such as create, instantiate, scale, etc.
- Support SOL001 VNFD and SOL004 Package
- Enhance SO BPMN workflows & recipes
- Pass VNF LCM requests to VNFM using Adapter
- Modeling and A&AI Updates maybe required
- Some of this work may already be implemented
-
- SO VNFM Adapter Requirements for Dublin
- New SO subcomponent, following ONAP Microservice Architecture
- Generic VNFM Adapter, supporting SOL003-compliant SVNFMs
- Support SOL003 APIs
- Design
- ...
Impacted ONAP components
- SO
- SO Catalog DB for SOL001/SOL004 support
- BPMN Workflows and Recipes
- VNFM Adapter
- SDC
- Support SOL001/SOL004
- SDNC
- VNF-level Network Assignment, instead of VF-Module
- A&AI
- VNF-level Inventory Update
- VNFM location
- Policy
- Scale-Out support for ETSI-based scaling
- Modeling
- Support SOL001/SOL004
- SO
Open Items
VNF Application Configuration thru VNFM Adapter and VNFM is under discussion
Architecture subcommittee is defining orchestration scenarios for application configuration
Better mechanism for VNFM Adaptor to locate VNFMs (two methods are suggested)
How do we identify which VNFM to use?
VNF vs. VF-Modules ModelingModelling for VNF and VF Modules; mapping between VF Modules and VNF
Assigning Network resources to SDNC; do we use preload data?
VNFM Adaptor support of VNFD package management (uploading and downloading) for VNFM
Continue to support existing non-ETSI SO workflows along with ETSI-based workflows
VNFM Adaptor architectural direction; should it work as a thin layer or should it be evolved as a full-fledge NFVO in the future, e.g., handling grant by itself, updating resources in A&AI and SDNC?
After the VNF Instantiation, which component does update VNF resources in A&AI? VNFM Adapter or SO?
SOL001/SOL004 SO Representation
Enhance SO Catalog Database?
VNF_Package (vnfdid, vnfm_info, version, vnf_provider, product, vendor, etc.)
VNF_Package_Artifact (child database for VNF_Package, VNFD_URL, SoftwareImage_URL, Additional Files etc)
Store minimum reference in TOSCA_CSAR database table?
SOL001 Package management
SO VNFM Adapter supports VNF Package (VnfPkgInfo, VNFD, Artifact) for VNFM
SDNC Preload VNF Topology
MultiCloud use