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.
- Provisioning
- VoIP Provisioning
- Control, .. and more
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
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.
From RPM for CentOS 7 (RHEL 7)
curl -vsL https://github.com/cablelabs/os-provisioning/raw/dev/INSTALL-REPO.sh | bash
yum install nmsprime-*
Select your applications and run them in the Cloud or On-Prem here: Enterprise 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 npm
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 -- .
git clean -f -x
# 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 update
npm i && npm run dev
yum install $(for file in $(find /var/www/nmsprime -name config.cfg); do grep '^depends[[:space:]]*=' "$file" | cut -d'=' -f2- | cut -d'"' -f2; done | tr ';' '\n' | sed -e '/^$/d' -e '/^nmsprime-/d' | sort -u)
php artisan migrate
php artisan module:migrate
php artisan module:publish
php artisan bouncer:clean
php artisan auth:nms
php artisan optimize
systemctl restart supervisord
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
License
This project is licensed under the Apache-2.0 file for details. For more information: License Article