Add tenant group and tenant assignments across the model, forms, filters, API, tables, imports, and tests. Replace the Docker-based setup with Git/Pip installation documentation for NetBox 4.6.5.
NetBox SLM
NetBox SLM erweitert NetBox um die Verwaltung von Softwareprodukten, Versionen, Installationen und Lizenzen. Lizenzen können optional einer NetBox-Mandantengruppe und einem Mandanten zugeordnet werden.
Diese Variante ist für NetBox 4.6.5 vorgesehen.
Funktionen
- Softwareprodukte und Hersteller verwalten
- Versionen, Release-Typen und Supportzeiträume erfassen
- Installationen Geräten, virtuellen Maschinen oder Clustern zuordnen
- Softwarelizenzen einschließlich Laufzeit, Umfang und Ablageort verwalten
- Lizenzen Mandantengruppen und Mandanten zuordnen
- Bedienung über die NetBox-Oberfläche und REST-API
- Filter, Bulk-Import und Bulk-Bearbeitung
Installation
NetBox installiert lokale Erweiterungen aus /opt/netbox/local_requirements.txt. Die Git-URL muss dort dauerhaft
eingetragen werden, damit das Plugin bei einem späteren NetBox-Upgrade erneut installiert wird.
1. Git-Repository als lokale Anforderung eintragen
echo "git+https://git.mrblake.cc/MrBlake/NetBox-SLM.git" >> /opt/netbox/local_requirements.txt
Vorher kann geprüft werden, ob der Eintrag bereits vorhanden ist:
grep -qxF "git+https://git.mrblake.cc/MrBlake/NetBox-SLM.git" /opt/netbox/local_requirements.txt || \
echo "git+https://git.mrblake.cc/MrBlake/NetBox-SLM.git" >> /opt/netbox/local_requirements.txt
2. Plugin mit Pip installieren
Die Installation muss im Python-Virtual-Environment von NetBox erfolgen:
/opt/netbox/venv/bin/pip install "git+https://git.mrblake.cc/MrBlake/NetBox-SLM.git"
Alternativ können alle lokalen Anforderungen installiert werden:
/opt/netbox/venv/bin/pip install -r /opt/netbox/local_requirements.txt
3. Plugin in NetBox aktivieren
In /opt/netbox/netbox/netbox/configuration.py ergänzen:
PLUGINS = [
"netbox_slm",
]
Falls bereits andere Plugins eingetragen sind, wird "netbox_slm" lediglich zur vorhandenen Liste hinzugefügt.
Eine zusätzliche PLUGINS_CONFIG-Konfiguration ist für den Standardbetrieb nicht erforderlich.
4. Datenbank migrieren und statische Dateien aktualisieren
cd /opt/netbox/netbox
/opt/netbox/venv/bin/python manage.py migrate
/opt/netbox/venv/bin/python manage.py collectstatic --no-input
5. NetBox-Dienste neu starten
Bei einer üblichen systemd-Installation:
sudo systemctl restart netbox netbox-rq
Je nach Installation können die Namen der Dienste abweichen.
Aktualisierung
/opt/netbox/venv/bin/pip install --upgrade --force-reinstall \
"git+https://git.mrblake.cc/MrBlake/NetBox-SLM.git"
cd /opt/netbox/netbox
/opt/netbox/venv/bin/python manage.py migrate
/opt/netbox/venv/bin/python manage.py collectstatic --no-input
sudo systemctl restart netbox netbox-rq
Der Eintrag in /opt/netbox/local_requirements.txt bleibt dabei bestehen.
Deinstallation
"netbox_slm"aus derPLUGINS-Liste entfernen.- Die Git-Zeile aus
/opt/netbox/local_requirements.txtentfernen. - Das Python-Paket deinstallieren:
/opt/netbox/venv/bin/pip uninstall netbox-slm
Die Plugin-Tabellen werden dabei nicht automatisch aus der Datenbank gelöscht.
Ursprung und Lizenz
Dieses Repository basiert auf dem ursprünglichen Projekt ICTU/netbox_slm. ICTU ist der ursprüngliche Autor und Herausgeber. Mart Visser wird im Originalprojekt als Ansprechpartner genannt.
Die Anpassungen in diesem Fork werden unter git.mrblake.cc/MrBlake/NetBox-SLM gepflegt.
Das Projekt steht unter der Apache License 2.0. Die Hinweise auf die ursprünglichen Urheber bleiben erhalten.