Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

Documentation is currently in progress.

RANSIM :

Follow the steps below to setup the Ransim environment:

...

  • Clone the repo from : git clone https://github.com/onap-oof-pci-poc/ran-sim
  • Go to the ran-sim/hcsim-content/gnbsim directory and build the project : JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/ mvn clean install -Dcheckstyle.skip
    (Note: the project comes with it's own maven settings in ran-sim/hcsim-content/m2_settings.xml, that are required on top of the standard ONAP settings to build this.
  • For code changes in gnbsim-impl directory

    Step 1: Do necessary code changes in gnbsim-impl
    Step 2: Issue the build command "JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/ mvn clean install -Dcheckstyle.skip"

    Once the mvn build is done, build the docker image

    Step 1: Go to directory ~/ran-sim/hcsim-content/gnbsim
    Step 2: JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/ mvn clean install -Dcheckstyle.skip

    Step 3: Import the latest VES certificate into this directory gnbsim-distribution/ rename it as "jssecacerts"
    Step 3: cp -r gnbsim-distribution/jssecacerts gnbsim-distribution/target/gnbsim-distribution-1.19.08-SNAPSHOT-hc/gnbsim-distribution-1.19.08-SNAPSHOT/
    Step 4: cp -r gnbsim-distribution/honeycomb gnbsim-distribution/target/gnbsim-distribution-1.19.08-SNAPSHOT-hc/gnbsim-distribution-1.19.08-SNAPSHOT/
    Step 5: cp -r gnbsim-distribution/Dockerfile gnbsim-distribution/target/gnbsim-distribution-1.19.08-SNAPSHOT-hc/gnbsim-distribution-1.19.08-SNAPSHOT/
    Step 6: docker build -t gn gnbsim-distribution/target/gnbsim-distribution-1.19.08-SNAPSHOT-hc/gnbsim-distribution-1.19.08-SNAPSHOT/

  • Cross check the docker image
    docker images | grep gn

To run the Netconf Servers:

  1. Update ransim and honeycom IP address at ~/ran-sim/hcsim-content/gnbsim/honeycomb/hc/config/gnbsim.json and docker-compose files(step repeated for all hc, cucp, cuup, du folders)

      2. Run the up.sh script in ran-sim/hcsim-content/gnbsim/honeycomb. (wait for all the honeycomb servers to come up)

      3. Run the mount.sh script in ran-sim/hcsim-content/gnbsim/honeycomb.

         After execution of the above script, these servers will be mounted in SDNC(check ransim and SDNR logs if the mount request is successful for all the servers). 

         Access the restconf page to view the mounted servers: https://<WorkerVMIpAddress>:30267/apidoc/explorer/index.htm

Troubleshooting Common Errors:

...

Give the cmd: kubectl exec -it dev-sdnc-0 -n onap bash

  • Check if the dg's are loaded in /opt/onap/sdnc/svclogic/graphs/ranSliceapi 
  • Check the dg's logs in /opt/opendaylight/current/data/log/ 

...

          schemaToAnchor mapping – provide the created schemaset and anchor name ( ran-network-schemaset : ran-network-anchor , cps-ran-schemaset : ran-cps-ran-anchor )

  • From the docker-compose folder, run the following to bring up the containers : docker-compose up -d
  • Once the docker container is up, execute the following TBDMT-APIs

...

curl --location --request POST 'http://localhost:8080/execute/cps-ran-schemaset/get-cell' --header 'Content-Type: application/json' --data-raw '{
       "inputParameters": {
          "regionId":"netw200010000000"
       }
   }' -i

get-nbr-list API :

curl --location --request POST 'http://localhost:8080/templates' --header 'Content-Type: application/json' --data-raw '{
       "templateId": "get-nbr-list",
       "model": "cps-ran-schemaset",
       "requestType": "get",
       "xpathTemplate": "/cps-ran-schema/Regions[@regionId='\''{{netw1000}}'\'']/cps-region-cell-mapping/NRCellCU[@idNRCellCU='\''{{cellId}}'\'']",
       "includeDescendants": true, "transformParam":"NRCellCU"
   }' -i

To verify the created template :

curl --location --request POST 'http://localhost:8080/execute/cps-ran-schemaset/get-nbr-list' --header 'Content-Type: application/json' --data-raw '{
       "inputParameters": {
          "cellId":"Chn000513999"
       }
   }' -i

get-nbr-list1 API : (OOF)

curl --location --request POST 'http://localhost:8080/templates' --header 'Content-Type: application/json' --data-raw '{
       "templateId": "get-nbr-list1",
       "model": "cps-ran-schemaset",
       "requestType": "get",
       "xpathTemplate": "/cps-ran-schema/Regions[@regionId='\''{{regionId}}'\'']/cps-region-cell-mapping/NRCellCU[@idNRCellCU='\''{{idNRCellCU}}'\'']",
       "includeDescendants": true, "transformParam":"NRCellCU"
   }' -i

To verify the created template :

curl --location --request POST 'http://localhost:8080/execute/cps-ran-schemaset/get-nbr-list1' --header 'Content-Type: application/json' --data-raw '{
       "inputParameters": {
          "regionId":"netw100010000000",
          "idNRCellCU":"Chn000513999"
       }
   }' -i

get-pci API :

curl --location --request POST 'http://localhost:8080/templates' --header 'Content-Type: application/json' --data-raw '{
        "templateId": "get-pci",
        "model": "ran-network-schemaset",
        "requestType": "getquery-cps-path",
        "xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{11}}'\'']/GNBDUFunction[@idGNBDUFunction='\''{{110}}'\'']/NRCellDU[@idNRCellDU='\''{{cellId}}'\'']/attributes",
        "includeDescendants": true,
        "transformParam":"NRCellDU,attributes"
}' -i

To verify the created template :

curl --location --request POST 'http://localhost:8080/execute/ran-network-schemaset/get-pci' --header 'Content-Type: application/json' --data-raw '{
       "inputParameters": {
          "cellId":"Chn000514427"
       }
   }' -i

get-pnf API :

curl --location --request POST 'http://localhost:8080/templates' --header 'Content-Type: application/json' --data-raw '{
        "templateId": "get-pnf",
        "model": "ran-network-schemaset",
        "requestType": "query-cps-path",
        "xpathTemplate": "//NRCellCUNRCellDU[@idNRCellCU@idNRCellDU='\''{{cellId}}'\'']/ancestor::GNBCUCPFunctionGNBDUFunction",
        "includeDescendants": true
        "transformParam":"GNBDUFunction"
}' -i

To verify the created template :

curl --location --request POST 'http://localhost:8080/execute/ran-network-schemaset/get-pnf' --header 'Content-Type: application/json' --data-raw '{
       "inputParameters": {
          "cellId":"Chn000814427"
       }
   }' -i

get-nearrtric-by-idgnbdufunction :

curl --location --request POST 'http://localhost:8080/templates' --header 'Content-Type: application/json' --data-raw '{
        "templateId": "get-nearrtric-by-idgnbdufunction",
        "model": "ran-network-schemaset",
        "requestType": "query-cps-path",
        "xpathTemplate": "//GNBDUFunction/idGNBDUFunction[text()='\''{{idGNBDUFunction}}'\'']/ancestor::NearRTRIC",
        "includeDescendants": true,
        "transformParam":"NearRTRIC,idNearRTRIC"
}' -i

...

curl --location --request POST 'http://localhost:8080/templates' --header 'Content-Type: application/json' --data-raw '{
        "templateId": "get-nearrtric-by-idgnbcucpfunction",
        "model": "ran-network-schemaset",
        "requestType": "query-cps-path",
        "xpathTemplate": "//GNBCUCPFunction/idGNBCUCPFunction[text()='\''{{idGNBCUCPFunction}}'\'']/ancestor::NearRTRIC",
        "includeDescendants": true,
        "transformParam":"NearRTRIC,idNearRTRIC"
}' -i

...

curl --location --request POST 'http://localhost:8080/templates' --header 'Content-Type: application/json' --data-raw '{
        "templateId": "put-nrpci-nrcelldu",
        "model": "ran-network-schemaset",
        "requestType": "patch",
        "xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBDUFunction[@idGNBDUFunction='\''{{idGNBDUFunction}}'\'']/NRCellDU[@idNRCellDU='\''{{idNRCellDU}}'\'']",
        "includeDescendants": true
}' -i

...

curl --location --request POST 'http://localhost:8080/templates' --header 'Content-Type: application/json' --data-raw '{
        "templateId": "put-nrpci-nrcelldu",
        "model": "ran-network-schemaset",
        "requestType": "patch",
        "xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBDUFunction[@idGNBDUFunction='\''{{idGNBDUFunction}}'\'']/NRCellDU[@idNRCellDU='\''{{idNRCellDU}}'\'']",
        "includeDescendants": true
}' -i

...

curl --location --request POST 'http://localhost:8080/templates' --header 'Content-Type: application/json' --data-raw '{
        "templateId": "put-ho-nrcellrelation",
        "model": "ran-network-schemaset",
        "requestType": "patch",
        "xpathTemplate": "/ran-network/NearRTRIC[@idNearRTRIC='\''{{idNearRTRIC}}'\'']/GNBCUCPFunction[@idGNBCUCPFunction='\''{{idGNBCUCPFunction}}'\'']/NRCellCU[@idNRCellCU='\''{{idNRCellCU}}'\'']/NRCellRelation[@idNRCellRelation='\''{{idNRCellRelation}}'\'']",
        "includeDescendants": true
}' -i

...