summaryrefslogtreecommitdiffstats
path: root/docs/release/index.rst
blob: 8a51b7c846b07fe617f924bc02ff7d1ddfc0ff74 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
.. This work is licensed under a Creative Commons Attribution 4.0
   International License. http://creativecommons.org/licenses/by/4.0


.. _onap-release-notes:

Jakarta Release Notes
^^^^^^^^^^^^^^^^^^^^^

This page provides the release notes for the ONAP Jakarta release. This
includes details of software versions, known limitations, and outstanding
trouble reports.

Release notes are cumulative for the release, meaning this release note will
have an entry for each Major, Minor, and Maintenance release, if applicable.

Each component within the ONAP solution maintains their own component level
release notes and links to those release notes are provided below.
Details on the specific items delivered in each release by each component is
maintained in the component specific release notes.

Jakarta Major Release 10.0.0
============================

+--------------------------------------+--------------------------------------+
| **Project**                          | Open Network Automation Platform     |
|                                      | (ONAP)                               |
+--------------------------------------+--------------------------------------+
| **Release name**                     | Jakarta                              |
|                                      |                                      |
+--------------------------------------+--------------------------------------+
| **Release version**                  | 10.0.0                               |
|                                      |                                      |
+--------------------------------------+--------------------------------------+
| **Release date**                     | June 9th, 2022                       |
|                                      |                                      |
+--------------------------------------+--------------------------------------+

Features
--------
ONAP Jakarta focusses on:

- Security enhancements in the A&AI, CCSDK, MSB, and MultiCloud projects,
  reducing log4j vulnerability and removing most GPLv3 dependencies
- Deepened O-RAN integration in the OOF SON and CCSDK projects with O-RAN O1
  models and the O-RAN AI Policy interface (consumed downstream by the O-RAN
  Software community)
- Enabling a richer set of day-2 configuration for Cloud-Native Network
  Functions (CNF) through CDS API extensions
- Intent based networking (IBN) for closed loop for E2E Network Slicing
- New functionality in the Configuration Persistence Service (CPS) that allows
  more granular control of configuration-heavy network services like RAN
- Simplification of control loop automation architecture, enabling easy
  deployment of new control modules
- New Network Function lifecycle management features based on real-life use
  cases
- Modeling: Solidified the data model for CNFs using the novel Application
  Service Descriptor (ASD) approach, while continuing alignment with data
  models produced by SDOs such as ETSI
- An overhaul of the policy framework allowing easy composition of control
  loop policies and better observability
- Continued 5G Super Blueprint integrations, including EMCO, Magma 1.6, Anuket
  and KubeRef RI2

Functional Requirements
-----------------------

Increased Cloud Native Functionality
....................................

- Improved synchronization of k8s resources after the creation of the CNF.
  When some change occurs for the CNF in the k8s cluster, k8splugin sends
  a notification to the cnf-adapter which performs an update of the changes
  into A&AI.
- CDS integration with k8splugin

  - The creation of the profile allows the specification of labels and
    additional k8sresource types to be returned by the status API
  - Better Configuration API support including rollback, improved deletion
    of the configuration with or without removal of the configuration
    resources in the cluster
  - Creation of the configuration template without a dedicated helm chart
    which allows for easy update of the override values by configuration API
    without a need to duplicate configuration template helm chart from the
    main Helm chart. The configuration template (Helm chart) is taken from
    the main definition.

- New model for CNF modeling: Application Service Descriptor (ASD) model

E2E Network Slicing
...................

- CPS Integration with SDN-R for RAN Slice allocate and reconfigure scenarios
- E2E network Slicing with CPS is completed for allocation and re-use scenarios
- E2E Closed loop with CPS is functional
- IBN based closed loop with ML MS (POC) and Config DB is functional
- Optimization of cm-handle registration with CPS-DMI Plugin to upload yang
  model
- CPS Integration Stabilization for RAN Slice activate/deactivate  scenarios
- Addition of call to OOF for allocateNSSI to enable TN NSSI reuse in TN NSSMF
- Addition of call to OOF for terminateNxi API to deallocate NSSI
  (without terminating TN NSSI even when NSI is terminated) in TN NSSMF
- Closed-loop enhancement in CCVPN to support Transport Slicing’s closed-loop

Control Loop evolutions
.......................

- Control Loop in TOSCA LCM Improvement: abstract Automation Composition
  Management (ACM) logic with a generic Automation Composition definition,
  isolating Composition logic from ONAP component logic. It elaborates APIs
  that allow integrate with other design systems as well as 3PP component
  integration.
- The current PMSH and TCS control loops are migrated to use an Automation
  Composition approach. Support for Automation Compositions in SDC is also
  introduced.
- A Metadata set allows a global set of metadata containing rules or global
  parameters that all instances of a certain policy type can use. Metadata
  sets are introduced in the Policy Framework in the Jakarta release. This
  means that different rule set implementations can be associated with a
  policy type, which can be used in appropriate situations.
- Introduction of Prometheus for monitoring Policy components so that
  necessary alerts can be easily triggered and possible outages can be
  avoided in production systems.

  - Expose application level metrics in policy components. An end user can
    plug in a Prometheus instance and start listening to the metrics exposed
    by Policy components and either raise alerts or show them on a Grafana
    dashboard for operations team to keep monitoring the health of the system.
  - Improve the policy/api and policy/pap readiness probes to handle database
    failures so that the policy/api and policy/pap kubernetes pods are marked
    ready only if the Policy database pod is ready.
  - Provide sample Grafana dashboards for policy metrics

- Migration of Policy Framework components to Springboot to support easier
  handling, configuration and maintenance.
- Policy Framework Database Configurability. The Policy Framework can be
  configured to use any JDBC-compliant RDBMS and configuration files are
  supplied for the Postgres RDBMS. MariaDB remains the default RDBMS for the
  Policy Framework in ONAP
- System Attribute Improvements

  - Transaction boundaries on REST calls are implemented per REST call
  - JDBC backend uses Spring and Hibernate rather than Eclipselink
  - All GUIs are now included in the policy/gui microservice
  - Documentation is rationalized and cleaned up, testing documentation is
    now complete
  - Scripts are added to make release of the Policy Framework easier

Fault management
................

- DCAE Helm Transformation finalized
- Topic alignment for DCAE microservices:  use standard topics for PM-Mapper,
  Slice-Analysis and KPI-MS

Extended O-RAN Integration
..........................

- The O-RAN A1 interface (from the CCSDK project) provides a flexible way for
  RAN operators to manage wide area RAN network optimization
- Enhanced A1 interface controller and A1 Policy capabilities are now usable
  by any service provider deploying and using ONAP. This functionality is used
  downstream in the O-RAN-SC Non-RealTime RIC project
- The OOF SON project has updated the SDN-R to use O-RAN aligned O1 YANG models
  and the RAN-Sim to use O-RAN aligned O1 YANG models
- Convergence on VES message formats for Performance Management,
  Fault Management, Configuration Management


Controllers
...........

- SDN-C is upgraded to OpenDaylight Phosphorus release
- Enhancements to CCVPN, Network Slicing, and ONAP A1 Interface

Service Design
..............

- Improved support for TOSCA features
- Automation Composition Management model
- Support for large CSAR via S3 storage

Inventory
.........

- Schema updated for CCVPN use case mainly enhancing and bug fixes of the Cloud
  Leased Line (CLL) service

ONAP Operations Manager
.......................

- Introduction of Strimzi Kafka Operator
- Migration of all Kafka native clients to use Strimzi Apache Kafka.
- Disable VID, Portal

Non-Functional Requirements
---------------------------

The following 'non-functional' requirements are followed in the
Jakarta Release:

Best Practice
.............

- ONAP shall use STDOUT for logs collection
- IPv4/IPv6 dual stack support in ONAP
- Containers must crash properly when a failure occurs
- Containers must have no more than one main process
- Application config should be fully prepared before starting the
  application container
- No root (superuser) access to database from application container

Code Quality
............

- Each ONAP project shall improve its CII Badging score by improving input
  validation and documenting it in their CII Badging site
- Each ONAP project shall define code coverage improvements and achieve at
  least 55% code coverage

Security
........

- Python language 3.8
- Java language v11
- All containers must run as non-root user
- Continue hardcoded passwords removal
- Flow management must be activated for ONAP
- Each project updates the vulnerable direct dependencies in their code base
- Pilot for automating the creation of a Software Bill of Materials (SBOM).
  Tools for automated SBOM creation are now rolled into the CI chain of ONAP

Documentation
.............

- Documentation cleaned up. Chapters which include unmaintained projects were
  removed to avoid misunderstandings at the readership
- Projects (repositories) which do not create a stable release branch are no
  longer included in the release documentation. This should help to improve the
  release management process
- Beginning with this release we are providing example configuration files for
  setting up a proper process of documentation creation
- The Interactive Architecture Overview is updated
- The guide to set up a development system for documentation is updated

Tests & Integration
...................

- Create Java and Python base images
- Adapt robot tests to DCAE project changes: Cloudify to Helm migration
- New test: basic_cnf_macro
- Release ONAP data provider tool
- Automate repositories INFO.yaml updates

.. important::
   Some non-functional requirements are not fully finalized. Please, check details
   on the :doc:`Integration<usecases/release_non_functional_requirements>`

Project Specific Release Notes
==============================
ONAP releases are specified by a list of project artifact versions in the
project repositories and Docker container image versions listed in the OOM
Helm charts.

Each project provides detailed :ref:`release notes<doc-releaserepos>`
and prepends to these if/when any updated versions the project team believes
are compatible with a major release are made available.

Documentation
=============
ONAP Jakarta Release provides a set selection of documents,
see :ref:`ONAP Documentation<master_index>`.

The `developer wiki <http://wiki.onap.org>`_ remains a good source of
information on meeting plans and notes from committees, project teams and
community events.

CII Best Practice
=================

ONAP has adopted the `CII Best Practice Badge Program <https://bestpractices.coreinfrastructure.org/en>`_.

- `Badging Requirements <https://github.com/coreinfrastructure/best-practices-badge>`_
- `Badging Status for all ONAP projects <https://bestpractices.coreinfrastructure.org/en/projects?q=onap>`_

In the Jakarta release,

- 100% projects passed 90% of the CII badge
- 85% projects passed the CII badge
- 11% projects passed the CII Silver badge

Project specific details are in the :ref:`release notes<doc-releaserepos>` for
each project.

.. index:: maturity

ONAP Maturity Testing Notes
===========================
For the Jakarta release, ONAP continues to improve in multiple areas of
Scalability, Security, Stability and Performance (S3P) metrics.

In Jakarta the Integration team focussed in

- Automating ONAP Testing to improve the overall quality
- Adding security and E2E tests

More details in :ref:`ONAP Integration Project<onap-integration:master_index>`

Known Issues and Limitations
============================
Known Issues and limitations are documented in each
:ref:`project Release Notes <doc-releaserepos>`.