blob: a3c3422011fce926b1f6db104dc05cb46e9862e0 [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
elinuxhenrik6b45b052022-01-12 16:12:45 +010010Additional 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
elinuxhenrik6b45b052022-01-12 16:12:45 +010015The 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>`_.
elinuxhenrik2a6084b2021-06-02 15:31:18 +020016and `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---------------------
elinuxhenrik6b45b052022-01-12 16:12:45 +010068
69This Java implementation is run in the same way as the Information Coordinator Service.
PatrikBuhr75635392021-12-14 08:31:18 +010070
71The following properties in the application.yaml file have to be modified:
72* server.ssl.key-store=./config/keystore.jks
73* app.webclient.trust-store=./config/truststore.jks
74* app.configuration-filepath=./src/test/resources/test_application_configuration.json
75
elinuxhenrik6b45b052022-01-12 16:12:45 +010076DMaaP Mediator Producer
77-----------------------
78
79To build and run this Go implementation, see the README.md file under the folder "dmaap-mediator-producer" in the "nonrtric" repo.
80
PatrikBuhr75635392021-12-14 08:31:18 +010081O-DU & O-RU fronthaul recovery
82------------------------------
83
elinuxhenrik6b45b052022-01-12 16:12:45 +010084See the page in Wiki: `O-RU Fronthaul Recovery usecase <https://wiki.o-ran-sc.org/display/RICNR/O-RU+Fronthaul+Recovery+usecase>`_.
PatrikBuhr75635392021-12-14 08:31:18 +010085
86O-DU Slicing use cases
87----------------------
88
elinuxhenrik6b45b052022-01-12 16:12:45 +010089See the page in Wiki: `O-DU Slice Assurance usecase <https://wiki.o-ran-sc.org/display/RICNR/O-DU+Slice+Assurance+usecase>`_.
PatrikBuhr75635392021-12-14 08:31:18 +010090
91Helm Manager
92------------
93
elinuxhenrik6b45b052022-01-12 16:12:45 +010094See the page in Wiki: `Release E <https://wiki.o-ran-sc.org/display/RICNR/Release+E>`_.
PatrikBuhr75635392021-12-14 08:31:18 +010095
JohnKeeney01ea4be2021-05-26 19:32:47 +010096Kubernetes deployment
97=====================
RehanRazac0794522020-07-23 18:35:50 +020098
elinuxhenrik6b45b052022-01-12 16:12:45 +010099Non-RT RIC can be also deployed in a Kubernetes cluster, `it/dep repository <https://gerrit.o-ran-sc.org/r/admin/repos/it/dep>`_.
elinuxhenrik2a6084b2021-06-02 15:31:18 +0200100hosts deployment and integration artifacts. Instructions and helm charts to deploy the Non-RT-RIC functions in the
101OSC NONRTRIC integrated test environment can be found in the *./nonrtric* directory.
PatrikBuhr75635392021-12-14 08:31:18 +0100102
elinuxhenrik6b45b052022-01-12 16:12:45 +0100103For 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>`_.
PatrikBuhr75635392021-12-14 08:31:18 +0100104
elinuxhenrik2a6084b2021-06-02 15:31:18 +0200105For 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 +0100106