...
1. Clone and Checkout Ran-Sim Controller(use Dublin branch)
git clone https://github.com/onap-oof-pci-poc/ran-sim.git
cd ran-sim/ransim/
...
Maximum number of machines available(use default value present in the file).
e) GridSize: (Applicable only for HONEYCOMB representation)
The number of cells that can be accommodated along one side of the cluster for an auto-generated layout.
...
g) sdnrServerIp:
SDNR server IP address (change the value Neglect(Refer point 5 to update SDNR details).
h) sdnrServerPort:
SDNR server port number (change the value Neglect(Refer point 5 to update SDNR details).
i) sdnrServerUserid:
SDNR server user ID (change the valueNegelct (Refer point 5 to update SDNR details).
j) sdnrServerPassword:
SDNR server password (change the valueNegelct (Refer point 5 to update SDNR details).
k) maxPciValueAllowed:
maximum value of the physical cell Id. (Default is 503).
l)dumpFileName
Location of the dumpfile to load the topology.
The dump file is loaded from '<YOURFOLDER>/ransim/docker/config5. To form the cluster from dump file (random simulation) update the cell details in 'SIM_Ran_config.json'. A sample file is also included.
File directory:
<YOURFOLDER>/ransim/ransimctrlr/packages/base/src/files/install/servers/ransim/bin/SIM_Ran_config.json
6. Run the following command in the terminal
mvn clean install
7. Add an entry into /etc/hosts file for ransimsvr from wherever you are accessing the Ransim Web UI
<IP where ransim controller is running> ransimsvr
8. After successful build navigate to '<YOURFOLDER>/ransim/docker' directory.
9. Run the following three commands in the terminal:
'mvn prepare-package'
'docker build -t onap/ransim ransim-docker'
'docker-compose up'
Note: Use docker compose version 1.6.0 or above.
Once the ransim and mariadb containers are started, you can see logs similar to below image:
10. Access the GUI using the following url in the web browser:
‘http://<yourIP>:8081/ransimui/index.html’
11. Access the swagger ui using the following url:
‘http://<yourIP>:8081/ransim/api/swagger-ui.html’
12. Try the following url in Websocket client extension in the web browser to verify the connectivity:
dump file - 'sample.json' contains deatils of 1000 cells.
For the controller to access the dump file from the the above location use the path - /tmp/ransim-install/config/sample.json
5. The SDNR details can be updated in the file '<YOURFOLDER>/ransim/docker/docker-compose.yml'.
environment:
- SDNR_IP={SDNR IP address}
- SDNR_PORT={SDNR port number}
- SDNR_USER={SDNR user ID}
- SDNR_PASSWORD={SDNR user password}
6. Run the following command in the terminal
mvn clean install
7. After successful build navigate to '<YOURFOLDER>/ransim/docker' directory.
8. Run the following three commands in the terminal:
'mvn prepare-package'
'docker build -t onap/ransim-demo ransim-docker'
'docker-compose up'
Note: Use docker compose version 1.6.0 or above.
Once the ransim and mariadb containers are started, you can see logs similar to below image
9. Access the GUI using the following url in the web browser:
‘http ‘ws://<yourIP>:8081/ransim/RansimAgent/hai’
Steps to check the RAN-Sim Controller logs
1. Open the console and enter the following command:
'docker ps'
2. Once the container details is displayed enter the following command:
docker exec -it <CONTAINER ID> bash
3. Navigate to '/opt/app/policy/servers/ransim/logs' using the cd command.
4. Execute the following command to check the logs:
'tail -f ransim-rest.log'
Steps to access the tables in mysql and check table contents
1. Enter the following command in console to access mysql:
'mysql --user=root --password=secret --host=127.0.0.1 --port=43306 ransim_db'
2. Type 'show tables;' to check the and access the tables.
Notify Cell Modification tested with Netconf-console
Pre-Requisites:
- ncclient must be present. If not, run pip install ncclient
- pip install netconf-console
Command to establish session with device:
netconf-console --host netconf-agent-ip --port netconf-agent-port --raw
eg., netconf-console --host 10.143.125.163 --port 50000 --raw
Session will be established with an interactive shell. Run the following command to create subscription:
create-subscription -x honeycomb
For testing,
- Select "Modify" menu by right clicking any cell in Ransim-GUI.
- Change the pcid value and click modify. Modified Successfully message displayed.
- Verify the notification received as below in netconf-console shell. Any issue check honeycomb log.
hc_50000/var/log/honeycomb/honeycomb.log
2. RAN-Sim: Netconf-server(s) (agents) - Extended Honeycomb
This has the following steps:
A. Cloning and building Honeycomb (base) repository
B. Cloning and building enodebsim repository
A. HoneyComb Repository
Clone using following URL:
git clone https://gerrit.fd.io/r/honeycomb
cd honeycomb/
Checkout using the following ChangeId which is part 08_10 version(current release):
ransimui/index.html
10. Access the swagger ui using the following url:
‘http://<yourIP>:8081/ransim/api/swagger-ui.html
11. Try the following url in Websocket client extension in the web browser to verify the connectivity:
‘ws://<yourIP>:8081/ransim/RansimAgent/hai’
Steps to check the RAN-Sim Controller logs
1. Open the console and enter the following command:
'docker ps'
2. Once the container details is displayed enter the following command:
docker exec -it ransim bash
3. Navigate to '/opt/app/policy/servers/ransim/logs' using the cd command.
4. Execute the following command to check the logs:
'tail -f ransim-rest.log'
Steps to access the tables in mysql and check table contents
1. Enter the following command in console to access mysql:
'mysql --user=root --password=secret --host=127.0.0.1 --port=3306 ransim_db'
2. Type 'show tables;' to check the and access the tables.
2. RAN-Sim: Netconf-server(s) (agents) - Extended Honeycomb
This has the following steps:
A. Cloning and building Honeycomb (base) repository
B. Cloning and building enodebsim repository
A. HoneyComb Repository
Clone using following URL:
git clone https://gerrit.fd.io/r/honeycomb
cd honeycomb/
Checkout using the following ChangeId which is part 08_10 version(current release):
git checkout e9d3785d0603bf6e024affafc735641ee312b675
...
This repository has the code we developed.
1. Clone(use Dublin branch) and checkout the latest:
git clone https://github.com/onap-oof-pci-poc/ran-sim.git
git checkout master
cd hcsim-content/
https://github.com/onap-oof-pci-poc/ran-sim.git
git checkout Dublin
cd hcsim-content/
2. Copy ‘m2_settings.xml’ from ‘<YOURFOLDER>/honeycombsim/’ to <HOME>/.m2/ folder as settings.xml file after updating environment specific configurations.
...
<phy-cell-id-in-use>40</phy-cell-id-in-use>
</x-0005b9-lte>
</fap-service>
<fap-service>
<alias>71</alias>
<x-0005b9-lte>
<pnf-name>ncserver1001</pnf-name>
<phy-cell-id-in-use>60</phy-cell-id-in-use>
</x-0005b9-lte>
</fap-service>
</radio-access>
</config>
<default-operation>merge</default-operation>
</edit-config>
</rpc>
]]>]]>
<rpc xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="101">
<commit>
<target>
<candidate/>
</target>
</commit>
</rpc>
]]>]]>
Successful execution of this command should update the pcid value to 60 and the same should be viewed from Ransim GUI.
-in-use>
</x-0005b9-lte>
</fap-service>
<fap-service>
<alias>71</alias>
<x-0005b9-lte>
<pnf-name>ncserver1001</pnf-name>
<phy-cell-id-in-use>60</phy-cell-id-in-use>
</x-0005b9-lte>
</fap-service>
</radio-access>
</config>
<default-operation>merge</default-operation>
</edit-config>
</rpc>
]]>]]>
<rpc xmlns="urn:ietf:params:xml:ns:netconf:base:1.0" message-id="101">
<commit>
<target>
<candidate/>
</target>
</commit>
</rpc>
]]>]]>
Successful execution of this command should update the pcid value to 60 and the same should be viewed from Ransim GUI.
Edit or delete operation on different cells in the topology of the agent will notify the Ransim Controller which will update GUI & DB to be in Sync.
Notify Cell Modification tested with Netconf-console
Pre-Requisites:
- ncclient must be present. If not, run pip install ncclient
- pip install netconf-console
Command to establish session with device:
netconf-console --host netconf-agent-ip --port netconf-agent-port --raw
eg., netconf-console --host 10.143.125.163 --port 50000 --raw
Session will be established with an interactive shell. Run the following command to create subscription:
create-subscription -x honeycomb
For testing,
- Select "Modify" menu by right clicking any cell in Ransim-GUI.
- Change the pcid value and click modify. Modified Successfully message displayed.
- Verify the notification received as below in netconf-console shell. Any issue check honeycomb log.
hc_50000/var/log/honeycomb/honeycomb.log
Edit or delete operation on different cells in the topology of the agent will notify the Ransim Controller which will update GUI & DB to be in Sync.
Additional information
To run each instance of HoneyComb it requires ~353 MB of memory. Still we are working on optimizing the simulator configuration to run only required processes for ONAP setup.
3. PCI-Micro service
Cloning the chart repository
...