ONAP Service Inventory API Internal External Service State

  • Slides: 12
Download presentation
ONAP Service Inventory API Internal -> External Service State Mapping Discussion Adrian O’Sullivan –

ONAP Service Inventory API Internal -> External Service State Mapping Discussion Adrian O’Sullivan – Huawei

Objectives • Identify the Existing Service Instance State as maintained by ONAP • Identify

Objectives • Identify the Existing Service Instance State as maintained by ONAP • Identify Existing Operations and associated States supported by ONAP • Identify the Standards equivalent Service Instance State and Operation models - TMF ETSI MEF ? ? ? • Begin to define a mapping from ONAP Internal States to ONAP Externally Exposed Service and Operation States. • BBS Use Case – Overlay Use Case Diagram with State Changes we should expect to see.

SO - Orchestration Status Changes for Casablanca Pre-Casablanca Orchestration Status Object created in A&AI

SO - Orchestration Status Changes for Casablanca Pre-Casablanca Orchestration Status Object created in A&AI (service-instance) Pause (vf-module) Object created in A&AI (network, vf-module, ar) Pending. Activation Resume (vf-module) Create (network, vf-module, ar) Pending. Created Activate Active Object created in A&AI (vnf) Delete-Deactivate Delete-Unassign Pending. Delete Object deleted in A&AI Casablanca Orchestration Status Activate Shell object created in A&AI Inventoried Assign Change. Model Assigned Unassign (Delete in A&AI) Create Change. Model Created Activate Active Deactivate Delete Deactivate • Common and consistent state changes for all service/resource objects • Enable macro and a-la-carte assign operations required for Self-Service * The Key is maintaining the state change of the overall Service in unison with the resource objects that make up the service. i. e. SO needs to maintain the master parent state based on the states of all child resources. Inventoried Service/resource shell object created in A&AI Assigned Service/resource parameters allocated by SDN Controller Created The resource has been created (spun-up) in the AIC Active The service/resource is in active/operational state in the SDN Controller

SO Proposed Orchestration Status State Diagram (Work In Progress For Dublin ) Audit Checks,

SO Proposed Orchestration Status State Diagram (Work In Progress For Dublin ) Audit Checks, Cloud Update, Change Model, Preview & Change of Configuration Assignments Preview & Change of Cloud & Configuration Assignments Audit Check, Configuration Modify, Configuration Backup/Restore, Preview & Change of Configuration Assignments Create Ops Create Assign Unassign Ops Assigned Terminate Delete Configure Ops Activate Base, Incremental Created (Applies to VNF, VF-Module and VNFC/VM resource types) Reset/Rollback Ops Configured Deactivate Active (Applies to VNF, VF-Module and VNFC/VM resource types) * Point 6 needs to be expanded to include how resource type state transitions get propagated to the service state Transitions. Notes: 1. State transitions from one state to another when the operation/action, e. g. configure, is successful. 2. State transitions should not constrain the workflow, supporting multiple pauses / manual handling steps and multiple Ops teams. 3. Pre-view and change of cloud and/or configuration assignments will require platform enhancements: visibility improvements, manual handling improvements, other. 4. Any Contrail and other logic executed today by the SDN Controller during ‘activate’ action will have to be separated out (impact). 5. Need to finalize all operations in above diagram, e. g. e 2 e create/terminate, including LCM operations. 6. Need to capture state transitions for all resource types.

ONAP Service Instance Model - A&AI “service-instance” Once a Service Specification from the Service

ONAP Service Instance Model - A&AI “service-instance” Once a Service Specification from the Service Catalog is requested to be Orchestrated by SO via either /onap/so/infra/e 2 e. Service. Instances/{version}/ or /onap/so/infra/service. Instantiation/{version}/service. Instances SO APIs SO will create a Service Instance in A&AI via PUT /business/customer/{global-customer-id}/service-subscriptions/service-subscription/{service-type}/service-instances/service-instance/{service-instance-id} i. e. In ONAP Service Instance is stored in a Hierarchy of Customer -> Service Type -> Service Instance Current A&AI service-instance from schema v 14 includes: service-instance-id : Uniquely identifies this instance of a service-instance-name : This field will store a name assigned to the service-instance service-type : String capturing type of service-role : String capturing the service role environment-context : This field will store the environment context assigned to the service-instance workload-context : This field will store the workload context assigned to the service-instance created-at : create time of Network Service updated-at : last update of Network Service description : short description for service-instance model-invariant-id : the SDC model invariant id for this service model i. e. the Service. Specification used to instantiate the Service model-version-id : the SDC model version id for this service model i. e. the Service. Specification used to instantiate the Service persona-model-version : persona-model-version: string widget-model-id : the SDC data dictionary widget model. This maps directly to the A&AI widget-model-version : the SDC data dictionary version of the widget model. This maps directly to the A&AI version of the widget. bandwidth-total : Indicates the total bandwidth to be used for this service. vhn-portal-url : URL customers will use to access the v. HN Portal. service-instance-location-id : An identifier that customers assign to the location where this service is being used. resource-version : Used for optimistic concurrency. Must be empty on create, valid on update and delete. Selflink : Path to the controller object. orchestration-status : Orchestration status of this service. input-parameters : String capturing request parameters from SO to pass to Closed Loop. relationship-link : A list of relationship this service instance has to any other objects in A&AI, e. g. to the project this service instance belongs to etc Metadata : Collection of metadatum (key/value pairs) allotted-resources : Represents a slice or partial piece of a resource that gets separately allotted

ONAP Service Orchestrator APIs ( Operations and States ) For E 2 E ONAP

ONAP Service Orchestrator APIs ( Operations and States ) For E 2 E ONAP Services, ONAP supports 4 main operations at a Service Level Create E 2 E service instance : /onap/so/infra/e 2 e. Service. Instances/{version} ( service and resources ) Scale E 2 E service instance : /onap/so/infra/e 2 e. Service. Instances/{version}/{service. Id}/scale Update E 2 E service Instance : /onap/so/infra/e 2 e. Service. Instances/{version}/{service. Id} Delete E 2 E service instance : /onap/so/infra/e 2 e. Service. Instances/{version}/{service. Id} For non E 2 E ONAP Services, ONAP supports Create Service Instance : /onap/so/infra/service. Instantiation/{version}/service. Instances ( just service not resources ) Assign Service Instance : /onap/so/infra/service. Instantiation/{version}/service. Instances/assign Activate Service Instance : /onap/so/infra/service. Instantiation/{version}/service. Instances/{service. Instance. Id}/activate Deactivate Service Instance : /onap/so/infra/service. Instantiation/{version}/service. Instances/{service. Instance. Id}/deactivate Un. Assign Service Instance : /onap/so/infra/service. Instantiation/{version}/service. Instances/{service. Instance. Id}/unassign Delete Service Instance : /onap/so/infra/service. Instantiation/{version}/service. Instances/{service. Instance. Id} Each of these Operations have an associated operation. Id/Request. Id maintained by SO e. g. {"service": {"service. Id": "e 151059 a-d 924 -4629 -845 f-264 db 19 e 50 b 4", "operation. Id": "e 151059 a-d 924 -4629 -845 f-264 db 19 e 50 b 3"}} is returned from Create E 2 E Service Instance req. Each SO Operation. Id for ( Create, Scale etc ) has an associated state , finished/complete, error/failed, processing SO maintains a relationship for each Operation. Id/Request. Id to each Operation current State (processing…). This relation between Operation. ID and Operation State is stored in a separate SO Database, not in A&AI. Service. Id (instance) is stored in A&AI and SO

TMF 638 Service Instance State Machine • Currently ONAP will pass the ONAP “orchestration-status”

TMF 638 Service Instance State Machine • Currently ONAP will pass the ONAP “orchestration-status” State in Service Inventory API, i. e. Inventoried, Assigned, Created, Active • Loosely these could be mapped • Inventoried -> Feasibility Checked • Designed/Reserved -> Assigned • Inactive -> Created • Active -> Active • In ONAP maybe it is safer for us to use our ONAP States ( continue to pass the values externally ( and let external systems do mapping to TMF SID States if needed in whatever way they wish.

TMF 641 – Operation State Model for Order and Order. Item • In ONAP

TMF 641 – Operation State Model for Order and Order. Item • In ONAP we map each Order. Item to a Operation. Id/Request. Id & Service. Instance. Idin ONAP SO. An Order. Item will have a action of either “add”, “modify” or “delete” • We currently map to • Add -> Create Service Instance • Delete -> Delete Service Instance • Modify Service is not really supported in ONAP yet – Future Releases ( operations update , scale, etc ) • We map Operation progress ERROR to FAILED, PROCESSING to INPROGRESS, FINISHED to COMPLETED • We also support ACKNOWLEDGED and REJECTED as states before calling SO.

ETSI SOL 005 Operations and Operation State Model • ETSI SOL 005 specifies operations

ETSI SOL 005 Operations and Operation State Model • ETSI SOL 005 specifies operations • Create NS Identifier • • Instantiate NS • • Scale NS • • Update NS • • Query NS • • Terminate NS • • Delete NS Identifier • • Heal NS • • Get Operation Status • • Subscribe • • Query Subscription Information • • Notify • • Terminate Subscription

ETSI SOL 005 NS Instance States and Operation States • Ns. State of the

ETSI SOL 005 NS Instance States and Operation States • Ns. State of the Service Instance is one of “NOT_INSTANTIATED” or “INSTANTIATED” • Ns. State is hard to map to ONAP Service Instance States - Inventoried -> NOT_INSTANTIATED Designed/Reserved -> NOT_INSTANTIATED Inactive -> INSTANTIATED Active -> INSTANTIATED ETSI MANO - don’t know if NS is active or inactive? • Operation States of an Ns. Lcm. Op. Occ are one of - PROCESSING The LCM operation is currently in execution. - COMPLETED The LCM operation has been completed successfully. PARTIALLY_COMPLETED The LCM operation has been partially completed with acceptable errors. FAILED_TEMP The LCM operation has failed and execution has stopped, but the execution of the operation is not considered to be closed. FAILED The LCM operation has failed and it cannot be retried or rolled back, as it is determined that such action will not succeed. ROLLING_BACK The LCM operation is currently being rolled back. ROLLED_BACK The LCM operation has been successfully rolled back, i. e. The state of the NS prior to the original operation invocation has been restored as closely as possible. - • Operation States are easier to map to order. Item states INPROGRESS, FAILED, COMPLETED, however we there are no Roll Back Order. Item states defined. Also on a order. Item, there is no PARTIALLY_COMPLETED or FAILED_TEMP

BBS Use Case HSIA Service Creation and Activation Expected Service Instance State Changes (TBC)

BBS Use Case HSIA Service Creation and Activation Expected Service Instance State Changes (TBC) orchestration-status : Inventoried orchestration-status : Assigned orchestration-status : Active Note for every red box a Service Inventory State Change Notification would be sent to external OSS/BSS Portal

BBS Use Case Nomadic ONT Service - Expected Service Instance State Changes (TBC) orchestration-status

BBS Use Case Nomadic ONT Service - Expected Service Instance State Changes (TBC) orchestration-status : Inventoried orchestration-status : Assigned orchestration-status : Active Note for every red box a Service Inventory State Change Notification would be sent to external OSS/BSS Portal