maximesson | 94978f4 | 2019-11-13 11:53:26 +0100 | [diff] [blame] | 1 | .. This work is licensed under a Creative Commons Attribution 4.0 International License. |
| 2 | .. SPDX-License-Identifier: CC-BY-4.0 |
JohnKeeney | b2bc53f | 2021-12-13 13:00:43 +0000 | [diff] [blame] | 3 | .. Copyright (C) 2021 Nordix |
Lathish | 1279d19 | 2019-10-10 13:30:07 +0100 | [diff] [blame] | 4 | |
elinuxhenrik | c7a0d73 | 2020-02-04 14:49:59 +0100 | [diff] [blame] | 5 | Developer Guide |
| 6 | =============== |
Lathish | 1279d19 | 2019-10-10 13:30:07 +0100 | [diff] [blame] | 7 | |
elinuxhenrik | 2a6084b | 2021-06-02 15:31:18 +0200 | [diff] [blame] | 8 | This document provides a quickstart for developers of the Non-RT RIC parts. |
| 9 | |
elinuxhenrik | 6b45b05 | 2022-01-12 16:12:45 +0100 | [diff] [blame^] | 10 | Additional developer guides are available on the `O-RAN SC NONRTRIC Developer wiki <https://wiki.o-ran-sc.org/display/RICNR/Release+E>`_. |
elinuxhenrik | c7a0d73 | 2020-02-04 14:49:59 +0100 | [diff] [blame] | 11 | |
JohnKeeney | 01ea4be | 2021-05-26 19:32:47 +0100 | [diff] [blame] | 12 | A1 Policy Management Service & SDNC/A1 Controller & A1 Adapter |
| 13 | -------------------------------------------------------------- |
maximesson | eaaee91 | 2020-03-26 16:43:27 +0100 | [diff] [blame] | 14 | |
elinuxhenrik | 6b45b05 | 2022-01-12 16:12:45 +0100 | [diff] [blame^] | 15 | The 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>`_. |
elinuxhenrik | 2a6084b | 2021-06-02 15:31:18 +0200 | [diff] [blame] | 16 | and `wiki <https://wiki.onap.org/pages/viewpage.action?pageId=84672221>`_. |
elinuxhenrik | 7106105 | 2020-02-03 11:11:37 +0100 | [diff] [blame] | 17 | |
PatrikBuhr | c691603 | 2021-11-22 16:12:27 +0100 | [diff] [blame] | 18 | Information Coordinator Service |
| 19 | ------------------------------- |
| 20 | The Information Coordinator Service is a Java 11 web application built using the Spring Framework. Using Spring Boot |
elinuxhenrik | 2a6084b | 2021-06-02 15:31:18 +0200 | [diff] [blame] | 21 | dependencies, it runs as a standalone application. |
PatrikBuhr | 1e71486 | 2021-05-20 12:02:38 +0200 | [diff] [blame] | 22 | |
elinuxhenrik | 2a6084b | 2021-06-02 15:31:18 +0200 | [diff] [blame] | 23 | Its main functionality is to act as a data subscription broker and to decouple data producer from data consumers. |
PatrikBuhr | 1e71486 | 2021-05-20 12:02:38 +0200 | [diff] [blame] | 24 | |
PatrikBuhr | c691603 | 2021-11-22 16:12:27 +0100 | [diff] [blame] | 25 | See the ./config/README file in the *information-coordinator-service* directory Gerrit repo on how to create and setup |
elinuxhenrik | 2a6084b | 2021-06-02 15:31:18 +0200 | [diff] [blame] | 26 | the certificates and private keys needed for HTTPS. |
| 27 | |
| 28 | Start standalone |
| 29 | ++++++++++++++++ |
| 30 | |
PatrikBuhr | c691603 | 2021-11-22 16:12:27 +0100 | [diff] [blame] | 31 | The project uses Maven. To start the Information Coordinator Service as a freestanding application, run the following |
| 32 | command in the *information-coordinator-service* directory: |
elinuxhenrik | 2a6084b | 2021-06-02 15:31:18 +0200 | [diff] [blame] | 33 | |
| 34 | +-----------------------------+ |
| 35 | | mvn spring-boot:run | |
| 36 | +-----------------------------+ |
| 37 | |
PatrikBuhr | 7563539 | 2021-12-14 08:31:18 +0100 | [diff] [blame] | 38 | There are a few files that needs to be available to run. These are referred to from the application.yaml file. |
| 39 | The 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 | |
elinuxhenrik | 2a6084b | 2021-06-02 15:31:18 +0200 | [diff] [blame] | 45 | Start in Docker |
| 46 | +++++++++++++++ |
| 47 | |
PatrikBuhr | c691603 | 2021-11-22 16:12:27 +0100 | [diff] [blame] | 48 | To build and deploy the Information Coordinator Service, go to the "information-coordinator-service" folder and run the |
elinuxhenrik | 2a6084b | 2021-06-02 15:31:18 +0200 | [diff] [blame] | 49 | following command: |
| 50 | |
| 51 | +-----------------------------+ |
| 52 | | mvn clean install | |
| 53 | +-----------------------------+ |
| 54 | |
| 55 | Then start the container by running the following command: |
| 56 | |
| 57 | +--------------------------------------------------------------------+ |
PatrikBuhr | c691603 | 2021-11-22 16:12:27 +0100 | [diff] [blame] | 58 | | docker run nonrtric-information-coordinator-service | |
elinuxhenrik | 2a6084b | 2021-06-02 15:31:18 +0200 | [diff] [blame] | 59 | +--------------------------------------------------------------------+ |
PatrikBuhr | 1e71486 | 2021-05-20 12:02:38 +0200 | [diff] [blame] | 60 | |
JohnKeeney | 01ea4be | 2021-05-26 19:32:47 +0100 | [diff] [blame] | 61 | Initial Non-RT-RIC App Catalogue |
| 62 | -------------------------------- |
PatrikBuhr | 1e71486 | 2021-05-20 12:02:38 +0200 | [diff] [blame] | 63 | |
JohnKeeney | 01ea4be | 2021-05-26 19:32:47 +0100 | [diff] [blame] | 64 | See the README.md file in the *r-app-catalogue* directory in the Gerrit repo for more details how to run the component. |
elinuxhenrik | c7a0d73 | 2020-02-04 14:49:59 +0100 | [diff] [blame] | 65 | |
PatrikBuhr | 7563539 | 2021-12-14 08:31:18 +0100 | [diff] [blame] | 66 | DMaaP Adaptor Service |
| 67 | --------------------- |
elinuxhenrik | 6b45b05 | 2022-01-12 16:12:45 +0100 | [diff] [blame^] | 68 | |
| 69 | This Java implementation is run in the same way as the Information Coordinator Service. |
PatrikBuhr | 7563539 | 2021-12-14 08:31:18 +0100 | [diff] [blame] | 70 | |
| 71 | The 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 | |
elinuxhenrik | 6b45b05 | 2022-01-12 16:12:45 +0100 | [diff] [blame^] | 76 | DMaaP Mediator Producer |
| 77 | ----------------------- |
| 78 | |
| 79 | To build and run this Go implementation, see the README.md file under the folder "dmaap-mediator-producer" in the "nonrtric" repo. |
| 80 | |
PatrikBuhr | 7563539 | 2021-12-14 08:31:18 +0100 | [diff] [blame] | 81 | O-DU & O-RU fronthaul recovery |
| 82 | ------------------------------ |
| 83 | |
elinuxhenrik | 6b45b05 | 2022-01-12 16:12:45 +0100 | [diff] [blame^] | 84 | See the page in Wiki: `O-RU Fronthaul Recovery usecase <https://wiki.o-ran-sc.org/display/RICNR/O-RU+Fronthaul+Recovery+usecase>`_. |
PatrikBuhr | 7563539 | 2021-12-14 08:31:18 +0100 | [diff] [blame] | 85 | |
| 86 | O-DU Slicing use cases |
| 87 | ---------------------- |
| 88 | |
elinuxhenrik | 6b45b05 | 2022-01-12 16:12:45 +0100 | [diff] [blame^] | 89 | See the page in Wiki: `O-DU Slice Assurance usecase <https://wiki.o-ran-sc.org/display/RICNR/O-DU+Slice+Assurance+usecase>`_. |
PatrikBuhr | 7563539 | 2021-12-14 08:31:18 +0100 | [diff] [blame] | 90 | |
| 91 | Helm Manager |
| 92 | ------------ |
| 93 | |
elinuxhenrik | 6b45b05 | 2022-01-12 16:12:45 +0100 | [diff] [blame^] | 94 | See the page in Wiki: `Release E <https://wiki.o-ran-sc.org/display/RICNR/Release+E>`_. |
PatrikBuhr | 7563539 | 2021-12-14 08:31:18 +0100 | [diff] [blame] | 95 | |
JohnKeeney | 01ea4be | 2021-05-26 19:32:47 +0100 | [diff] [blame] | 96 | Kubernetes deployment |
| 97 | ===================== |
RehanRaza | c079452 | 2020-07-23 18:35:50 +0200 | [diff] [blame] | 98 | |
elinuxhenrik | 6b45b05 | 2022-01-12 16:12:45 +0100 | [diff] [blame^] | 99 | Non-RT RIC can be also deployed in a Kubernetes cluster, `it/dep repository <https://gerrit.o-ran-sc.org/r/admin/repos/it/dep>`_. |
elinuxhenrik | 2a6084b | 2021-06-02 15:31:18 +0200 | [diff] [blame] | 100 | hosts deployment and integration artifacts. Instructions and helm charts to deploy the Non-RT-RIC functions in the |
| 101 | OSC NONRTRIC integrated test environment can be found in the *./nonrtric* directory. |
PatrikBuhr | 7563539 | 2021-12-14 08:31:18 +0100 | [diff] [blame] | 102 | |
elinuxhenrik | 6b45b05 | 2022-01-12 16:12:45 +0100 | [diff] [blame^] | 103 | For 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>`_. |
PatrikBuhr | 7563539 | 2021-12-14 08:31:18 +0100 | [diff] [blame] | 104 | |
elinuxhenrik | 2a6084b | 2021-06-02 15:31:18 +0200 | [diff] [blame] | 105 | For 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>`_. |
PatrikBuhr | 7563539 | 2021-12-14 08:31:18 +0100 | [diff] [blame] | 106 | |