Skip to content

6G-SANDBOX/TNLCM

Repository files navigation

TRIAL NETWORK LIFECYCLE MANAGER

Contributors Forks Stargazers Issues

TNLCM

Report error · Feature request · Wiki

TNLCM (Trial Network Lifecycle Manager) is a tool designed to manage the lifecycle of trial networks in research and development environments, including integration with advanced technologies such as 6G. It provides features for creating, deploying, monitoring, and deleting experimental networks, ensuring efficient resource management. Additionally, it includes an API, a clear MongoDB database schema and support for defining networks through customizable descriptors.

Table of Contents

📍 Roadmap

  • Enhance validate trial network descriptor.
  • Update logs.
  • Update state machine to update trial network.
  • Add token for interaction between jenkins and tnlcm at callback endpoint.
  • Integration with Slurm.

🚀 Getting Started Locally

Important

TNLCM requires the prior installation of:

Repository Release
OpenNebula v6.10
Jenkins v2.462.3
MinIO 2024-07-04

Tip

Additionally TNLCM depends on:

Repository Release Branch
6G-Library - v0.3.1
6G-Sandbox-Sites - platform

📥 Download the installation script

Download the installation script which is deploy_vm.sh and is located in the scripts directory.

🖥️ Execute installation script

Give execution permissions to the script:

chmod +x deploy_vm.sh

Run the script and follow the instructions:

./deploy_vm.sh

🐍 Start server

gunicorn -c conf/gunicorn_conf.py

A Swagger UI will be available at the url http://tnlcm-backend-ip:5000 where the API with the endpoints exposed.

🛠️ Stack

  • Python - Programming language.
  • Flask - Python framework for web applications to expose the API.
  • MongoDB - NoSQL database designed to store Trial Networks.

📚 Documentation

Find the complete documentation and usage guides in our wiki.

Contributors

Back to top🔼