ETSI NFV MANO Northbound API Overview

ETSI NFV MANO Northbound API Overview

The ETSI NFV MANO API (ETSI API) is another programmatic interface to ESC that uses the REST architecture. The ETSI MANO adheres to the standards defined by the European Telecommunications Standards Institute (ETSI), specifically around Management and Orchestration (MANO). The API accepts and returns HTTP messages that contain JavaScript Object Notation (JSON) payloads. The API contains its own datamodel designed around the ETSI MANO specifications that abstract away from the ESC core datamodel.

For information on VNF lifecycle management operations using the REST/NETCONF APIs, see the Cisco Elastic Services Controller User Guide.

Table 1. ETSI MANO Specifications

Specification

Version Support

Description

SOL001

v3.3.1

Format and structure for the VNF Descriptor

SOL002

v3.3.1

Defines all interactions over the Ve-Vnfm reference point

SOL003

v3.3.1

Defines all interactions over the Or-Vnfm reference point


Note


The terminology used in the ETSI-specific sections of the user guide align to the ETSI MANO standards defined in the ETSI documentation. For more information, see the ETSI website.

For an orchestrator to check the versions of the APIs supported by a VNFM, a request can be made to the /api_versions endpoints. A version takes the form MAJOR.MINOR.PATCH; although only the MAJOR version appears in the URIs presented by the VNFM, the full version indicates the data model that the VNFM has implemented.

The Operations supported are:

  • Retrieve all supported versions for the given API

  • Retrieve all supported versions for the given API, filtered on the major version

Retrieve all supported versions :

The request returns the version for the apiName supplied, showing the version, whether the version is deprecated, and optionally when the version will be retired.

Method Type:

POST

VNFM endpoint:

{apiRoot}/{apiName}/api_versions

HTTP Request Headers:

Content-Type:application/json

Response Body (ETSI data structure: ApiVersionInformation)

For example, for vnffm:
 
            {
               "uriPrefix" : "localhost:8251/vnffm",
               "apiVersions" : [
                   {
                          "version" : "1.0.0",
                          "isDeprecated" : true,
                          "retirementDate" : "13-Jan-22"
                   },
                   {
                          "version" : "1.3.0",
                          "isDeprecated" : false
                   }
               ]
            }

Retrieve all supported versions for a given major version:

The request returns the version for the apiName supplied, showing the version, whether the version is deprecated and optionally when the version retires, filtered by the major version.

Method type:

POST

VNFM endpoint:

{apiRoot}/{apiName}/{apiMajorVersion}/api_versions

HTTP Request Headers:

Content-Type:application/json

Response Body (ETSI data structure: ApiVersionInformation)

For example, for vnflcm and major version=2:

{
             "uriPrefix" : "localhost:8251/vnflcm/v2",
             "apiVersions" : [
                {
                     "version" : "2.0.0",
                     "isDeprecated" : false
                }
            ]
         }

The current implementation of the ETSI NFV MANO standards consists of the Or-Vnfm and Ve-Vnfm reference points, which are the interfaces between the NFVO and VNFM, and the EM and the VNFM respectively. Both of these allow for the onboarding of ETSI-compliant CSAR packages, management of virtualized resources, and VNF lifecycle management (LCM) operations.

For more information on Or-Vnfm and Ve-Vnfm reference points, see the ETSI Group Specification document on the ETSI website. The figure below represents the NFV MANO architecture for all reference points.

Figure 1. NFV MANO Architecture with Reference Points

For information on managing resources, see Managing Resources.