Release M - Run in Kubernetes

Release M - Run in Kubernetes

This wiki describes how to deploy the NONRTRIC components within a Kubernetes cluster using the smo-install approach from the it/dep repository.

NONRTRIC Components

NONRTRIC comprises several components,

  1. Control Panel

  2. Policy Management Service

  3. Information Coordinator Service

  4. Non RT RIC Gateway (reuse of existing kong proxy is also possible)

  5. A1 Simulator (3 A1 interface versions - previously called Near-RT RIC A1 Interface)

  6. A1 Controller (currently using SDNC from ONAP)

  7. Dmaap Adapter Service

  8. CAPIF core

  9. RANPM

  10. RAPP Manager

  11. DME Participant

Prerequisites

System Requirements

  • VM Resources: 64GB Memory, 20VCPU, 100GB disk

  • Kubernetes: v1.30+ cluster with kubectl configured

  • Helm: 3.12.0+ (<4.0.0)

Helm Charts

NONRTRIC Helm charts are maintained as part of it/dep repository. It contains ONAP, NONRTRIC and SMO charts integrated into a unified deployment framework.

Detailed instructions and chart information are available in the smo-install README.

Configuration of components to install

Standalone NONRTRIC Installation

NONRTRIC components can be installed independently using the standalone-nonrtric flavour. This flavour installs most NONRTRIC components while excluding dependencies on external ONAP/SMO components.

The standalone configuration is designed to provide a self-contained NONRTRIC deployment suitable for standalone environments.

Configuration Structure

The configuration follows a hierarchical override system:

  • Base Configuration: dep/smo-install/helm-override/default/oran-override.yaml - Contains default settings for oran components

  • Flavour Configuration:

    • dep/smo-install/helm-override/standalone-nonrtric/oran-flavour-config.yaml - Contains delta overrides from the base configuration for standalone NONRTRIC installation

    • dep/smo-install/helm-override/rappmanager/oran-flavour-config.yaml - Contains delta overrides from the base configuration for rAppmanager installation

Component Configuration Options

Choosing the Right Flavour

The choice of installation flavour depends on the combination of services you want to run and your deployment requirements:

  • standalone-nonrtric: By default, this flavour installs most of the NONRTRIC components in a self-contained manner. However, some components are not fully functional in this mode:

    • rApp Manager: Requires ONAP CLAMP ACM for full functionality. A specific rappmanager flavour is available for rApp Manager deployment with proper ONAP integration.

    • RANPM: Disabled in standalone installation as it requires several ONAP components to be present for complete functionality.

  • rappmanager flavour: Specifically designed for rApp Manager deployment with ONAP ACM integration, enabling full rApp lifecycle management capabilities.

  • default flavour: If you want to run a fully functional NONRTRIC deployment with RANPM and all integrated components, it's recommended to use the default installation mode. This approach is resource-intensive in terms of the number of components but provides the complete ecosystem where all components are running and working together seamlessly.

Standalone NONRTRIC Configuration (“standalone-nonrtric” Flavour)

Edit the flavour configuration file to customize your deployment (dep/smo-install/helm-override/standalone-nonrtric/oran-flavour-config.yaml)

nonrtric: installTopology: false installDmeparticipant: false installRanpm: false common: enabled: false smo: installTeiv: false

rAppmanager Configuration (“rappmanager” Flavour)

Edit the flavour configuration file to customize your deployment (dep/smo-install/helm-override/rappmanager/oran-flavour-config.yaml)

nonrtric: installA1simulator: false installTopology: false installDmaapadapterservice: false installRanpm: false common: influxdb2: enabled: false kafka-client: enabled: false keycloak: enabled: false keycloak-proxy: enabled: false minio: enabled: false opa: enabled: false opa-rule-db: enabled: false redpanda-console: enabled: false # This controls the patching in smo installation patch: strimzi: false vescollector: false policy: true cps: false smo: installTeiv: false

Base Configuration (“default” Flavour)

The following shows available component installation options from dep/smo-install/helm-override/default/oran-override.yaml

# Here you can enable inclusion or exclusion of each component. Disabled components will not be installed, and their later configurations will be ignored. nonrtric: installPms: true installA1controller: false installA1simulator: true installControlpanel: true installInformationservice: true installNonrtricgateway: true installKong: true installTopology: true installDmaapadapterservice: true installDmeparticipant: true installrAppmanager: true installCapifcore: true installServicemanager: true installRanpm: true # override default mount path root directory ... ... ...

Quick Installation

Detailed installation instructions are available as part of it/dep repository.

For a standard standalone NONRTRIC deployment:

git clone --recursive "https://gerrit.o-ran-sc.org/r/it/dep" ./dep/smo-install/scripts/layer-0/0-setup-helm3.sh ./dep/smo-install/scripts/layer-2/2-install-oran.sh standalone-nonrtric

Uninstallation

There is a script that uninstalls the NONRTRIC components.

./dep/smo-install/scripts/uninstall-all.sh