After researching on NFs from different vendors, no matter NFs are PNF, VNF or CNF, they are designed as distributed applications, which usually contains functional modules including interface module, data storage module, operation and management module, NF logic processing modules.
Functional modules' description are as follows. Different NFs from different vendors may have difference on design and implementation, but they almost follow this similar design paradigm.
Among all these functional modules, OAM module is one of the most commonly used module within different NFs, which makes it possible to be shared among NFs as a PaaS service. Providing OAM module as a platform capability can relief the developers from spending too much effort on non-NF logic design and development. So in XGVela release 1, cloud native OAM for NF is planned to be delivered.
Figure 1: Draft High-level Architecture of cloud native OAM module
Cloud native OAM is a group of operation and management functionalities, which is treated as a group of tightly related PaaS capabilities running as containers. This module can provide local O&M functionalities for cloud native NFs on edge as well as O&M data service capablity.
Cloud native OAM is planned to be designed as three logical layers: agent layer, processing layer and data sharing layer.
Cloud native OAM module planned to be designed as a Telco PaaS capability. Newly developed code and existing software integration will both exist.
Potential software integration will include Prometheus as performance metrics management backend, EFK as log management backend, Kafka as message queue, MySQL as NF data storage backend. XGVela TMaaS will also be integrated to provide NF topology.
Functional features to be delivered in Release 11.2022:
Topology management (Mavenir code): A function that provides the topology of NF, NF microservices and related deployment.
NF configuration management (new): A function that manages that configuration of NFs. It supports getting configuration files, version management of configuration, configuration file storage, and configuring NFs. The northbound API provided supports northbound management ystems to get historical configuration list, get in-use configuration of target NF, and make configuration update.
NF performance management (Prometheus integration): A function that manages the performace data of NFs. It supports collecting performance data from NFs, provide data subscription functionality through northbound API. As promrtheus is commonly used for perfomance metrics data management, it will be integrated to implement this function.
NF alarm management (new): A function that collects and store alarm of NFs, and report them to management systems. This function will also processing the alarm data by alarm data supplement, duplicate alarm remove, etc.
NF log management (EFK integration): A function that collects and store logs of NFs. EFK integratoin prefered.
Other supporting functions and tasks are:
NOTE:Green blocks in Figure 1 are OAM functions plans to be delivered in Release 11.2022. Pink blocks are necessary for other OAM functions to operate propoerly but whose source code will not be open sources. Gray blocks are within OAM scope which will be delivered in future release.
Link to features in Project candidate list: No 10, 11, 12, 13
Action | Planned time |
---|---|
Project proposal and detailed plans | July |
Functional & Interface Design | July |
Development plan and start coding | July/August |
Code delivery | Late September/ early October |
Test | Middle October |
Document delivery | Late October/ Early November |
All project pages should be tagged with a label 'projectname-project' example 'XGVela Operator Framework' is labeled 'operator-project'
This is a necessary step so that action items can be assigned between the PTL and the Committers of the project. Edit the "Task Report" confluence macro below and change the label field to match your project tag.
Project files can be uploaded here. Please also follow the same steps for assigning a project label. Update the below macro field with your project label (tag) and remember to that when uploading files they should also be labeled with the same tag so they are easily filtered. Files that are attached directly to a page with an existing label (tag) 'should' be automatically labeled.