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.
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 |
SOL004 |
v3.3.1 |
Defines the VNFD CSAR package specification |
SOL013 |
v3.3.1 |
Defines common data structures and payloads, common to all ETSI specifications |
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)
vnffm
:
{
"uriPrefix": "https://localhost:8251/or_vnfm/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.
Also, the uriPrefix is returned which consists of the invoking protocol (http or https), the hostname, port and apiRoot. The apiRoot will optionally contain a version also (v1 or v2) if the version was specified in the invoking URL.
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": "https://localhost:8251/or_vnfm/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.
For information on managing resources, see Managing Resources.