This page describes how to run current implementation for the O-DU Slice Assurance usecase.
The standalone script version of the usecase is implemented in Golang.
It provides a simulator that stub both Dmaap MR and SDNR (orange boxes in the picture below), so both processes can share its data.
The following need to be installed to run the script according to these instructions:
This stub has been coded on Go, similar to the simulator used in O-RU O-DU Closed loop recovery use case previously described. However, this stub simulates both Dmaap VES messages and also SDNC. By default, the stub listens to port 3905, can be changed with the flag "--sdnr-port".
To run the stub, follow the steps below:
cd nonrtric/test/usecases/odusliceassurance/goversion/stub go build ./stub [--sdnr-port <portNo>] [--dmaap-port <portNo>] Example: └─ $ ▶ ./sdnr --sdnr-port 3906 Starting DmaapMR stub on port: 3905 Starting SDNR stub on port: 3606 |
The application takes a number of environment variables for configuration, but only MR_HOST and MR_PORT are required, others are optional. More information can be found in README.md file
cd nonrtric/test/usecases/odusliceassurance/goversion/ go build ./oduclosedloop |
Environment variables can be defined as part of the command line as follow:
Example: └─ $ ▶ MR_HOST=http://localhost MR_PORT=3905 ./oduclosedloop |
The usecase can also be instantiated as a control loop that will create a micro-service for the O-DU slice assurance app. The control loop can be created by following the detailed instructions provided in b) Control loop for script version. However, for this usecase, only one helm chart (for odu-app) needs to be copied into the kubernetes-participant and it is located at this path in the nonrtric repo:
nonrtric/test/usecases/odusliceassurance/goversion/helm/odu-app/ |
Moreover, the tosca template to be commissioned for this control loop is given below:
tosca_definitions_version: tosca_simple_yaml_1_1_0 data_types: onap.datatypes.ToscaConceptIdentifier: derived_from: tosca.datatypes.Root properties: name: type: string required: true version: type: string required: true node_types: org.onap.policy.clamp.controlloop.Participant: version: 1.0.1 derived_from: tosca.nodetypes.Root properties: provider: type: string requred: false org.onap.policy.clamp.controlloop.ControlLoop: version: 1.0.1 derived_from: tosca.nodetypes.Root properties: provider: type: string requred: false elements: type: list required: true entry_schema: type: onap.datatypes.ToscaConceptIdentifier org.onap.policy.clamp.controlloop.ControlLoopElement: version: 1.0.1 derived_from: tosca.nodetypes.Root properties: provider: type: string requred: false participant_id: type: onap.datatypes.ToscaConceptIdentifier requred: true org.onap.policy.clamp.controlloop.K8SMicroserviceControlLoopElement: version: 1.0.1 derived_from: org.onap.policy.clamp.controlloop.ControlLoopElement properties: chart: type: string required: true configs: type: list required: false requirements: type: string requred: false templates: type: list required: false entry_schema: values: type: string requred: true topology_template: node_templates: org.onap.domain.sliceassurance.SliceAssuranceControlLoopDefinition1: version: 1.2.3 type: org.onap.policy.clamp.controlloop.ControlLoop type_version: 1.0.1 description: Control loop for Slice Assurance properties: provider: Ericsson elements: - name: org.onap.domain.sliceassurance.OduAppK8SMicroserviceControlLoopElement version: 1.2.3 org.onap.k8s.controlloop.K8SControlLoopParticipant: version: 2.3.4 type: org.onap.policy.clamp.controlloop.Participant type_version: 1.0.1 description: Participant for k8s properties: provider: ONAP org.onap.domain.sliceassurance.OduAppK8SMicroserviceControlLoopElement: version: 1.2.3 type: org.onap.policy.clamp.controlloop.K8SMicroserviceControlLoopElement type_version: 1.0.1 description: Control loop element for odu-app properties: provider: ONAP participant_id: name: K8sParticipant0 version: 1.0.0 participantType: name: org.onap.k8s.controlloop.K8SControlLoopParticipant version: 2.3.4 chart: chartId: name: odu-app version: 0.1.0 releaseName: odu-app repository: repoName: chartmuseum namespace: nonrtric overrideParams: image.repository: nexus3.o-ran-sc.org:10002/o-ran-sc/nonrtric-o-du-slice-assurance image.tag: 1.0.0 messagerouter.host: http://message-router.onap messagerouter.port: 3904 sdnr.address: http://sdnr-simulator:9990 |
NOTE: The default hostname/port for sdnr and message-router are specified in overrideParams of the above file. They should be replaced with actual values if using different hostname/port.