Benutzer-Werkzeuge

Webseiten-Werkzeuge


netxms

NetXMS ist ein kostenloses Monitoring Tool ähnlich PRTG.

ExternalParameter

Gehe zu Templates und erstelle ein neues Template „TestTemplate“. Füge ein Target dazu. Erstelle eine Agent Policy „TestPolicy“ mit Inhalt

ExternalParameter=TestParameter:whoami

Erstelle einen Parameter in „Data Collection“.

  • Metric: TestParameter (muss heissen wie der ExternalParameter in der Policy)
  • DisplayName: TestParameter (frei wählbar)

Restart Agent. (Auch wenn man den Parameter-Befehl geändert hat!!!)

Bei einem neu erstellten muss man im Server Data Collection (Sensor Liste) den Parameter noch hinzufügen.

Server Script

NXSL (NetXMS Scripting Language). Unter „Zahnrad“ → Script Library erstellt man ein Server Script. Das kann man wie einen Parameter hinzufügen nur bei „Origin“ statt „NetXMS Agent“ die Option „Script“ wählen. Siehe Dokumentation Scripting 1, Dokumentation Scripting 2

# Finde den Wert aus der Sensor Tabelle des aktuellen Node mit dem Namen "CPU: usage"
$table = GetDCIValueByDescription($node, "CPU: usage");
return $table;

Config

  • Server config: /etc/netxmsd.conf
  • Agent Config: /etc/nxagentd.conf

Externe Parameter sind Befehle oder Scripts am Agent. Z.B in der Agent Config

ExternalParameter=Mein.Modul:whoami

Logs

In der Config (Server und Agent) gibt es den Parameter LogFile

LogFile = /var/log/mylog

dadurch schreibt der Agent seinen Log in die angegebene Datei.

Installation

NetXMS Server

Alma Linux 8

#!/bin/bash
 
set +x
 
read -p "Set DBUser password: " pass
 
systemctl stop firewalld
systemctl disable firewalld
 
dnf config-manager --add-repo https://packages.netxms.org/epel/netxms.repo
dnf install epel-release -y
dnf install netxms-server netxms-dbdrv-pgsql -y
 
dnf install postgresql postgresql-server -y
 
/usr/bin/postgresql-setup --initdb
 
systemctl start postgresql
systemctl enable postgresql
 
# sudo -u postgres createuser -P netxms
sudo -u postgres psql -c "CREATE USER netxms WITH PASSWORD '$pass';"
 
sudo -u postgres createdb -O netxms netxms
 
sudo -u postgres psql -l
 
cat >> /etc/netxmsd.conf <<EOF
DBDriver=pgsql
DBServer=localhost
DBName=netxms
DBLogin=netxms
DBPassword=$pass
EOF
 
cat > /var/lib/pgsql/data/pg_hba.conf <<EOF
local   all             all                                     md5
host    all             all             127.0.0.1/32            md5
host    all             all             ::1/128                 md5
local   replication     all                                     peer
host    replication     all             127.0.0.1/32            ident
host    replication     all             ::1/128                 ident
EOF
 
systemctl restart postgresql
 
systemctl start netxms-server.service
systemctl enable netxms-server.service
 
script -q -c "nxdbmgr init" /dev/null <<< "1"
 
systemctl restart netxms-server.service
netxms-server startet nach reboot nicht mehr richtig.
nxdbmgr check
systemctl start netxms-server
Den Dienst vor einem Neustart immer zuerst stoppen!

oder besser noch in der Datei

/etc/systemd/system/netxmsd.service

unter [Service] den Parameter

# von
TimeoutSec=900
# auf
TimeoutSec=30

ändern und folgende Zeilen einfügen.

TimeoutStopSec=30
ExecStop=/usr/bin/nxdbmgr unlock

Ubuntu 24.04

#!/bin/bash
 
set +x
 
read -s -p "Set DBUser password: " pass
echo
 
ufw disable
 
sudo apt update
sudo apt install -y wget gnupg2 lsb-release software-properties-common
 
# NetXMS Repository
wget -qO - https://packages.netxms.org/netxms.gpg | sudo gpg --dearmor -o /usr/share/keyrings/netxms.gpg
echo "deb [signed-by=/usr/share/keyrings/netxms.gpg] https://packages.netxms.org/ubuntu $(lsb_release -cs) main" | sudo tee /etc/apt/sources.list.d/netxms.list
 
sudo apt update
sudo apt install -y netxms-server netxms-dbdrv-pgsql
 
# PostgreSQL
sudo apt install -y postgresql postgresql-contrib
 
sudo systemctl enable postgresql
sudo systemctl start postgresql
 
sudo -u postgres psql -c "CREATE USER netxms WITH PASSWORD '$pass';"
sudo -u postgres createdb -O netxms netxms
 
sudo tee -a /etc/netxmsd.conf > /dev/null <<EOF
DBDriver=pgsql
DBServer=localhost
DBName=netxms
DBLogin=netxms
DBPassword=$pass
EOF
 
 
PG_HBA="/etc/postgresql/16/main/pg_hba.conf"
sudo tee $PG_HBA > /dev/null <<EOF
local   all             all                                     md5
host    all             all             127.0.0.1/32            md5
host    all             all             ::1/128                 md5
local   replication     all                                     peer
host    replication     all             127.0.0.1/32            scram-sha-256
host    replication     all             ::1/128                 scram-sha-256
EOF
 
sudo systemctl restart postgresql
 
sudo systemctl enable netxms-server
sudo systemctl start netxms-server
 
script -q -c "nxdbmgr init" /dev/null <<< "1"
 
sudo systemctl restart netxms-server

NetXMS-WebUI

http://<servername-or-ip>:8080/nxmc/

Alma Linux 8

#!/bin/bash
 
# Neue Repo-Datei erstellen
sudo tee /etc/yum.repos.d/adoptium.repo << 'EOF'
[Adoptium]
name=Adoptium
baseurl=https://packages.adoptium.net/artifactory/rpm/rhel/8/$basearch
enabled=1
gpgcheck=1
gpgkey=https://packages.adoptium.net/artifactory/api/gpg/key/public
EOF
 
# Repo testen
sudo dnf clean all
sudo dnf repolist
 
# JAVA 17, Tomcat, wget installieren
sudo dnf install -y temurin-17-jdk tomcat wget
 
sudo systemctl enable --now tomcat
#sudo systemctl status tomcat
 
# WebUI deployen
cd /tmp
wget https://www.netxms.org/download/releases/5.2/nxmc-5.2.0.war -O nxmc.war
sudo cp /tmp/nxmc.war /var/lib/tomcat/webapps/
sudo chown tomcat:tomcat /var/lib/tomcat/webapps/nxmc.war
# optional (SELinux)
sudo restorecon -Rv /var/lib/tomcat/webapps/nxmc.war
#sudo systemctl restart tomcat
 
echo 'JAVA_HOME=/usr/lib/jvm/temurin-17-jdk' | sudo tee -a /etc/tomcat/tomcat.conf
sudo systemctl restart tomcat

Ubuntu 24.04

#!/bin/bash
 
# Update und Basis-Tools installieren
sudo apt update
sudo apt install -y wget gnupg2 software-properties-common
 
# Adoptium Repository hinzufügen
wget -O - https://packages.adoptium.net/artifactory/api/gpg/key/public | gpg --dearmor | sudo tee /usr/share/keyrings/adoptium.gpg > /dev/null
echo "deb [signed-by=/usr/share/keyrings/adoptium.gpg] https://packages.adoptium.net/artifactory/deb focal main" | sudo tee /etc/apt/sources.list.d/adoptium.list
 
# Java 17 installieren
sudo apt update
sudo apt install -y temurin-17-jdk
 
# JAVA_HOME setzen
echo "export JAVA_HOME=/usr/lib/jvm/temurin-17-jdk-amd64" >> ~/.bashrc
source ~/.bashrc
 
# Tomcat 9 manuell installieren
cd /opt
sudo wget https://archive.apache.org/dist/tomcat/tomcat-9/v9.0.85/bin/apache-tomcat-9.0.85.tar.gz
sudo tar -xzf apache-tomcat-9.0.85.tar.gz
sudo mv apache-tomcat-9.0.85 tomcat9
sudo chown -R $USER:$USER /opt/tomcat9
chmod +x /opt/tomcat9/bin/*.sh
 
# NetXMS WebUI herunterladen und deployen
sudo wget https://www.netxms.org/download/releases/5.2/nxmc-5.2.0.war -O /opt/nxmc.war
cp /opt/nxmc.war /opt/tomcat9/webapps/
chown $USER:$USER /opt/tomcat9/webapps/nxmc.war
 
/opt/tomcat9/bin/shutdown.sh
sleep 5
/opt/tomcat9/bin/startup.sh
netxms.txt · Zuletzt geändert: 2025/11/04 22:53 (Externe Bearbeitung)