Configuration Persistence Service (CPS) for R8 Honolulu

Configuration Persistence Service (CPS) for R8 Honolulu

Use Case Overview & Description

The Configuration Persistence Service is a Common Data Layer Service providing database functionality to persist network element run-time information. CPS will perform key DB operations such as syncing data with xNFs. CPS enables OSS configuration, optimization and E2E LCM operations. It will be a new Platform Component in R8.

State Management DB (Bell) project is aimed at tracking states of network elements in a network.

Use Case Key Information

TOPIC

DESCRIPTION

WIKI PAGE

Requirements Proposal

This is a link to the requirements proposal made on the Requirements Sub-committee

Honolulu release - functional requirements proposed list

Architecture S/C info

Information on the Architecture sub-committee presentation

 

Prior Project "Base" Wiki

Link to the "base" wiki for the Use Case, or work from a prior release.

Configuration Persistence Service Project

Requirements Jira (REQ-###) Ticket

Link to the REQ Jira ticket for this use case

https://lf-onap.atlassian.net/browse/REQ-427

Key Use Case Leads & Contacts

USE CASE LEAD@Toine Siebelink  (PTL)

USE CASE LEAD (State Management work): @Former user (Deleted)

USE KEY CONTACTS:

 

Meetings Register & Recordings

Link to Use Case Team meetings.

Configuration Persistence Service Meeting Notes & Recordings

 

CPS team meetings 2021

Configuration Persistence Service Meeting Notes & Recordings 2021

Architectural Issues & Decisions

 

Issues decisions and assumptions

BUSINESS DRIVER

This section describes Business Drivers needs. These business drivers are presented on the Requirements Sub-committee and should also be put into the release requirements sub-committee page.

EXECUTIVE SUMMARY - The Data Persistency Service is a new platform component that is designed to serve as a data repository for Run-time data that needs to be persistent. As a stand-alone ONAP component, this project provides data layer services to other ONAP platform components and use cases that require persistent configuration or operational data. The R6 development will be enhanced as well.      

BUSINESS IMPACT - The ability for service operators to visualize and manage data in a RAN network (PNFs, VNFs, and logical constructs) with ONAP is a critical business function because they are key Life Cycle Management (LCM) and OA&M operations. The project has business impacts to enhance the operation of data-handling within ONAP by providing efficient data layer services.

BUSINESS MARKETS - This project applies to any domain (wireless, transport, optical, and wireline) that ONAP may manage. It is not a market or geographical specific capability. It is expected that scaled ONAP installations such as Edge & Core ONAP deployments will also deploy the database across each installation.

FUNDING/FINANCIAL IMPACTS - This project represents a large potential Operating Expense (OPEX) savings for operators because of the ability to configure networks saving time and expenses.

ORGANIZATION MGMT, SALES STRATEGIES - There is no additional organizational management or sales strategies for this use case outside of a service providers "normal" ONAP deployment and its attendant organizational resources from a service provider.

Development Status

PROJECT

PTL

User Story / Epic

Requirement

A&AI

@William Reehil

 

 

AAF

@Jonathan Gathman

 

 

APPC

@Takamune Cho

 

 

CLAMP

@Gervais-Martial Ngueko

 

 

CC-SDK

@Dan Timoney

 

 

CPS

@Toine Siebelink

https://lf-onap.atlassian.net/browse/REQ-427

 

DCAE

@Vijay Kumar

 

 

DMaaP

@Mandar Sawant

 

 

External API

@Adrian OSullivan

 

 

HOLMES

@Guangrong Fu

 

 

MODELING

@Hui Deng

 

 

Multi-VIM /

Cloud

@Bin Yang

 

 

OOF

@krishna moorthy

 

 

OOM

@Sylvain Desbureaux

 

 

POLICY

@James Hahn

 

 

PORTAL

@Sunder Tattavarada

 

 

SDN-C

@Dan Timoney

 

 

SDC

@ChrisC

 

 

SO

@Seshu Kumar Mudiganti

 

 

VID

@Ikram Ikramullah

 

 

VF-C

@Yuanhong Deng

 

 

VNFRQTS

@Steven wright

 

 

VNF-SDK

@victor gao

 

 

CDS

@Yuriy Malakov

 

 

End to End Network Slicing (Use Case)

@Kamel Idir

@Swaminathan Seetharaman

 

 

OOF SON (PCI) Use Case

@Swaminathan Seetharaman

N.K. Shankar

Lin Meng

 

 

List of PTLs:Approved Projects

*Each Requirement should be tracked by its own User Story in JIRA 

SUPPORTING FILES

Supporting files for R8 CPS

Description

File

Description

File

CPS slides for DDF Oct 15, 2020 

ConfigurationPersistenceSvcDDF_202010Oc14v12.pptx

CPS Concepts

CPS Concepts_202010Oc22v3.pptx

 

 

USE CASE DIAGRAM

Use cases define how different users interact with a system under design.  Each use case represents an action that may be performed by a user (defined in UML as an Actor with a user persona).

Use Case Functional Definitions

Use Case Title

Configuration Persistence SERVICE

Actors (and System Components)

SDC, A&AI, C&PS, Use Cases (PCI, E2E NS, A1E, Mirror), DBMS, TSDB, xNF, DCAE, DMaaP

Description

Configuration Persistence Service is a platform component that is designed to serve as a data repository for Run time data that needs to be persistent. It is characterized by the following.

    DATA REPOSITORY -  The types of data that is stored in the Run-Time data storage repository for:

  1.    CONFIGURATION PARAMETERS - These are configuration parameters that are used by xNFs during PnP, installation, commissioning.

  2.    OPERATIONAL PARAMETERS - These are parameters that are derived, discovered, computed that are used by xNFs during run time AFTER the xNF becomes operational i.e. AFTER it has "booted up", been installed, configured. These operational parameters are Exo-inventory information, meaning it is information that doesn't belong in A&AI.

  3.    NETWORK ELEMENT POLICY INFORMATION - NE policy type information used by micro-service.

  4.    APPLICATION INFORMATION - Information related to operational parameter.

    DATA LAKE - Architecturally, the Configuration Persistence Service is designed to be a common services data layer which can serve as a data lake to other run time entities (ONAP components or external tools).

    CPS FUNCTIONS - The Configuration Persistence Service enables functionality to be performed by other entities. It will ENABLE the capability of another components or external tools within/or external to ONAP to perform the functions.

  •         CONFIGURATION MANAGEMENT FUNCTIONS - Enables OSS configuration, optimization, and LCM operations.

  •         SYNCING - The Configuration Persistence Service enables the ability to sync data between initial and delta changes ONAP & the xNFs.

  •         DATA RECOVERY - It will allow for the recovery of data once a source of truth is defined.

  •         UPDATES - It will allow for updates, delta changes, and incremental updates to be performed.

  •         DATA HISTORY - See a history of changes in data including versioning of the data, updates, roll back, restoration, and time series management.

  •         AUDITING - Auditing of parameters against a "golden" template. It itself stores & provides the data for auditing. Consistency checks.

  •         ROLL BACK - It will allow for rollback back of entire DB to "save points" or recovery points.

  •         RESTORATION - It will allow for the recovery and restoration of data records to a fall back point.

  •         ACCESS CONTROL - A security topic, which allows the definition of policies, of who and what they can update.

  •         TOPOLOGY TRAVERSAL - It will enable the ability for something to traverse the relationship between data elements.

  •         MODEL ADAPTION - Allows for the adaptation or transformation of models from other sources (e.g. ORAN or 3GPP models

Points of Contact

Use Case Lead: @Benjamin Cheung  @Tony Finnerty  @Joanne Liu Rudel

Key Use Case Members: @Toine Siebelink  @Former user (Deleted)  @johnsont

Code Contributors: (same as above)

Preconditions

DEPLOYMENT - The C&PS container/project is deployed and up and running.

AUTHENTICATION - Authentication is performed by C&PS to allow access and interaction with other ONAP platform components.

Triggers / Begins when

(See "Flow Step" for Design Time Activities, and Initial Database Setup below in the Steps/flows)

 

Steps / Flows (success)

Steps in Basic Operation and setup of C&PS.

SETUP FLOW STEP

SETUP STEP DESCRIPTION

(1) STND DEFINED VES UPDATE

(1) Standard defined VES event comes in through VES event, VES listener.

This is then published onto DMaaP and C&PS get for that topic, namespace 3GPP_Configuration to write updates to the C&PS Database.

Information coming into the C&PS via Stnd-Defined VES need to be "mapped" to the appropriate xNF and record.

(2) A&AI SYNCHRONIZATION

(2) A&AI Updates are made in order to update the existing xNF in the system

if a xNF is created or deleted the corresponding records in C&PS DB need to be created/deleted.

A&AI publishes onto DMaaP when an A&AI event occurs which updates the active xNFs available to the network.

(3) MICRO-SERVICE UPDATE

(3) Micro-services can update information in C&PS DB

(4A) ONAP PLATFORM

COMPONENT INTERACTIONS

(4A) Other ONAP platform components such as the controllers might read or write information into the C&PS DB.



(4B) EXTERNAL ENTITIES

(4B) External entities can interact with the C&PS DB through External API

DESIGN TIME ACTIVITIES (SD&C) (SETUP)

(Design time), (Setup DB) Yang Model development E.g.: ORAN specification Yang Model in line with 3GPP. SQL structure.

INITIAL A&AI GETALL (SETUP)

Initial A&AI GetAll nodes is used to setup the existing xNFs that exist in the system

INITIAL DATABASE SETUP

(Run Time)

The C&PS Database is initially setup.

RUN-TIME OPERATION

RUN-TIME DESCRIPTION

SDC CSAR LISTENER (SETUP)

The C&PS project listens for the Service CSAR packages which contain the schemas for resources associated with those services.

 

Post-conditions

SETUP OF C&PS - C&PS database is setup with initial schema

RUN-TIME OPERATION OF C&PS - the above run-time types of actions/operations (1) - (4A/B) above in the flow steps results in updates of C&PS or the interacting entity successfully retrieving information from C&PS DB.

Alternate / Exception Paths

The following describes error cases or conditions for each of the flow steps above:

SETUP FLOW STEP

EXCEPTIONS / ALTERNATE / CORNER CASES / ERRORS

(1) STND DEFINED VES UPDATE

Inability to get VES event from namespace DMaaP Bus

Errors within the Stnd-Def VES event

(2) A&AI SYNCHRONIZATION

Inability to perform A&AI Event update

Errors in A&AI Event Update

(3) MICRO-SERVICE UPDATE

Inability of micro-service to update C&PS DB

Errors in C&PS DB Update

(4A) ONAP PLATFORM COMPONENT

Inability of component to update C&PS DB

Errors in C&PS DB Update

(4B) EXTERNAL ENTITIES

Inability of entity to update C&PS DB

Errors in C&PS DB Update

Errors in API/interface interaction problem.

DESIGN TIME ACTIVITIES (SD&C) (SETUP)

Problems in SD&C

INITIAL A&AI GETALL (SETUP)

Inability to perform A&AI GetAll

Errors in A&AI GetAll

INITIAL DATABASE SETUP

(Run Time)

YANG models, schema setup problems

Setting up the C&PS DB errors.

RUN-TIME OPERATION

EXCEPTIONS / ALTERNATE / CORNER CASES / ERRORS

SDC CSAR LISTENER (SETUP)

If the SDC CSAR package is irretrievable from DMaaP.

If there is an Error in the SDC CSAR package

 

Related Use Cases

These are associated use cases or requirements depending on CPS

Use Case

Link or Description

OOF SON PCI Use Case

The OOF SON PCI is a 5G RAN Wireless use case spanning R3 through R7 and beyond:

R7 OOF SON Use Case

End to End Network Slicing

E2E Network slicing is a 5G RAN Wireless application

E2E Network Slicing Use Case in R7 Guilin

 

Assumptions

 

Tools / References / Artifacts

 

TESTING

Current Status

  1. Testing Blockers

  2. High visibility bugs

  3. Other issues for testing that should be seen at a summary level

  4. Where possible, always include JIRA links

End to End flow to be Tested

**This should be a summary level Sequence diagram done in Gliffy** 

Test Cases and Status

1

There should be a test case for each item in the sequence diagram

NOT YET TESTED

2

create additional requirements as needed for each discreet step

COMPLETE

3

Test cases should cover entire Use Case

PARTIALLY COMPLETE

 Test Cases should include enough detail for testing team to implement the test

 FAILED