X-Git-Url: https://gerrit.o-ran-sc.org/r/gitweb?p=it%2Fdep.git;a=blobdiff_plain;f=smo-install%2FREADME.md;h=e52ef1b7dddf903233a8074af223836c6109a115;hp=7c76d09658b5642907b1f40342d878a084b15444;hb=HEAD;hpb=2cec91e51a9c26f051e802afbf5035b1322ae698 diff --git a/smo-install/README.md b/smo-install/README.md index 7c76d096..e52ef1b7 100644 --- a/smo-install/README.md +++ b/smo-install/README.md @@ -1,25 +1,27 @@ -# ORAN SMO Package +# O-RAN SMO Package This project uses different helm charts from different Linux Foundation projects and integrate them into a unique SMO deployment.

The ONAP and ORAN project helm charts are built and then configured by using "helm override" so that it represents a valid ORAN SMO installation.

-

It contains also provisioning scripts that can be used to bootstrap the platform and execute test usecases, network simulators, a1 simulators, cnf network simulators, etc ...

+

It contains also provisioning scripts that can be used to bootstrap the platform and execute test use cases, network simulators, a1 simulators, cnf network simulators, etc ...

Note: The CNF part is still a "work in progress" so not well documented, it's a DU/RU/topology server deployment done by ONAP SO instantiation. -It has been created out of the ONAP vfirewall usecase. +It has been created out of the ONAP vfirewall use case. -## Quick Installation -* Setup a VM with 20GB Memory, 8VCPU, 60GB of diskspace. +## Quick Installation on blank node +* Setup a VM with 40GB Memory, 6VCPU, 60GB of disk space. * Install an ubuntu live server 20.04 LTS (https://releases.ubuntu.com/20.04/ubuntu-20.04.3-live-server-amd64.iso) +* Install snap and restart the shell session: sudo apt-get install snapd -y * Execute the following commands being logged as root: - ```git clone --recursive "https://gerrit.o-ran-sc.org/r/it/dep"``` + + ```git clone --recursive https://github.com/sebdet/oran-deployment.git``` ```./dep/smo-install/scripts/layer-0/0-setup-microk8s.sh``` - ```./dep/smo-install/scripts/layer-0/0-setup-charts-museum.sh``` + ```./dep/smo-install/scripts/layer-0/0-setup-charts-museum.sh``` - ```./dep/smo-install/scripts/layer-0/0-setup-helm3.sh``` + ```./dep/smo-install/scripts/layer-0/0-setup-helm3.sh``` ```./dep/smo-install/scripts/layer-1/1-build-all-charts.sh``` @@ -28,24 +30,23 @@ It has been created out of the ONAP vfirewall usecase. Verify pods: ```kubectl get pods -n onap && kubectl get pods -n nonrtric``` - + When all pods in "onap" and "nonrtric" namespaces are well up & running: - + ```./dep/smo-install/scripts/layer-2/2-install-simulators.sh``` ## Quick Installation on existing kubernetes -* Ensure you have at least 20GB Memory, 6VCPU, 60GB of diskspace. -* Execute the following commands being logged as root: +* Ensure you have at least 20GB Memory, 6VCPU, 60GB of disk space. ```git clone --recursive "https://gerrit.o-ran-sc.org/r/it/dep"``` - ```./oran-deployment/scripts/layer-0/0-setup-charts-museum.sh``` + ```./dep/smo-install/scripts/layer-0/0-setup-charts-museum.sh``` - ```./oran-deployment/scripts/layer-0/0-setup-helm3.sh``` + ```./dep/smo-install/scripts/layer-0/0-setup-helm3.sh``` - ```./oran-deployment/scripts/layer-1/1-build-all-charts.sh``` + ```./dep/smo-install/scripts/layer-1/1-build-all-charts.sh``` - ```./oran-deployment/scripts/layer-2/2-install-oran.sh``` + ```./dep/smo-install/scripts/layer-2/2-install-oran.sh``` Verify pods: @@ -53,9 +54,15 @@ It has been created out of the ONAP vfirewall usecase. When all pods in "onap" and "nonrtric" namespaces are well up & running: - ```./oran-deployment/scripts/layer-2/2-install-simulators.sh``` + ```./smo-install/scripts/layer-2/2-install-simulators.sh``` + Verify pods: + ```kubectl get pods -n onap && kubectl get pods -n nonrtric``` + + When all pods in "onap" and "nonrtric" namespaces are well up & running: + + ```./dep/smo-install/scripts/layer-2/2-install-simulators.sh``` ## Structure @@ -102,15 +109,14 @@ The user entry point is located in the scripts folder │   │   └── 0-setup-kud-node.sh <--- Setup K8S node with ONAP Multicloud KUD installation │   │   └── 0-setup-microk8s.sh <--- Setup K8S node with MicroK8S installation │   │   └── 0-setup-helm3.sh <--- Setup HELM3 -│   │   └── 0-setup-tests-env.sh <--- Setup Python SDK tools │   ├── layer-1 <--- Scripts to prepare for the SMO installation │   │   └── 1-build-all-charts.sh <--- Build all HELM charts and upload them to ChartMuseum │   ├── layer-2 <--- Scripts to install SMO package │   │   ├── 2-install-nonrtric-only.sh <--- Install SMO NONRTRIC k8s namespace only │   │   ├── 2-install-oran-cnf.sh <--- Install SMO full with ONAP CNF features -│   │   ├── 2-install-oran.sh <--- Install SMO minimal +│   │   ├── 2-install-oran.sh <--- Install SMO minimal │   │   └── 2-install-simulators.sh <--- Install Network simulator (RU/DU/Topology Server) -│   │   └── 2-upgrade-simulators.sh <--- Upgrade the simulators install at runtime when changes are done on override files +│   │   └── 2-upgrade-simulators.sh <--- Upgrade the simulators install at runtime when changes are done on override files │   ├── sub-scripts <--- Sub-Scripts used by the main layer-0, layer-1, layer-2 │   │   ├── clean-up.sh │   │   ├── install-nonrtric.sh @@ -129,9 +135,9 @@ The user entry point is located in the scripts folder │   ├── apex-policy-test.sh │   └── data ├── enable-sim-fault-report <--- Enable the fault reporting of the network simulators by SDNC - │ ├── data - │ └── enable-network-sim-fault-reporting.sh - └── pythonsdk <--- Test based on ONAP Python SDK to validate O1 and A1 + │   ├── data + │   └── enable-network-sim-fault-reporting.sh + └── pythonsdk <--- Test based on ONAP Python SDK to validate O1 and A1 ├── oran-tests.xml ├── Pipfile.lock ├── README.md @@ -140,16 +146,15 @@ The user entry point is located in the scripts folder ├── tox.ini └── unit-tests - ``` ## Download: -Use git clone to get it on your server: +Use git clone to get it on your server (github ssh key config is required): -```git clone --recursive "https://gerrit.o-ran-sc.org/r/it/dep"``` +```git clone --recursive git@github.com:gmngueko/oran-deployment.git``` Note: The current repository has multiple sub git submodules, therefore the --recursive flag is absolutely REQUIRED - + ## Requirements: * K8S node setup with Helm 3 and Kubectl properly configured (tested with K8S v1.21.5 and HELM v3.5.4). FOR K8S installation, multiple options are available: @@ -159,10 +164,10 @@ Use git clone to get it on your server: OR this wiki can help to setup it (Section 1, 2 and 3): https://wiki.onap.org/display/DW/Deploy+OOM+and+SDC+%28or+ONAP%29+on+a+single+VM+with+microk8s+-+Honolulu+Setup - - KubeSpray using ONAP multicloud KUD (https://git.onap.org/multicloud/k8s/tree/kud) installation by executing(this is required for ONAP CNF deployments): - + - KubeSpray using ONAP multicloud KUD (https://git.onap.org/multicloud/k8s/tree/kud) installation by executing(this is required for ONAP CNF deployments): + ```./dep/smo-install/scripts/layer-0/0-setup-kud-node.sh``` - + - Use an existing K8S installation (Cloud, etc ...). - .... @@ -172,56 +177,60 @@ Use git clone to get it on your server: ```./dep/smo-install/scripts/layer-0/0-setup-charts-museum.sh``` - ```./oran-deployment/scripts/layer-0/0-setup-helm3.sh``` + ```./dep/smo-install/scripts/layer-0/0-setup-helm3.sh``` - Install chartmuseum manually on port 18080 (https://chartmuseum.com/#Instructions, https://github.com/helm/chartmuseum) - + ## Configuration: In the ./helm-override/ folder the helm config that are used by the SMO installation.

Different flavors are preconfigured, and should NOT be changed unless you intentionally want to updates some configurations. ## Installation: -* Build ONAP/ORAN charts +* Build ONAP/ORAN charts ```./dep/smo-install/scripts/layer-1/1-build-all-charts.sh``` * Choose the installation: - - ONAP + ORAN "nonrtric" (RECOMMENDED ONE): - + - ONAP + ORAN "nonrtric" (RECOMMENDED ONE): + ```./dep/smo-install/scripts/layer-2/2-install-oran.sh``` - - ORAN "nonrtric" par only: - + - ORAN "nonrtric" part only(To work with ONAP): + ```./dep/smo-install/scripts/layer-2/2-install-nonrtric-only.sh``` - - ONAP CNF + ORAN "nonrtric" (This must still be documented properly): - + - ORAN "nonrtric" standalone: + + ```./dep/smo-install/scripts/layer-2/2-install-nonrtric-only.sh standalone-nonrtric``` + + - ONAP CNF + ORAN "nonrtric" (This must still be documented properly): + ```./dep/smo-install/scripts/layer-2/2-install-oran-cnf.sh``` * Install the network simulators (DU/RU/Topo): - When all pods in "onap" and "nonrtric" namespaces are well up & running: - + ```kubectl get pods -n onap && kubectl get pods -n nonrtric``` - Execute the install script: - + ```./dep/smo-install/scripts/layer-2/2-install-simulators.sh``` - Check the simulators status: ```kubectl get pods -n network``` - Note: The simulators topology can be customized in the file ./oran-deployment/helm-override/network-simulators-topology-override.yaml - + Note: The simulators topology can be customized in the file ./smo-install/helm-override/network-simulators-topology-override.yaml + ## Platform access points: -* SDNR WEB: - https://K8SServerIP:30205/odlux/index.html -* NONRTRIC Dashboard: - http://K8SServerIP:30091/ +* SDNR WEB: + https://:30205/odlux/index.html +* NONRTRIC Dashboard: + http://:30091/ More to come ... ## Uninstallation: -* Execute - +* Execute + ```./dep/smo-install/scripts/uninstall-all.sh```