Note: Due to the resource issue, this SOL002 Adapter is moved to the Honolulu release under REQ-400.
SOL002 Adapter is similar ETSI adapter as SOL003 and SOL005 that does conversion of ONAP functionality to ETSI MANO functionality and back. Architecture and placement in ONAP should be inline with other ETSI adapters and all common functionality should be shared and implemented just ones e.g.
All ETSI adapters should also shared common code base for ETSI models, DTOs and interface implementation as those will be technically very same towards external MANO.
SOL002 VNF LCM interface use can be divided to 2 separate sub-use cases:
Benefits:
External VNFM can subscribe to SOL002 VNF Indicator notifications.
SOL002 Adapter reads VNF specific VES events from DMaaP according to subscriptions and converts events to SOL002 interface format and sends as Notify events to external VNFM.
Note: (NOT FOR GUILIN)
Benefits:
Feature | Description |
---|---|
SOL002 Adapter subscribes and consumes VNF LCM notifications from VNFM | SOL002 Adapter utilizes VNFM exposed SOL002 VNF LCM interface to subscribe LCM Notifications:
|
SOL002 Adapter executes VNF LCM operations towards VNFM | SOL002 Adapter utilizes VNFM exposed SOL002 VNF LCM interface:
|
SOL002 Adapter receives subscription and sends VNF Indicator notifications to VNFM | SOL002 Adapter exposes VNF Indicator subscription endpoint and sends Indicator notifications to external VNFM:
|
Epic | User Story | Description | Is Guilin? | JIRA |
---|---|---|---|---|
SOL002 Adapter | Epic: SOL002 Adapter will support EM-triggered VNF/VNFC Management | No | ||
SOL002 Adapter subscribes and consumes VNF LCM notifications from VNFM | SOL002 Adapter utilizes VNFM exposed SOL002 VNF LCM interface to subscribe LCM Notifications:
| No | ||
SOL002 Adapter executes VNF LCM operations towards VNFM | SOL002 Adapter utilizes VNFM exposed SOL002 VNF LCM interface:
| No | ||
SOL002 Adapter receives subscription and sends VNF Indicator notifications to VNFM | SOL002 Adapter exposes VNF Indicator subscription endpoint and sends Indicator notifications to external VNFM:
| No | ||
Documentation for SOL002 Adapter features | Documentation for SOL002 Adapter features | NO | ||
SOL002Adapter will be the SO microservice component
For testing, the VNFM Simulator in the CSIT container will be used
The following SOL002 operations will be supported:
API Action | Actor | Method | URI | Description |
---|---|---|---|---|
Subscribe for LCM notifications | SOL002 Adapter → VNFM | POST | /vnflcm/v1/subscriptions (LccnSubscriptionRequest) | To create subscription for LCM notification |
Notify on VNF lifecycle changes | VNFM → SOL002 Adapter | POST | /lcm/v1/vnf/instances/notifications (VnfLcmOperationOccurrenceNotification) | To notify SOL002 adapter on VNF lifecycle changes |
LCM Notifications
@startuml "SO(SOL002_Adapter)" -> External_VNFM : 2. POST ../vnflcm/v1/subscriptions |
SOL002 Adapter continue to be part of SO. Later on it has to be moved to other component (e.g. GNFC).
Below is a message (the values are sample) sent over to DMaaP.
{ "closedLoopControlName": "ClosedLoopControlName", "closedLoopAlarmStart": 1589825445, "closedLoopEventClient": "microservice.stringmatcher", "closedLoopEventStatus": "ONSET", "requestID": "8478ff7d-409d-4b7d-b932-f09ab54765ab", "target_type": "VNF", "target": "generic-vnf.vnf-id", "AAI": { "vserver.is-closed-loop-disabled": false, "vserver.vserver-name": "<vServerName>", "generic-vnf.vnf-id": "<genericId>" }, "from": "ETSI", "version": "1.0.2", "etsiLcmEvent": { "id": "63e446ab-bb42-48aa-ad1f-bf20f6710623", "notificationType": "VnfLcmOperationOccurrenceNotification", "subscriptionId": null, "timeStamp": null, "notificationStatus": "RESULT", "operationState": "COMPLETED", "vnfInstanceId": "2124DEPF", "operation": "INSTANTIATE", "isAutomaticInvocation": null, "vnfLcmOpOccId": "86d3de41-a7f7-48eb-9868-5b103dc36d26", "affectedVnfcs": [ { "id": "abc123", "vduId": "vdu987", "changeType": "ADDED", "computeResource": { "vimConnectionId": "vim001" } } ], "affectedVirtualLinks": null, "affectedVirtualStorages": null, "changedInfo": null, "changedExtConnectivity": null, "error": null, "_links": { "vnfInstance": { "href": "https://so-vnfm-simulator.onap:9093/vnflcm/v1/vnf_instances/2124DEPF" }, "subscription": null, "vnfLcmOpOcc": { "href": "https://so-vnfm-simulator.onap:9093/vnflcm/v1/vnf_lcm_op_occs/86d3de41-a7f7-48eb-9868-5b103dc36d26" } } } } |