-
Notifications
You must be signed in to change notification settings - Fork 17
Demo NetSoft2019 vim emu
Presenter/Lead: Manuel Peuster (UPB)
Abstract: 5G together with software defined networking (SDN) and network function virtualisation (NFV) will enable a wide variety of vertical use cases. One of them is the smart manufacturing case which utilises 5G networks to interconnect production machines, machine parks, and factory sites to enable new possibilities in terms of flexibility, automation, and novel applications (industry 4.0). However, the availability of realistic and practical proof-of-concepts for those smart manufacturing scenarios is still limited.
This demo fills this gap by not only showing a real-world smart manufacturing application entirely implemented using NFV concepts, but also a lightweight prototyping framework that simplifies the realisation of vertical NFV proof-of-concepts. During the demo, we show how an NFV-based smart manufacturing scenario can be specified, on-boarded, and instantiated before we demonstrate how the presented NFV services simplify machine data collection, aggregation, and analysis.
If the demo should be done with a Azure IoT backend connection you need to activate the connection in the CC and provide the required access credentials and tokens: Dockerfile.vimemu.
For external users it is recommended to leave this deactivated to reproduce the demo.
In a dedicated terminal (keep open):
cd ~/tng-industrial-pilot/emulator-topologies/demo-dashboard/
./serve.sh
Dashboard is available under <MACHINE_IP_HOST>:5002
.
$ sudo python ~/tng-industrial-pilot/emulator-topologies/netsoft19-demo.py
TBD
source venv_tango_sdk/bin/activate
cd ~/tng-industrial-pilot/sdk-projects
# packaging
$ tng-pkg --validation_level i -p tng-smpilot-ns2-emulator/
$ tng-pkg --validation_level i -p tng-smpilot-ns1-emulator/
# on-boarding (short: ./netsoft_onboard.sh)
tng-cli -u http://127.0.0.1 package -u eu.5gtango.tng-smpilot-ns1-emulator.0.1.tgo
tng-cli -u http://127.0.0.1 package -u eu.5gtango.tng-smpilot-ns2-emulator.0.1.tgo
# list packages
tng-cli -u http://127.0.0.1 package -l
# list services
tng-cli -u http://127.0.0.1 service --descriptor
# instantiate
./netsoft_instantiate_stage1.sh
# list instances
tng-cli -u http://127.0.0.1 -v service --instance
./netsoft_instantiate_stage2.sh
vim-emu compute list
Or use the vim-emu dashboard: http://fgcn-peuster2.cs.upb.de:5001/dashboard/dashboard.html
This is done automatically.
This is a private Azure/Power BI account. Skip this if you try to reproduce the demo.
# terminate service instances (no tng-cli support right now)
curl -X DELETE http://127.0.0.1:32002/instantiations -d {}
- about 4 CPU cores, 8 GB mem, 100GB disk (less might work, but won't be fun)
- Ubuntu 18.04 LTS (fresh!)
- Python2 system wide
- vim-emu
- Python3 SDK venv:
- 5GTANGO SDK (project, validate, package)
- tng-cli
- First run
sudo apt-get install python-backports.ssl-match-hostname
andsudo apt remove ufw
- Then follow this guide. Manual installation with option 1 "bare metal".
- Finally
cd ~/vim-emu
andsudo python setup.py develop
Following this guide, do:
cd ~/
# install virutalenv
sudo apt install virtualenv
# find out the path to your python3
which python3
# create a fresh virtualenv
virtualenv -p <path_to_python3> venv_tango_sdk
# activate the virtualenv
source venv_tango_sdk/bin/activate
# install tng-sdk-project
pip3 install git+https://github.com/sonata-nfv/tng-sdk-project.git
# install tng-sdk-validator
pip3 install git+https://github.com/sonata-nfv/tng-sdk-validation.git
# install tng-sdk-package
pip3 install git+https://github.com/sonata-nfv/tng-sdk-package
# install tng-cli
pip3 install git+https://github.com/sonata-nfv/tng-cli
Clone this repo to get all the demo materials:
git clone https://github.com/sonata-nfv/tng-industrial-pilot.git
Build the VNF containers (that might take time, be patient)
cd ~/tng-industrial-pilot/vnfs/
sudo ./build_docker_vnfs.sh
Done. Your machine is now prepared to execute the demo walkthrough.
This is done by a static file: ~/tng-industrial-pilot/emulator-topologies/static_placement.yml
.
Done by files <container_name>.env.yml
in ~/tng-industrial-pilot/emulator-topologies/envs
.
docker exec mn.vnf_rtr.cdu01.0 ping 30.0.0.1
docker exec mn.vnf_rtr.cdu01.1 ping 30.0.0.1
...
docker exec -it mn.vnf_cc.cdu03.0 /bin/bash
mosquitto_sub -h 30.0.0.1 -p 1883 -v -t +/+/+