blob: 0d950cd3436776457219c5d0134fef51c37343dc [file] [log] [blame]
maximesson94978f42019-11-13 11:53:26 +01001.. This work is licensed under a Creative Commons Attribution 4.0 International License.
2.. SPDX-License-Identifier: CC-BY-4.0
JohnKeeneyb2bc53f2021-12-13 13:00:43 +00003.. Copyright (C) 2021 Nordix
Lathish1279d192019-10-10 13:30:07 +01004
elinuxhenrikc7a0d732020-02-04 14:49:59 +01005Developer Guide
6===============
Lathish1279d192019-10-10 13:30:07 +01007
elinuxhenrik2a6084b2021-06-02 15:31:18 +02008This document provides a quickstart for developers of the Non-RT RIC parts.
9
JohnKeeneyb2bc53f2021-12-13 13:00:43 +000010Additional developer guides are available on the `O-RAN SC NONRTRIC Developer wiki <https://wiki.o-ran-sc.org/display/RICNR/Release+E>`_
elinuxhenrikc7a0d732020-02-04 14:49:59 +010011
JohnKeeney01ea4be2021-05-26 19:32:47 +010012A1 Policy Management Service & SDNC/A1 Controller & A1 Adapter
13--------------------------------------------------------------
maximessoneaaee912020-03-26 16:43:27 +010014
elinuxhenrik2a6084b2021-06-02 15:31:18 +020015The A1 Policy Management Service is implemented in ONAP. For documentation see `ONAP CCSDK documentation <https://docs.onap.org/projects/onap-ccsdk-oran/en/latest/index.html>`_
16and `wiki <https://wiki.onap.org/pages/viewpage.action?pageId=84672221>`_.
elinuxhenrik71061052020-02-03 11:11:37 +010017
PatrikBuhrc6916032021-11-22 16:12:27 +010018Information Coordinator Service
19-------------------------------
20The Information Coordinator Service is a Java 11 web application built using the Spring Framework. Using Spring Boot
elinuxhenrik2a6084b2021-06-02 15:31:18 +020021dependencies, it runs as a standalone application.
PatrikBuhr1e714862021-05-20 12:02:38 +020022
elinuxhenrik2a6084b2021-06-02 15:31:18 +020023Its main functionality is to act as a data subscription broker and to decouple data producer from data consumers.
PatrikBuhr1e714862021-05-20 12:02:38 +020024
PatrikBuhrc6916032021-11-22 16:12:27 +010025See the ./config/README file in the *information-coordinator-service* directory Gerrit repo on how to create and setup
elinuxhenrik2a6084b2021-06-02 15:31:18 +020026the certificates and private keys needed for HTTPS.
27
28Start standalone
29++++++++++++++++
30
PatrikBuhrc6916032021-11-22 16:12:27 +010031The project uses Maven. To start the Information Coordinator Service as a freestanding application, run the following
32command in the *information-coordinator-service* directory:
elinuxhenrik2a6084b2021-06-02 15:31:18 +020033
34 +-----------------------------+
35 | mvn spring-boot:run |
36 +-----------------------------+
37
PatrikBuhr75635392021-12-14 08:31:18 +010038There are a few files that needs to be available to run. These are referred to from the application.yaml file.
39The following properties have to be modified:
40
41* server.ssl.key-store=./config/keystore.jks
42* app.webclient.trust-store=./config/truststore.jks
43* app.vardata-directory=./target
44
elinuxhenrik2a6084b2021-06-02 15:31:18 +020045Start in Docker
46+++++++++++++++
47
PatrikBuhrc6916032021-11-22 16:12:27 +010048To build and deploy the Information Coordinator Service, go to the "information-coordinator-service" folder and run the
elinuxhenrik2a6084b2021-06-02 15:31:18 +020049following command:
50
51 +-----------------------------+
52 | mvn clean install |
53 +-----------------------------+
54
55Then start the container by running the following command:
56
57 +--------------------------------------------------------------------+
PatrikBuhrc6916032021-11-22 16:12:27 +010058 | docker run nonrtric-information-coordinator-service |
elinuxhenrik2a6084b2021-06-02 15:31:18 +020059 +--------------------------------------------------------------------+
PatrikBuhr1e714862021-05-20 12:02:38 +020060
JohnKeeney01ea4be2021-05-26 19:32:47 +010061Initial Non-RT-RIC App Catalogue
62--------------------------------
PatrikBuhr1e714862021-05-20 12:02:38 +020063
JohnKeeney01ea4be2021-05-26 19:32:47 +010064See the README.md file in the *r-app-catalogue* directory in the Gerrit repo for more details how to run the component.
elinuxhenrikc7a0d732020-02-04 14:49:59 +010065
PatrikBuhr75635392021-12-14 08:31:18 +010066DMaaP Adaptor Service
67---------------------
68This is run in the same way as the Information Coordinator Service
69
70The following properties in the application.yaml file have to be modified:
71* server.ssl.key-store=./config/keystore.jks
72* app.webclient.trust-store=./config/truststore.jks
73* app.configuration-filepath=./src/test/resources/test_application_configuration.json
74
75O-DU & O-RU fronthaul recovery
76------------------------------
77
78See the page in Wiki: `O-RU Fronthaul Recovery usecase <https://wiki.o-ran-sc.org/display/RICNR/O-RU+Fronthaul+Recovery+usecase>`_
79
80O-DU Slicing use cases
81----------------------
82
83See the page in Wiki: `O-DU Slice Assurance usecase <https://wiki.o-ran-sc.org/display/RICNR/O-DU+Slice+Assurance+usecase>`_
84
85Helm Manager
86------------
87
88See the page in Wiki: `Release E <https://wiki.o-ran-sc.org/display/RICNR/Release+E>`_
89
JohnKeeney01ea4be2021-05-26 19:32:47 +010090Kubernetes deployment
91=====================
RehanRazac0794522020-07-23 18:35:50 +020092
elinuxhenrik2a6084b2021-06-02 15:31:18 +020093Non-RT RIC can be also deployed in a Kubernetes cluster, `it/dep repository <https://gerrit.o-ran-sc.org/r/admin/repos/it/dep>`_
94hosts deployment and integration artifacts. Instructions and helm charts to deploy the Non-RT-RIC functions in the
95OSC NONRTRIC integrated test environment can be found in the *./nonrtric* directory.
PatrikBuhr75635392021-12-14 08:31:18 +010096
97For more information on installation of NonRT-RIC in Kubernetes, see `Deploy NONRTRIC in Kubernetes <https://wiki.o-ran-sc.org/display/RICNR/Deploy+NONRTRIC+in+Kubernetes>`_
98
elinuxhenrik2a6084b2021-06-02 15:31:18 +020099For more information see `Integration and Testing documentation on the O-RAN-SC wiki <https://docs.o-ran-sc.org/projects/o-ran-sc-it-dep/en/latest/index.html>`_.
PatrikBuhr75635392021-12-14 08:31:18 +0100100