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 |
elinuxhenrik | 0a4c38b | 2020-04-14 10:59:36 +0200 | [diff] [blame] | 3 | .. Copyright (C) 2020 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 | c7a0d73 | 2020-02-04 14:49:59 +0100 | [diff] [blame] | 8 | This document provides a quickstart for developers of the Non-RT RIC. |
| 9 | |
| 10 | SDNC A1 Controller |
maximesson | eaaee91 | 2020-03-26 16:43:27 +0100 | [diff] [blame] | 11 | ================== |
Lathish | 1279d19 | 2019-10-10 13:30:07 +0100 | [diff] [blame] | 12 | |
| 13 | Prerequisites |
| 14 | ------------- |
| 15 | |
maximesson | b17ae67 | 2020-07-07 10:17:58 +0200 | [diff] [blame^] | 16 | 1. Java development kit (JDK), version 8 |
gautamk189 | 9c84195 | 2020-06-16 15:23:46 +0530 | [diff] [blame] | 17 | 2. Maven dependency-management tool, version 3.6 or later |
gautamk189 | 35550cc | 2020-06-17 20:15:44 +0530 | [diff] [blame] | 18 | 3. Python, version 2 |
gautamk189 | 9c84195 | 2020-06-16 15:23:46 +0530 | [diff] [blame] | 19 | 4. Docker, version 19.03.1 or latest |
| 20 | 5. Docker Compose, version 1.24.1 or latest |
Lathish | 1279d19 | 2019-10-10 13:30:07 +0100 | [diff] [blame] | 21 | |
elinuxhenrik | c7a0d73 | 2020-02-04 14:49:59 +0100 | [diff] [blame] | 22 | Build and run |
| 23 | ------------- |
Lathish | 1279d19 | 2019-10-10 13:30:07 +0100 | [diff] [blame] | 24 | Go to the northbound directory and run this command :: |
gautamk189 | 35550cc | 2020-06-17 20:15:44 +0530 | [diff] [blame] | 25 | mvn clean install |
Lathish | 1279d19 | 2019-10-10 13:30:07 +0100 | [diff] [blame] | 26 | |
| 27 | This will build the project and create artifcats in maven repo |
| 28 | |
| 29 | Go to oam/installation directory and run this command :: |
| 30 | mvn clean install -P docker |
maximesson | e6b4d27 | 2019-10-31 13:26:13 +0100 | [diff] [blame] | 31 | |
gautamk189 | 35550cc | 2020-06-17 20:15:44 +0530 | [diff] [blame] | 32 | This will create the docker images required for A1 controller. |
Lathish | 1279d19 | 2019-10-10 13:30:07 +0100 | [diff] [blame] | 33 | |
| 34 | After this step check for the docker images created by the maven build with this command :: |
maximesson | 4d8b567 | 2020-06-04 12:12:59 +0200 | [diff] [blame] | 35 | docker images | grep a1-controller |
Lathish | 1279d19 | 2019-10-10 13:30:07 +0100 | [diff] [blame] | 36 | |
| 37 | Go to oam/installation/src/main/yaml and run this command :: |
maximesson | 4d8b567 | 2020-06-04 12:12:59 +0200 | [diff] [blame] | 38 | docker-compose up -d a1-controller |
Lathish | 1279d19 | 2019-10-10 13:30:07 +0100 | [diff] [blame] | 39 | |
gautamk189 | 35550cc | 2020-06-17 20:15:44 +0530 | [diff] [blame] | 40 | This will create the docker containers with the A1 controller image, you can check the status of the docker container using :: |
maximesson | 4d8b567 | 2020-06-04 12:12:59 +0200 | [diff] [blame] | 41 | docker-compose logs -f a1-controller |
Lathish | 1279d19 | 2019-10-10 13:30:07 +0100 | [diff] [blame] | 42 | |
gautamk189 | 35550cc | 2020-06-17 20:15:44 +0530 | [diff] [blame] | 43 | The SDNC url to access the Northbound API, |
Lathish | 1279d19 | 2019-10-10 13:30:07 +0100 | [diff] [blame] | 44 | http://localhost:8282/apidoc/explorer/index.html |
| 45 | |
maximesson | e6b4d27 | 2019-10-31 13:26:13 +0100 | [diff] [blame] | 46 | Credentials: admin/Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U |
Lathish | 1279d19 | 2019-10-10 13:30:07 +0100 | [diff] [blame] | 47 | |
Lathish | e1041aa | 2020-01-31 14:01:45 +0000 | [diff] [blame] | 48 | Policy Agent |
maximesson | eaaee91 | 2020-03-26 16:43:27 +0100 | [diff] [blame] | 49 | ============ |
| 50 | |
| 51 | The O-RAN Non-RT RIC Policy Agent provides a REST API for management of policices. It provides support for: |
elinuxhenrik | 7106105 | 2020-02-03 11:11:37 +0100 | [diff] [blame] | 52 | |
| 53 | * Supervision of clients (R-APPs) to eliminate stray policies in case of failure |
| 54 | * Consistency monitoring of the SMO view of policies and the actual situation in the RICs |
| 55 | * Consistency monitoring of RIC capabilities (policy types) |
| 56 | * Policy configuration. This includes: |
| 57 | |
| 58 | * One REST API towards all RICs in the network |
| 59 | * Query functions that can find all policies in a RIC, all policies owned by a service (R-APP), all policies of a type etc. |
| 60 | * Maps O1 resources (ManagedElement) as defined in O1 to the controlling RIC. |
elinuxhenrik | c7a0d73 | 2020-02-04 14:49:59 +0100 | [diff] [blame] | 61 | |
maximesson | eaaee91 | 2020-03-26 16:43:27 +0100 | [diff] [blame] | 62 | | The Policy Agent can be accessed over the REST API or through the DMaaP Interface. The REST API is documented in the |
| 63 | | *nonrtric/policy-agent/docs/api.yaml* file. Please refer to the README file of Policy Agent to know more about the API's. |
maximesson | e3954c4 | 2020-02-24 17:15:50 +0100 | [diff] [blame] | 64 | |
maximesson | e6b4d27 | 2019-10-31 13:26:13 +0100 | [diff] [blame] | 65 | End-to-end call |
maximesson | 780b2bf | 2019-11-12 16:09:02 +0100 | [diff] [blame] | 66 | =============== |
maximesson | e6b4d27 | 2019-10-31 13:26:13 +0100 | [diff] [blame] | 67 | |
| 68 | In order to make a complete end-to-end call, follow the instructions given in this `guide`_. |
| 69 | |
maximesson | eaaee91 | 2020-03-26 16:43:27 +0100 | [diff] [blame] | 70 | .. _guide: https://wiki.o-ran-sc.org/pages/viewpage.action?pageId=12157166 |