...
This wiki describes how to deploy the NONRTRIC components within Kubernetes cluster.
Table of Contents |
---|
NONRTRIC Architecture
NONRTRIC comprises several components,
...
In the IT/Dep repo, there are helm charts for each these components. In addition, there is a chart called nonrtric, which is a composition of the components above.
Preparations
Download the the it/dep repository. At time of writing (Dec 2021) there is no branch for e-release so cloning can be made from master. Pls check if the branch exist before cloning from master.
Code Block | ||||
---|---|---|---|---|
| ||||
git clone "https://gerrit.o-ran-sc.org/r/it/dep" -b e-release or git clone "https://gerrit.o-ran-sc.org/r/it/dep" |
Configuration of components to install
It is possible to configure which of nonrtric components to install, including the controller and a1 simulators. This configuration is made in the override for the helm package. Edit the following file
...
Code Block | ||||
---|---|---|---|---|
| ||||
nonrtric: installPms: true installA1controller: true installA1simulator: true installControlpanel: true installInformationservice: true installRappcatalogueservice: true installNonrtricgateway: true installKong: false installDmaapadapterservice: true installDmaapmediatorservice: true installHelmmanager: true volume1: # Set the size to 0 if you do not need the volume (if you are using Dynamic Volume Provisioning) size: 2Gi storageClassName: pms-storage volume2: # Set the size to 0 if you do not need the volume (if you are using Dynamic Volume Provisioning) size: 2Gi storageClassName: ics-storage volume3: size: 1Gi storageClassName: helmmanager-storage ... ... ... |
Installation
There is a script that packs and installs the components by using the helm command. The installation uses a values override file like the one shown above. This example can be run like this:
Code Block | ||||
---|---|---|---|---|
| ||||
sudo dep/bin/deploy-nonrtric -f dep/nonrtric/RECIPE_EXAMPLE/example_recipe.yaml |
Result of the installation
The installation will create one helm release and all created kubernetes objects will be put in a namespace. This name is 'nonrtric' and cannot be changed.
...
Code Block | ||||||
---|---|---|---|---|---|---|
| ||||||
>sudo kubectl -n nonrtric get pod NAME READY STATUS RESTARTS AGE a1-sim-osc-0 1/1 Running 0 61m a1-sim-osc-1 1/1 Running 0 51m a1-sim-std-0 1/1 Running 0 61m a1-sim-std-1 1/1 Running 0 51m a1-sim-std2-0 1/1 Running 0 61m a1-sim-std2-1 1/1 Running 0 51m a1controller-64c5b7fc56-rkmx2 1/1 Running 0 61m controlpanel-6fb697f949-rrvnq 1/1 Running 0 61m db-76d79cd769-q84pc 1/1 Running 0 61m dmaapadapterservice-0 1/1 Running 0 61m dmaapmediatorservice-0 1/1 Running 0 61m helmmanager-0 1/1 Running 0 61m informationservice-0 1/1 Running 0 61m nonrtricgateway-8c87c678d-8nl82 1/1 Running 0 61m policymanagementservice-0 1/1 Running 0 61m rappcatalogueservice-f77f47cb9-85hjq 1/1 Running 0 61m |
Un-installation
There is a script that uninstalls installs the NonRT RIC components. It is simply run like this:
Code Block | ||||
---|---|---|---|---|
| ||||
sudo dep/bin/undeploy-nonrtric |
Introduction to Helm Chart
In NONRTRIC we use Helm chart as a packaging manager for kubernetes. Helm chart helps developer to package, configure & deploy the application and services into kubernetes environment.
...