From 0ea2aae85c0d4adfb394df842909c46d129dd7f5 Mon Sep 17 00:00:00 2001 From: josephthaliath Date: Wed, 7 Jun 2023 14:39:27 +0530 Subject: [PATCH] Update to installation documention Issue-Id: AIMLFW-47 Change-Id: I8d88cbb9c3ce38f5c9f8ffb4e4e22d43c5d09150 Signed-off-by: josephthaliath --- docs/installation-guide.rst | 195 +++++++++++++++++++++++++++++++++++- docs/release-notes.rst | 9 +- tox.ini | 2 + 3 files changed, 199 insertions(+), 7 deletions(-) diff --git a/docs/installation-guide.rst b/docs/installation-guide.rst index 341f495..aadae13 100755 --- a/docs/installation-guide.rst +++ b/docs/installation-guide.rst @@ -14,7 +14,7 @@ Installation Guide Abstract -------- -This document describes how to install AIMLFW, it's dependencies and required system resources. +This document describes how to install AIMLFW, demo scenarios, it's dependencies and required system resources. Version history @@ -26,7 +26,7 @@ Version history | 2022-11-30 | 0.1.0 | | First draft | | | | | | +--------------------+--------------------+--------------------+--------------------+ -| | | | | +| 2023-06-06 | 1.0.0 | Joseph Thaliath | H Release | | | | | | +--------------------+--------------------+--------------------+--------------------+ | | | | | @@ -43,7 +43,7 @@ Introduction This document describes the supported software and hardware configurations for the reference component as well as providing guidelines on how to install and configure such reference system. -The audience of this document is assumed to have good knowledge in RAN network and Linux system. +The audience of this document is assumed to have good knowledge in AI/ML tools, Kubernetes and Linux system. Hardware Requirements @@ -52,11 +52,13 @@ Hardware Requirements Below are the minimum requirements for installing the AIMLFW -#. OS: Ubuntu 18.04 server +#. OS: Ubuntu 22.04 server #. 8 cpu cores #. 16 GB RAM #. 60 GB harddisk +.. _reference1: + Software Installation and Deployment ------------------------------------ .. @@ -115,6 +117,8 @@ Software Uninstallation .. _install-influx-db-as-datalake: +.. _reference2: + Install Influx DB as datalake ----------------------------- @@ -301,6 +305,7 @@ Check running state of pod using below command kubectl get pods -n kserve-test +.. _reference4: Test predictions using model deployed on Kserve ----------------------------------------------- @@ -350,3 +355,185 @@ Use command below to trigger predictions .. code:: bash source predict.sh + +.. _reference3: + +Prepare Non-RT RIC DME as data source for AIMLFW +------------------------------------------------ + +Bring up the RANPM setup by following the steps mentioned in the file install/README.md present in the repository `RANPM repository `__ + +Once all the pods are in running state, follow the below steps to prepare ranpm setup for AIMLFW qoe usecase data access + +The scripts files are present in the folder demos/hrelease/scripts of repository `AIMLFW repository `__ + +Note: The following steps need to be performed in the VM where the ranpm setup is installed. + +.. code:: bash + + git clone "https://gerrit.o-ran-sc.org/r/aiml-fw/aimlfw-dep" + cd aimlfw-dep/demos/hrelease/scripts + ./get_access_tokens.sh + +Update the RECIPE file (:file:`RECIPE_EXAMPLE/example_recipe_latest_stable.yaml`) of AIMLFW installation with Influx DB details of RANPM setup. The token is displayed when the script :file:`./get_access_tokens.sh` is executed. +Example of updating the RECIPE file is shown below + +.. code:: bash + + datalake: + influxdb: + host: + port: 31812 + orgname: est + bucket: pm-bucket + token: + +Execute the below script + +.. code:: bash + + ./prepare_env_aimlfw_access.sh + +Add feature group from AIMLFW dashboard, example on how to create a feature group is shown in this demo video: `Feature group creation demo `__ + +Execute below script to push qoe data into ranpm setup + +.. code:: bash + + ./push_qoe_data.sh + +Example for executing above script + +.. code:: bash + + ./push_qoe_data.sh gnb300505 30 c4/B2 + +Steps to check if data is upload correctly + + +.. code:: bash + + kubectl exec -it influxdb2-0 -n nonrtric -- bash + influx query 'from(bucket: "pm-bucket") |> range(start: -1000000000000000000d)' |grep pdcpBytesDl + +Steps to clear the data in InfluxDB + +.. code:: bash + + kubectl exec -it influxdb2-0 -n nonrtric -- bash + influx delete --bucket pm-bucket --start 1801-01-27T05:00:22.305309038Z --stop 2023-11-14T00:00:00Z + + +Training job creation with DME as data source +--------------------------------------------- + +#. AIMLFW should be installed by following steps in section :ref:`Software Installation and Deployment ` +#. RANPM setup should be installed and configured as per steps mentioned in section :ref:`Prepare Non-RT RIC DME as data source for AIMLFW ` +#. To create training job, follow the steps in the demo video: `Training Job creation `__ +#. After training job is created and executed successfully, model can be deployed using steps mentioned in section :ref:`Deploy trained qoe prediction model on Kserve `. Model URL for deployment can be obainted from AIMFW dashboard (Training Jobs-> Training Job status -> Select Info for a training job -> Model URL) + +NOTE: Below are some example values to be used for the QoE usecase training job creation + ++--------------------+--------------------------------------------------------------+ +| **Parameter** | **Value** | +| | | ++--------------------+--------------------------------------------------------------+ +| Training Job Name | qoetest | +| | | ++--------------------+--------------------------------------------------------------+ +| Training Function | qoe_pipeline_h_release | +| | | ++--------------------+--------------------------------------------------------------+ +| Experiment Name | Default | +| | | +| | | ++--------------------+--------------------------------------------------------------+ +| Datalake Source | Influx DB | +| | | +| | | ++--------------------+--------------------------------------------------------------+ +| _measurement | ManagedElement=nodedntest,GNBDUFunction=1004,NRCellDU=c4_B2 | +| | | +| | | ++--------------------+--------------------------------------------------------------+ +| bucket | pm-bucket | +| | | +| | | ++--------------------+--------------------------------------------------------------+ +| Feature Name | \* | +| | | +| | | ++--------------------+--------------------------------------------------------------+ +| Feature Filter | | +| | | +| | | ++--------------------+--------------------------------------------------------------+ +| Hyper Parameters | epochs:1 | +| | | +| | | ++--------------------+--------------------------------------------------------------+ +| Description | test | +| | | +| | | ++--------------------+--------------------------------------------------------------+ + + +Training job creation with standalone Influx DB as data source +-------------------------------------------------------------- + +#. AIMLFW should be installed by following steps in section :ref:`Software Installation and Deployment ` +#. Standalone Influx DB should be setup and configured as mentioned in section :ref:`Install Influx DB as datalake ` +#. To create training job, follow the steps in the demo video: `Training Job creation `__ +#. After training job is created and executed successfully, model can be deployed using steps mentioned in section :ref:`Deploy trained qoe prediction model on Kserve `. Model URL for deployment can be obainted from AIMFW dashboard (Training Jobs-> Training Job status -> Select Info for a training job -> Model URL) + +NOTE: Below are some example values to be used for the QoE usecase training job creation + ++--------------------+-------------------------+ +| **Parameter** | **Value** | +| | | ++--------------------+-------------------------+ +| Training Job Name | qoetest | +| | | ++--------------------+-------------------------+ +| Training Function | qoe_pipeline_g_release | +| | | ++--------------------+-------------------------+ +| Experiment Name | Default | +| | | +| | | ++--------------------+-------------------------+ +| Datalake Source | Influx DB | +| | | +| | | ++--------------------+-------------------------+ +| _measurement | liveCell | +| | | +| | | ++--------------------+-------------------------+ +| bucket | UEData | +| | | +| | | ++--------------------+-------------------------+ +| Feature Name | \* | +| | | +| | | ++--------------------+-------------------------+ +| Feature Filter | | +| | | +| | | ++--------------------+-------------------------+ +| Hyper Parameters | epochs:1 | +| | | +| | | ++--------------------+-------------------------+ +| Description | test | +| | | +| | | ++--------------------+-------------------------+ + + + + + + + diff --git a/docs/release-notes.rst b/docs/release-notes.rst index e159b3c..ffe31e0 100644 --- a/docs/release-notes.rst +++ b/docs/release-notes.rst @@ -23,12 +23,15 @@ Version history | 2022-12-08 | 1.0.0 | Joseph Thaliath | G release | | | | | | +--------------------+--------------------+--------------------+--------------------+ +| 2023-06-07 | 2.0.0 | Joseph Thaliath | H release | +| | | | | ++--------------------+--------------------+--------------------+--------------------+ Summary ------- -The G release of AIMLFW provides required installation scripts for deployment of G release version of AIMLFW +The H release of AIMLFW provides required installation scripts for deployment of H release version of AIMLFW Release Data @@ -41,10 +44,10 @@ Release Data | **Repo/commit-ID** | aiml-fw/aimlfw-dep | | | | +--------------------------------------+--------------------------------------+ -| **Release designation** | G release | +| **Release designation** | H release | | | | +--------------------------------------+--------------------------------------+ -| **Release date** | 2022-12-15 | +| **Release date** | 2023-06-07 | | | | +--------------------------------------+--------------------------------------+ | **Purpose of the delivery** | AIMLFW Installation and Deployment | diff --git a/tox.ini b/tox.ini index b6c83ad..f2888fc 100644 --- a/tox.ini +++ b/tox.ini @@ -14,6 +14,7 @@ deps = sphinxcontrib-httpdomain recommonmark lfdocs-conf + urllib3~=1.26.15 commands = sphinx-build -W -b html -n -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/html @@ -27,4 +28,5 @@ deps = sphinx sphinxcontrib-httpdomain recommonmark lfdocs-conf + urllib3~=1.26.15 commands = sphinx-build -W -b linkcheck -d {envtmpdir}/doctrees ./docs/ {toxinidir}/docs/_build/linkcheck