improve doc navigation (project specific release notes)
[doc.git] / docs / release / index.rst
1 .. This work is licensed under a Creative Commons Attribution 4.0
2    International License. http://creativecommons.org/licenses/by/4.0
3
4
5 .. _onap-release-notes:
6
7 ONAP 'Jakarta' Release Notes
8 ============================
9
10 This page provides the release notes for the ONAP 'Jakarta' release. This
11 includes details of software versions, known limitations, and outstanding
12 trouble reports.
13
14 Release notes are cumulative for the release, meaning this release note will
15 have an entry for each Major, Minor, and Maintenance release, if applicable.
16
17 Each component within the ONAP solution maintains their own component level
18 release notes and links to those release notes are provided below.
19 Details on the specific items delivered in each release by each component is
20 maintained in the component specific release notes.
21
22 Jakarta Major Release 10.0.0
23 ----------------------------
24
25 +--------------------------------------+--------------------------------------+
26 | **Project**                          | Open Network Automation Platform     |
27 |                                      | (ONAP)                               |
28 +--------------------------------------+--------------------------------------+
29 | **Release name**                     | Jakarta                              |
30 |                                      |                                      |
31 +--------------------------------------+--------------------------------------+
32 | **Release version**                  | 10.0.0                               |
33 |                                      |                                      |
34 +--------------------------------------+--------------------------------------+
35 | **Release date**                     | 2022, June 30th                      |
36 |                                      |                                      |
37 +--------------------------------------+--------------------------------------+
38
39 Features
40 ^^^^^^^^
41 ONAP Jakarta focusses on:
42
43 - Security enhancements in the A&AI, CCSDK, MSB, and MultiCloud projects,
44   reducing log4j vulnerability and removing most GPLv3 dependencies
45 - Deepened O-RAN integration in the OOF SON and CCSDK projects with O-RAN O1
46   models and the O-RAN AI Policy interface (consumed downstream by the O-RAN
47   Software community)
48 - Enabling a richer set of day-2 configuration for Cloud-Native Network
49   Functions (CNF) through CDS API extensions
50 - Intent based networking (IBN) for closed loop for E2E Network Slicing
51 - New functionality in the Configuration Persistence Service (CPS) that allows
52   more granular control of configuration-heavy network services like RAN
53 - Simplification of control loop automation architecture, enabling easy
54   deployment of new control modules
55 - New Network Function lifecycle management features based on real-life use
56   cases
57 - Modeling: Solidified the data model for CNFs using the novel Application
58   Service Descriptor (ASD) approach, while continuing alignment with data
59   models produced by SDOs such as ETSI
60 - An overhaul of the policy framework allowing easy composition of control
61   loop policies and better observability
62 - Continued 5G Super Blueprint integrations, including EMCO, Magma 1.6, Anuket
63   and KubeRef RI2
64
65 Functional Requirements
66 ^^^^^^^^^^^^^^^^^^^^^^^
67
68 Increased Cloud Native Functionality
69 """"""""""""""""""""""""""""""""""""
70
71 - Improved synchronization of k8s resources after the creation of the CNF.
72   When some change occurs for the CNF in the k8s cluster, k8splugin sends
73   a notification to the cnf-adapter which performs an update of the changes
74   into A&AI.
75 - CDS integration with k8splugin
76
77   - The creation of the profile allows the specification of labels and
78     additional k8sresource types to be returned by the status API
79   - Better Configuration API support including rollback, improved deletion
80     of the configuration with or without removal of the configuration
81     resources in the cluster
82   - Creation of the configuration template without a dedicated helm chart
83     which allows for easy update of the override values by configuration API
84     without a need to duplicate configuration template helm chart from the
85     main Helm chart. The configuration template (Helm chart) is taken from
86     the main definition.
87
88 - New model for CNF modeling: Application Service Descriptor (ASD) model
89
90 E2E Network Slicing
91 """""""""""""""""""
92
93 - CPS Integration with SDN-R for RAN Slice allocate and reconfigure scenarios
94 - E2E network Slicing with CPS is completed for allocation and re-use scenarios
95 - E2E Closed loop with CPS is functional
96 - IBN based closed loop with ML MS (POC) and Config DB is functional
97 - Optimization of cm-handle registration with CPS-DMI Plugin to upload yang
98   model
99 - CPS Integration Stabilization for RAN Slice activate/deactivate  scenarios
100 - Addition of call to OOF for allocateNSSI to enable TN NSSI reuse in TN NSSMF
101 - Addition of call to OOF for terminateNxi API to deallocate NSSI
102   (without terminating TN NSSI even when NSI is terminated) in TN NSSMF
103 - Closed-loop enhancement in CCVPN to support Transport Slicing’s closed-loop
104
105 Control Loop evolutions
106 """""""""""""""""""""""
107
108 - Control Loop in TOSCA LCM Improvement: abstract Automation Composition
109   Management (ACM) logic with a generic Automation Composition definition,
110   isolating Composition logic from ONAP component logic. It elaborates APIs
111   that allow integrate with other design systems as well as 3PP component
112   integration.
113 - The current PMSH and TCS control loops are migrated to use an Automation
114   Composition approach. Support for Automation Compositions in SDC is also
115   introduced.
116 - A Metadata set allows a global set of metadata containing rules or global
117   parameters that all instances of a certain policy type can use. Metadata
118   sets are introduced in the Policy Framework in the Jakarta release. This
119   means that different rule set implementations can be associated with a
120   policy type, which can be used in appropriate situations.
121 - Introduction of Prometheus for monitoring Policy components so that
122   necessary alerts can be easily triggered and possible outages can be
123   avoided in production systems.
124
125   - Expose application level metrics in policy components. An end user can
126     plug in a Prometheus instance and start listening to the metrics exposed
127     by Policy components and either raise alerts or show them on a Grafana
128     dashboard for operations team to keep monitoring the health of the system.
129   - Improve the policy/api and policy/pap readiness probes to handle database
130     failures so that the policy/api and policy/pap kubernetes pods are marked
131     ready only if the Policy database pod is ready.
132   - Provide sample Grafana dashboards for policy metrics
133
134 - Migration of Policy Framework components to Springboot to support easier
135   handling, configuration and maintenance.
136 - Policy Framework Database Configurability. The Policy Framework can be
137   configured to use any JDBC-compliant RDBMS and configuration files are
138   supplied for the Postgres RDBMS. MariaDB remains the default RDBMS for the
139   Policy Framework in ONAP
140 - System Attribute Improvements
141
142   - Transaction boundaries on REST calls are implemented per REST call
143   - JDBC backend uses Spring and Hibernate rather than Eclipselink
144   - All GUIs are now included in the policy/gui microservice
145   - Documentation is rationalized and cleaned up, testing documentation is
146     now complete
147   - Scripts are added to make release of the Policy Framework easier
148
149 Fault management
150 """"""""""""""""
151
152 - DCAE Helm Transformation finalized
153 - Topic alignment for DCAE microservices:  use standard topics for PM-Mapper,
154   Slice-Analysis and KPI-MS
155
156 Extended O-RAN Integration
157 """"""""""""""""""""""""""
158
159 - The O-RAN A1 interface (from the CCSDK project) provides a flexible way for
160   RAN operators to manage wide area RAN network optimization
161 - Enhanced A1 interface controller and A1 Policy capabilities are now usable
162   by any service provider deploying and using ONAP. This functionality is used
163   downstream in the O-RAN-SC Non-RealTime RIC project
164 - The OOF SON project has updated the SDN-R to use O-RAN aligned O1 YANG models
165   and the RAN-Sim to use O-RAN aligned O1 YANG models
166 - Convergence on VES message formats for Performance Management,
167   Fault Management, Configuration Management
168
169
170 Controllers
171 """""""""""
172
173 - SDN-C is upgraded to OpenDaylight Phosphorus release
174 - Enhancements to CCVPN, Network Slicing, and ONAP A1 Interface
175
176 Service Design
177 """"""""""""""
178
179 - Improved support for TOSCA features
180 - Automation Composition Management model
181 - Support for large CSAR via S3 storage
182
183 Inventory
184 """""""""
185
186 - Schema updated for CCVPN use case mainly enhancing and bug fixes of the Cloud
187   Leased Line (CLL) service
188
189 ONAP Operations Manager
190 """""""""""""""""""""""
191
192 - Introduction of Strimzi Kafka Operator
193 - Migration of all Kafka native clients to use Strimzi Apache Kafka.
194 - Disable VID, Portal
195
196 Non-Functional Requirements
197 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
198
199 The following 'non-functional' requirements are followed in the
200 Jakarta Release:
201
202 Best Practice
203 """""""""""""
204
205 - ONAP shall use STDOUT for logs collection
206 - IPv4/IPv6 dual stack support in ONAP
207 - Containers must crash properly when a failure occurs
208 - Containers must have no more than one main process
209 - Application config should be fully prepared before starting the
210   application container
211 - No root (superuser) access to database from application container
212
213 Code Quality
214 """"""""""""
215
216 - Each ONAP project shall improve its CII Badging score by improving input
217   validation and documenting it in their CII Badging site
218 - Each ONAP project shall define code coverage improvements and achieve at
219   least 55% code coverage
220
221 Security
222 """"""""
223
224 - Python language 3.8
225 - Java language v11
226 - All containers must run as non-root user
227 - Continue hardcoded passwords removal
228 - Flow management must be activated for ONAP
229 - Each project updates the vulnerable direct dependencies in their code base
230 - Pilot for automating the creation of a Software Bill of Materials (SBOM).
231   Tools for automated SBOM creation are now rolled into the CI chain of ONAP
232
233 Documentation
234 """""""""""""
235
236 - Documentation cleaned up. Chapters which include unmaintained projects were
237   removed to avoid misunderstandings at the readership
238 - Projects (repositories) which do not create a stable release branch are no
239   longer included in the release documentation. This should help to improve the
240   release management process
241 - Beginning with this release we are providing example configuration files for
242   setting up a proper process of documentation creation
243 - The Interactive Architecture Overview is updated
244 - The guide to set up a development system for documentation is updated
245
246 Tests & Integration
247 """""""""""""""""""
248
249 - Create Java and Python base images
250 - Adapt robot tests to DCAE project changes: Cloudify to Helm migration
251 - New test: basic_cnf_macro
252 - Release ONAP data provider tool
253 - Automate repositories INFO.yaml updates
254
255 .. important::
256    Some non-functional requirements are not fully finalized. Please, check details
257    on the :doc:`Integration<usecases/release_non_functional_requirements>`
258
259 Documentation Sources
260 ^^^^^^^^^^^^^^^^^^^^^
261
262 The formal ONAP 'Jakarta' Release Documentation is available
263 in :ref:`ReadTheDocs<master_index>`.
264
265 The `Developer Wiki <http://wiki.onap.org>`_ remains a good source of
266 information on meeting plans and notes from committees, project teams and
267 community events.
268
269 CII Best Practice
270 ^^^^^^^^^^^^^^^^^
271
272 ONAP has adopted the `CII Best Practice Badge Program <https://bestpractices.coreinfrastructure.org/en>`_.
273
274 - `Badging Requirements <https://github.com/coreinfrastructure/best-practices-badge>`_
275 - `Badging Status for all ONAP projects <https://bestpractices.coreinfrastructure.org/en/projects?q=onap>`_
276
277 In the Jakarta release,
278
279 - 100% projects passed 90% of the CII badge
280 - 85% projects passed the CII badge
281 - 11% projects passed the CII Silver badge
282
283 Project specific details are in the :ref:`release notes<doc-releaserepos>` for
284 each project.
285
286 .. index:: maturity
287
288 ONAP Maturity Testing Notes
289 ^^^^^^^^^^^^^^^^^^^^^^^^^^^
290 For the Jakarta release, ONAP continues to improve in multiple areas of
291 Scalability, Security, Stability and Performance (S3P) metrics.
292
293 In Jakarta the Integration team focussed in
294
295 - Automating ONAP Testing to improve the overall quality
296 - Adding security and E2E tests
297
298 More details in :ref:`ONAP Integration Project<onap-integration:master_index>`
299
300 Known Issues and Limitations
301 ^^^^^^^^^^^^^^^^^^^^^^^^^^^^
302 Known Issues and limitations are documented in each
303 :ref:`project Release Notes <doc-releaserepos>`.