/TNLCM

Trial Network Lifecycle Manager

Primary LanguagePython

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
MinIO 2024-07-04
Jenkins v2.462.3

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 installer.sh and is located in the scripts directory.

πŸ–₯️ Execute installation script

Give execution permissions to the script:

chmod +x installer.sh

Run the script and follow the instructions:

./installer.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πŸ”Ό