...
All components of the Non-RT RIC run as docker containers and communicate via a private docker network with container ports, ports also available on localhost. Details of the architecture can be found from Release G page.
Table of Contents |
---|
Project Requirements
...
...
- Ports
- Prerequisites
- Run the A1 Policy Management Service Docker Container
- Run the SDNC A1 Controller Docker Container (ONAP SDNC)
- Run the A1 Simulator (previously called Near-RT RIC A1 Interface) Docker Containers
- Run the Information Coordinator Service Docker Container
- Run the Non-RT RIC Gateway and Control Panel Docker Container
- Run the App Catalogue Service Docker Container
- Run the Helm Manager Docker Container
- Run the Dmaap Adapter Service Docker Container
- Run the Dmaap Mediator Producer Docker Container
- Run usecases
Docker and docker-compose (latest)
- kubectl with admin access to kubernetes (minikube, docker-desktop kubernetes etc) - this is only applicable when running the Helm Manager
- helm
Table of Contents |
---|
Project Requirements
Docker and docker-compose (latest)
- kubectl with admin access to kubernetes (minikube, docker-desktop kubernetes etc) - this is only applicable when running the Helm Manager
- helm with access to kubernetes - this is only applicable when running the Helm Manager example operations
...
In general, there is no need to build the images manually unless there are code changes made by the user, so release images should be used. Instruction on how to build all components, see. Release G - Build.
The run commands throughout this page uses the release images and tags. Replace the release images/tags in the container run commands in the instructions if manually-built snapshot images are desired.
...
- Create an application_configuration.json file with the configuration below. This will configure the policy management service to use the simulators for the A1 interface
- Note: Any defined ric names must match the given docker container names in near-RT RIC simulator startup, see Run A1 (previously called Near-RT RIC A1 Interface) Simulator Docker Containers
The policy management service can be configure with or without a A-Controller. Choose the appropriate configuration below.
...
Code Block | ||
---|---|---|
| ||
{ "config": { "controller": [ { "name": "a1controller", "baseUrl": "https://a1controller:8443", "userName": "admin", "password": "Kp8bJ4SXszM0WXlhak3eHlcse2gAw84vaoGGmJvUy2U" } ], "ric": [ { "name": "ric1", "baseUrl": "http://ric1:8085/", "controller": "a1controller", "managedElementIds": [ "kista_1", "kista_2" ] }, { "name": "ric2", "baseUrl": "http://ric2:8085/", "controller": "a1controller", "managedElementIds": [ "kista_3", "kista_4" ] }, { "name": "ric3", "baseUrl": "http://ric3:8085/", "controller": "a1controller", "managedElementIds": [ "kista_5", "kista_6" ] } ] } } |
Note:The optional A1 Policy Management Service DMaaP interface is deprecated.
Start the container with the following command. Replace "<absolute-path-to-file>" with the the path to the created configuration file in the command. The configuration file is mounted to the container. There will be WARN messages appearing in the log until the simulators are started.
...
Note: If the policy management service is started with config for the SDNC A1 Controller (the second config option), do the steps described in section Run the A1 Controller Docker Container below before proceeding.
...
This step is only applicable if the configuration for the Policy Management Service include the SDNC A1 Controller (second config option), see Run the Policy Management Service Docker Container.
Create the docker compose file - be sure to update image for the a1controller to the one listed for SDNC A1 Controller in the table on the top of this page.
docker-compose.yaml
...
Start a simulator for each ric defined in in the application_configuration.json created in Run the Policy Management Service Docker Container. Each simulator will use one of the currently available A1 interface versions.
Ric1
|
Ric2
|
Ric3
|
...
Create the file with policy type for ric1
Code Block | ||
---|---|---|
|
...
| |||
{
"name": "pt1",
"description": "pt1 policy type",
"policy_type_id": 1,
"create_schema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "OSC_PT1_0.1.0",
"description": "QoS policy type",
"type": "object",
"properties": {
"scope": {
"type": "object",
"properties": {
"ueId": {
"type": "string"
},
"qosId": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"ueId",
"qosId"
]
},
"statement": {
"type": "object",
"properties": {
"priorityLevel": {
"type": "number"
}
},
"additionalProperties": false,
"required": [
"priorityLevel"
]
}
}
}
} |
Put the policy type to ric1 - should http response code 201
|
Create the file with policy type for ric3
Code Block | ||||
---|---|---|---|---|
| ||||
{
"policySchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "STD_QOS_0_2_0",
"description": "STD QOS policy type",
"type": "object",
"properties": {
"scope": {
"type": "object",
"properties": {
"ueId": {
"type": "string"
},
"qosId": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"ueId",
"qosId"
]
},
"qosObjectives": {
"type": "object",
"properties": {
"priorityLevel": {
"type": "number"
}
},
"additionalProperties": false,
"required": [
"priorityLevel"
]
}
}
},
"statusSchema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "STD_QOS_0.2.0",
"description": "STD QOS policy type status",
"type": "object",
"properties": {
"enforceStatus": {
"type": "string"
},
"enforceReason": {
"type": "string"
},
"additionalProperties": false,
"required": [
"enforceStatus"
]
}
}
} |
Put the policy type to ric1 - should http response code 201
...
curl -X PUT -
v
"http://localhost:8085/a1-p/policytypes/123"
-H
"accept: application/json"
\
-H
"Content-Type: application/json"
--data-binary @osc_pt1.json
Create the file with policy type for ric3
std_pt1.json
Put the policy type to ric3 - should return http response code 201
|
Wait one minute to let the policy management service synchronise the types with the simulators.
...