From: ashishj1729 Date: Thu, 26 Dec 2024 11:04:10 +0000 (+0530) Subject: Updating Docs for ICS Job Creation and FeatureGroup Creation with DME Enabled X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?a=commitdiff_plain;h=d76ba8e3a51f8f8ed36a313171b56967213978d2;p=aiml-fw%2Faimlfw-dep.git Updating Docs for ICS Job Creation and FeatureGroup Creation with DME Enabled Change-Id: I7b9e683ee8987e84d2185e87721d2315c56172c8 Signed-off-by: ashishj1729 --- diff --git a/docs/ranpm-installation.rst b/docs/ranpm-installation.rst index d7b95af..0fea1db 100644 --- a/docs/ranpm-installation.rst +++ b/docs/ranpm-installation.rst @@ -194,41 +194,49 @@ Pushing PM Reports ------------------ .. -1. Configure JobDefination of influxlogger +1. Create ICS job -Configure the default filter in jobDefinition.json as - -.. code-block:: diff +.. code-block:: bash - --- a/install/helm/nrt-pm-log/config/jobDefinition.json - +++ b/install/helm/nrt-pm-log/config/jobDefinition.json - @@ -9,7 +9,15 @@ - { + curl --location --request PUT 'http://localhost:31823/data-consumer/v1/info-jobs/job1' \ + --header 'Content-Type: application/json' \ + --data '{ + "info_type_id": "PmData", + "job_owner": "console", + "job_definition": { + "filter": { + "sourceNames": [], + "measObjInstIds": [], + "measTypeSpecs": [ + { "measuredObjClass": "NRCellDU", "measTypes": [ - - "pmCounterNumber101" - + "throughput", - + "x", - + "y", - + "availPrbDl", - + "availPrbUl", - + "measPeriodPrb", - + "pdcpBytesUl", - + "pdcpBytesDl", - + "measPeriodPdcpBytes" - ] + "throughput", + "x", + "y", + "availPrbDl", + "availPrbUl", + "measPeriodPrb", + "pdcpBytesUl", + "pdcpBytesDl", + "measPeriodPdcpBytes" + ] + } + ], + "measuredEntityDns": [] + }, + "deliveryInfo": { + "topic": "pmreports", + "bootStrapServers": "kafka-1-kafka-bootstrap.nonrtric:9097" + } } - ], + }' -Reinstall pm-log +Confirm ICS Job-creation .. code-block:: bash - cd ./ranpm/install - # Re-install PM-Log - sudo bash ./uninstall-pm-log.sh - sudo bash ./install-pm-log.sh - + curl --location 'http://localhost:31823/data-consumer/v1/info-jobs/job1' | jq . 2. Clone and run script to Push data @@ -269,6 +277,11 @@ Example for executing above script kubectl exec -it influxdb2-0 -n nonrtric -- influx delete --bucket pm-logg-bucket --start 1801-01-27T05:00:22.305309038Z --stop 2023-11-14T00:00:00Z +5. Delete ICS job + +.. code:: bash + + curl --location --request DELETE 'http://localhost:31823/data-consumer/v1/info-jobs/job1' Uninstalling RANPM ------------------ @@ -276,4 +289,89 @@ Uninstalling RANPM .. code-block:: bash cd ./ranpm/install - sudo bash ./uninstall-ranpm.sh \ No newline at end of file + sudo bash ./uninstall-ranpm.sh + +Using Non-RT RIC DME as data source for AIMLFW +---------------------------------------------- + +1. Deploy AIMLFW + Please refer `here `__ for AIMLFW Installation + +2. Create FeatureGroup + + i) Get RANPM InfluxDb Token + + .. code-block:: bash + + git clone "https://gerrit.o-ran-sc.org/r/aiml-fw/aimlfw-dep" + cd aimlfw-dep/demos/hrelease/scripts + # The following script will give the inflxu-Token for RANPM + ./get_access_tokens.sh + + ii) Prepare RANPM for AIMLFW ascess + + .. code-block:: bash + + ./prepare_env_aimlfw_access.sh + # Make influxDb accessible by port-fowarding (Keep it running) + kubectl port-forward svc/influxdb2 -n nonrtric 8086:8086 --address 0.0.0.0 + + iii) Create FeatureGroup at AIMLFW + + .. code-block:: bash + + curl --location ':32002/featureGroup' \ + --header 'Content-Type: application/json' \ + --data '{ + "featuregroup_name": "", + "feature_list": "x,y,pdcpBytesDl,pdcpBytesUl", + "datalake_source": "InfluxSource", + "enable_dme": true, + "host": "", + "port": "8086", + "dme_port": "31823", + "bucket": "pm-logg-bucket", + "token": "", + "source_name": "", + "measured_obj_class": "NRCellDU", + "measurement": "test,ManagedElement=nodedntest,GNBDUFunction=1004,NRCellDU=c4_B13", + "db_org": "est" + } ' + + | Note: + | a. AIMLFW-Ip: Refers to the VM-Ip where AIMLFW is installed + | b. RANPM-ip: Refers to the VM-ip where RANPM is installed + | c. port: Refers to influxDB port which we have exposed in Step-2 i.e. 8086 + | d. dme_port: Refers to the Nodeport of InformationService (in RANPM) generally, 31823 + | e. INFLUX_DB_TOKEN: Refers to the token recieved from Step-1 + + + .. code-block:: bash + + # Confirm ICS job creation + curl --location 'http://localhost:31823/data-consumer/v1/info-jobs/' | jq . + + +3. Simulate RAN-Traffic to RANPM by Pushing PM-reports + + .. code-block:: bash + + cd aimlfw-dep/demos/hrelease/scripts + ./push_qoe_data.sh gnb300505 30 c4/B13 + + Confirm the data in influxDb + + .. code-block:: bash + + kubectl exec -it influxdb2-0 -n nonrtric -- bash + influx v1 shell + use "pm-logg-bucket" + SELECT * from "test,ManagedElement=nodedntest,GNBDUFunction=1004,NRCellDU=c4_B13" + + + The Measurement MUST contain 4 columns as per x,y,pdcpBytesDl,pdcpBytesUl. + +4. Create TrainingJob + + Please refer `here `__ and use the featureGroup created in Step 2. + \ No newline at end of file