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.
117 lines
3.6 KiB
Markdown
117 lines
3.6 KiB
Markdown
# 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
|
|
|
|
```bash
|
|
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:
|
|
|
|
```bash
|
|
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:
|
|
|
|
```bash
|
|
/opt/netbox/venv/bin/pip install "git+https://git.mrblake.cc/MrBlake/NetBox-SLM.git"
|
|
```
|
|
|
|
Alternativ können alle lokalen Anforderungen installiert werden:
|
|
|
|
```bash
|
|
/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:
|
|
|
|
```python
|
|
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
|
|
|
|
```bash
|
|
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:
|
|
|
|
```bash
|
|
sudo systemctl restart netbox netbox-rq
|
|
```
|
|
|
|
Je nach Installation können die Namen der Dienste abweichen.
|
|
|
|
## Aktualisierung
|
|
|
|
```bash
|
|
/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
|
|
|
|
1. `"netbox_slm"` aus der `PLUGINS`-Liste entfernen.
|
|
2. Die Git-Zeile aus `/opt/netbox/local_requirements.txt` entfernen.
|
|
3. Das Python-Paket deinstallieren:
|
|
|
|
```bash
|
|
/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](https://github.com/ICTU/netbox_slm). **ICTU** ist der ursprüngliche Autor und Herausgeber.
|
|
[Mart Visser](https://github.com/MartVisser) wird im Originalprojekt als Ansprechpartner genannt.
|
|
|
|
Die Anpassungen in diesem Fork werden unter
|
|
[git.mrblake.cc/MrBlake/NetBox-SLM](https://git.mrblake.cc/MrBlake/NetBox-SLM) gepflegt.
|
|
|
|
Das Projekt steht unter der [Apache License 2.0](LICENSE). Die Hinweise auf die ursprünglichen Urheber bleiben
|
|
erhalten.
|