Manual Configuration:
This configuration is required to enable the ranSlice features in SDN-R.
SDNC:
- Create the below environment variable in the helm chart at kubernetes/sdnc/templates/statefulset.yaml (for sdnc container).
+ - name: SDNR_NORTHBOUND
+ value: "{{ .Values.config.sdnr.enabled | default "false"}}"
- Make the SDNC chart and then deploy.
- Execute the following command to log into the sdnc container
- kubectl exec -it dev-sdnc-0 bash
- Once in the docker container, edit the properties file /opt/onap/ccsdk/data/properties/ran-slice-api-dg.properties
- update the following flag to true.
- ransim-mounted=true
- configdb-deployed=false (set to true if configDB is used)
- cps-deployed=true (set to true if cps is used)
- Update IP address for ConfigDB:
- configdb.url=${CONFIG_DB_URL:-http://<IPAddress>:8086/api/sdnc-config-db/v4}
- Update IP address for CPS-TBDMT:
- restapi.cps.anchors.endpoint=${CPS_URL:-http://<IPAddress>:8883}/cps/api/v1/dataspaces/E2EDemo/anchors
- update the following flag to true.
POLICY:
- Login to the policy-drools-pdp container and check if the value 'actor.service.SO.operations.Modify\ NSSI.path=3gppservices/v1/modify' is present in the below file:
- kubectl exec -ti -n onap dev-policy-drools-pdp-0 sh
- /opt/app/policy/config/event-manager.properties
- If value not present update the policy-drools-pdp-image to this version'/onap/policy-pdpd-cl:1.10.2-20220413T1305' or any version after '1.10.2'
Policies needed:
Execute these curl requests from any of the running pods.
...
where modifynssi.json is,
|
To push the policy:
curl --silent -k --user 'policyadmin:zb!XztG34' -X POST "https://policy-pap:6969/policy/pap/v1/pdps/policies" -H "Accept: application/json" -H "Content-Type: application/json" -d @push_modifynssi.json
where push_modifynssi.json is,
|
Deployment Prerequisite/dependencies
...
- Download the configDb source files from configdb-3.0.0.zip
- cd configdb (after extracting the files)
- Setup and run maridb container
- sudo docker run -p 3306:3306 -v $PWD/SDNC_ConfigDB_SchemaV4.sql:/docker-entrypoint-initdb.d/SDNC_ConfigDB_SchemaV4.sql --name mariadb -e MYSQL_ROOT_PASSWORD=password -d mariadb
- Navigate to project directory
- cd configdb/Config-DB-API-App
- Build the application
- JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/ mvn clean install
- Run the application
- JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/ mvn spring-boot:run &
- Run this script to load sample data data config_requests_script_intelligent_slicing.shSample data to insert slice-profile configdb-data.txt
CPS and CPS-TBDMT:
CPS:
- git clone "https://gerrit.onap.org/r/cps"
- cd cps/
- mvn clean install
- cd docker-compose/
- docker-compose up
...
- git clone "https://gerrit.onap.org/r/cps/cps-tbdmt"
- cd cps-tbdmt/
- mvn clean install
- cd docker-compose/
- update cps & ncmp ip-address in application.yml
- cps-tbdmt/docker-compose/application.yml should have the below mapping under the section schemaToAnchor:
- schemaToAnchor:
ran-coverage-area: coverage-area-onap
e2e-cavsta-schemaset: e2e-cavsta1
CSIT-SchemaSet: CSIT-Anchor
ns-schemaset: ns-anchor
ran-network: 11
ran-inventory: ran-inventory-anchor
- schemaToAnchor:
- docker-compose up (use the image built using the above steps in the docker-compose file)
Creating dataspace:
curl --location --user cpsuser:cpsr0cks! -H "Accept: application/json" -H "Content-Type: application/json" \
--request POST \
http://$CPS_IP:8080/cps/api/v1/dataspaces?dataspace-name=E2EDemo
Creating schema set:
ran-network.zip
curl --location --user cpsuser:cpsr0cks! \
--request POST \
http://$CPS_IP:8080/cps/api/v1/dataspaces/E2EDemo/schema-sets --form 'file=@"ran-network.zip"' --form 'schema-set-name="ran-network"'
...
Uploading cps sample data:
payload-ran-network.json
curl --location --user cpsuser:cpsr0cks! --request POST \
http://$CPS_IP:8080/cps/api/v1/dataspaces/E2EDemo/anchors/11/nodes \
--header 'Content-Type: application/json' \
-d @payload-ran-network.json
ran-inventory-sample-data.json
curl --location --user cpsuser:cpsr0cks! --request POST \
http://$CPS_IP:8080/cps/api/v1/dataspaces/E2EDemo/anchors/ran-inventory-anchor/nodes \
--header 'Content-Type: application/json' \
-d @ran-inventory-sample-data.json ran-inventory-sample-data.json
Uploading tbdmt-templates:
...
2. Give chmod 777 to upload folder which will be created automatically in the home dir.
ML-prediction-ms:
- git clone "https://gerrit.onap.org/r/dcaegen2/services"(use patchset ml-prediction-ms if code not merged)
- cd services/components/ml-prediction-ms
- Update Ransim, Dmaap and ConfigDB IPAddress/Port details in ml-prediction-ms.config
- Build docker image using: 'docker build -t ml-prediction-ms:latest .'
- Run the ml-prediction-ms container.
- docker run -d --name ml-prediction-ms -p "5000:5000" ml-prediction-ms:latest
- To view the logs:
- docker exec -ti ml-prediction-ms bash
- tail -f IntelligentSliceMl.log
NOTE: Use sample data attached under CONFIGDB, RANSIM and CPS if E2E communication service is not done.