/os-provisioning

Open Source Network Provisioning Tool and Network Management Platform for DOCSIS, FTTH, FTTx, DSL, and WiFi

Primary LanguagePHPApache License 2.0Apache-2.0

NMS Prime Logo hosted by CableLabs Logo


Open in Visual Studio Code Crowdin StyleCI

OS Provisioning Community Version

NMS PRIME is an Open Source Network Provisioning Tool and Network Management Platform that enables access across multiple access technologies/domains, like DOCSIS, FTTH, FTTx, DSL and WiFi. It allows a seamless user experience across multiple connectivity services. It reduces complexity for network operators through a simple and easy to adapt application marketplace.

NMS Prime Marketplace

Community Applications

Functionality

Provisioning Tool

  • DOCSIS 1.0, 1.1, 2.0, 3.0, 3.1
  • FTTH, DSL, WiFi Provisioning, via TR-069 and RADIUS
  • IPv4 / IPv6

Network Management Platform

  • CMTS, OLT, Router and Switch Management via SNMP or TR-069
  • Cable ingress detection
  • Show and manage your IT infrastructure in real-time in topographic maps and entity relation diagrams
  • Auto configuration of Icinga2 and Cacti from one database
  • Ticket System
  • Generic SNMP GUI creator
  • Basic billing functionality
  • more informations..

For more information head over to the NMS Prime Official Documentation

Architectural Concepts

NMS Prime is based on the Laravel framework and uses PHP 8 for the back end and a modern and responsive Bootstrap theme for the front end.

It is tested and developed under CentOS 7 (RHEL 7).

NMS Prime is build with standard Linux tools, like

These tools are actively developed, approved and used. See Design Architecture for more information.

Installation

Community Version

From RPM for CentOS 7 (RHEL 7)

curl -vsL https://github.com/cablelabs/os-provisioning/raw/dev/INSTALL-REPO.sh | bash
yum install nmsprime-*

Enterprise Version

Select your applications and run them in the Cloud or On-Prem here: Enterprise Installation

Developers only (source-code installation)

In order to track and install all NMS Prime dependencies, the workflow for getting a source code installation up and running starts like described above. You can use both variants (community or enterprise) to do so.

Afterwards the NMS Prime RPM packages are replaced with the GIT repository by issuing the following commands:

for module in $(rpm -qa "nmsprime-*" | grep -v '^nmsprime-repos'); do rpm -e --justdb --noscripts --nodeps "$module"; done

yum install git

php -r "copy('https://getcomposer.org/installer', 'composer-setup.php');"
php composer-setup.php --install-dir=/usr/local/bin --filename=composer

cd /var/www
git clone https://github.com/cablelabs/os-provisioning nmsprimeGit
mv nmsprimeGit/.git/ nmsprime/
rm -rf nmsprimeGit/
cd nmsprime

git checkout -- .

# move enterprise apps into /root folder for reference, they are not needed for the community git version
for module in $(ls -1 modules | grep -v '^HfcReq$\|^HfcSnmp$\|^NmsMail$\|^ProvBase$\|^ProvVoip$'); do mv "$module" /root/; done

COMPOSER_MEMORY_LIMIT=-1 composer update

/opt/remi/php80/root/usr/bin/php artisan config:cache
/opt/remi/php80/root/usr/bin/php artisan clear-compiled
/opt/remi/php80/root/usr/bin/php artisan optimize
/opt/remi/php80/root/usr/bin/php artisan migrate
/opt/remi/php80/root/usr/bin/php artisan module:migrate
/opt/remi/php80/root/usr/bin/php artisan module:publish
/opt/remi/php80/root/usr/bin/php artisan queue:restart
/opt/remi/php80/root/usr/bin/php artisan bouncer:clean
/opt/remi/php80/root/usr/bin/php artisan auth:nms
/opt/remi/php80/root/usr/bin/php artisan route:cache
/opt/remi/php80/root/usr/bin/php artisan view:clear

Contributors

How to contribute

Please read CONTRIBUTING for details on our code of conduct, and the process for submitting pull requests to us.

Write your own Application

If you want to develop your own open-source or proprietary application(s), please refer to Write your own Application

History & Motivation

NMS Prime started as an German initiative from ISP's for ISP's with the goal in mind to build an open source reference implementation for an technology and vendor agnostic provisioning solution (DOCSIS, FTTH, WiFi, ..). Get part of our movement and roll up your sleves by participating in our development.

Roadmap

See Upcoming Developments

License

This project is licensed under the Apache-2.0 file for details. For more information: License Article