Wer sich mit Zabbix befasst, ist sicher mit dem "XXXX by Zabbix agent" bzw. "XXXX by Zabbix agent active" in Berührung gekommen und weiß nicht was der Unterschied ist.
In euerem Heim- oder Firmennetz sei ihr "drin". D.h. der Netzwerkverkehr findet im lokalen Netz statt; nichts geht nach draussen.
Was ist aber, wenn ihr den Rechner von Mutti oder das Netzwerk der Zweigniederlassung überwachen wollt, beide aber (wegen der Telekom ;-) ) ständig wechselnde IP-Adressen haben ?
Dann nehmt ihr den "Zabbix agent active". Beim normalen Agent nimmt der Zabbix-Server Kontakt auf und fragt den Agent(Client) ab. Beim "Active agent" ruft der Agent/Client den Server an. Es muß einzig in der Firewall des Servernetzwerks der eingehende Netzwerkverkehr auf Port 10051 frei geschaltet werden und zum Zabbix-Server geschickt werden.
Auf der Agent/Client-Seite muß ausgehender Netzwerkverkehr zur IP des Servers und Port 10051 gestattet werden (das ist auch mit einer Fritzbox leicht zu machen).
In der Agent Konfiguration ist als "Server active" die URL des Zabbix-Server-Netzwerks einzutragen (Agent neustarten !).
Nun fragt der Agent beim Server auf Port 10051 "was gibts für mich" und, da die TCP-Verbindung nun "established" ist, kann der Server die Aufgaben an den Agent schicken. Der Agent schickt nun alle X Sekunden Daten zum Zabbix-Server. Dadurch sinkt dort auch die Last gegenüber der Verwendung von passiven Agents.
Natürlich wird nun in diesem Fall die Verschlüssellung mit dem PSK-Key aktiviert (im internen Netzwerk ist das nicht unbedingt nötig).
So sieht das dann in der Hostverwaltung aus:
In diesem Fall gibt es kein Interface auf der Serverseite - der weiß ja gar nicht WIE er die Daten bekommt.
24.2.2025 18:44Zabbix Agent "active" und "passive"Lebenswichtig für Männer im kommenden Sommer - Temperaturüberwachung des Bierkühlschrank:
;-)
Tiefkühlfach monitoren - Rainers kleine Welt
Ich habe eine Ecowitt-Wetterstation und möchte die Daten in Zabbix integrieren. Dazu besorgt man sich erst einmal zwei Keys über die Ecowitt-Webseite --> Dein Konto --> User Profile. Den Application-Key und den Api-Key. Das geht in Sekunden. Jetzt benötigt man noch die MAC-Adresse der Wetterstation. Die MAC-Adresse findet man z.B. bei seinem DHCP-Server als vergebene Adresse.
Nun kann man mit einem Script die Daten der Wetterstation in Zabbix einbinden. Um die Daten abzuholen nutzt man diesen Befehl:curl 'https://api.ecowitt.net/api/v3/device/real_time?application_key=DEIN_KEY&api_key=DEINE_API&mac=DEINE_MAC&temp_unitid=1&pressure_unitid=3&rainfall_unitid=12&wind_speed_unitid=7&call_back=all'
Diese Daten bereite ich auf und schicke sie in eine Datenbank (Script):
DBHOST="IP_DES_DB_SERVERS"
DBUSER="DB_USER"
PASS="DB_PASS"
DB="DBNAME"
DATEN=$(curl 'https://api.ecowitt.net/api/v3/device/real_time?application_key=DEIN_KEY&api_key=DEINE_API&mac=DEINE_MAC&temp_unitid=1&pressure_unitid=3&rainfall_unitid=12&wind_speed_unitid=7&call_back=all')
DATE=`date +%Y-%m-%d`
TIME=`date +%H:%M`
TIMESTAMP=$( echo $DATEN | cut -d ":" -f8 | cut -d'"' -f2)
ITEMP=$( echo $DATEN | cut -d ":" -f31 | cut -d'"' -f2 )
IHUM=$( echo $DATEN | cut -d ":" -f35 | cut -d'"' -f2 )
ATEMP=$( echo $DATEN | cut -d ":" -f10 | cut -d'"' -f2 )
AHUM=$( echo $DATEN | cut -d ":" -f26 | cut -d'"' -f2 )
QNH=$( echo $DATEN | cut -d ":" -f91 | cut -d'"' -f2 )
WINDSPEED=$( echo $DATEN | cut -d ":" -f78 | cut -d'"' -f2 )
WINDDIR=$( echo $DATEN | cut -d ":" -f86 | cut -d'"' -f2 )
CHILLTEMP=$( echo $DATEN | cut -d ":" -f14 | cut -d'"' -f2 )
RAIN=$( echo $DATEN | cut -d ":" -f53 | cut -d'"' -f2 )
RAIN_H=$( echo $DATEN | cut -d ":" -f61 | cut -d'"' -f2 )
RAIN_W=$( echo $DATEN | cut -d ":" -f65 | cut -d'"' -f2 )
RAIN_M=$( echo $DATEN | cut -d ":" -f69 | cut -d'"' -f2 )
RAIN_Y=$( echo $DATEN | cut -d ":" -f73 | cut -d'"' -f2 )
DEWPOINT=$( echo $DATEN | cut -d ":" -f22 | cut -d'"' -f2 )
SOLAR=$( echo $DATEN | cut -d ":" -f40 | cut -d'"' -f2 )
UVI=$( echo $DATEN | cut -d ":" -f44 | cut -d'"' -f2 )
SQL="INSERT INTO wetter VALUES (0,'$DATE','$TIME','$TIMESTAMP','$ITEMP','$IHUM','$ATEMP','$AHUM','$QNH','$WINDSPEED','$WINDDIR','$CHILLTEMP','$RAIN','$DEWPOINT','$SOLAR','$UVI','$RAIN_M','$RAIN_Y','$RAIN_H','$RAIN_W')"
mysql --host="$DBHOST" -u "$DBUSER" -p"$PASS" -D "$DB" <<EOF
$SQL;
EOF
exit 0
Auf dem Zabbix-Server ist eine ODBC-Connection eingerichtet:
[wetter]
Description = Auslesen der Wetterdaten
Driver = MariaDB Unicode
Server = DE_SERVER
User = DB_USER
Password = DB_PASS
Port = 3306
Database = DBNAME
Nun wird ein Item in Zabbix (auf dem Zabbix-Server) konfiguriert:
Weitere Items für Innentemperatur, Luftfeuchtigkeit, Sonne usw. werden wie oben gezeigt sinngemäß erstellt.
Damit kann man nun weiter arbeiten und z.B eine Map erstellen:
Um eine Sprache in Zabbix aktivieren zu können, muß das entsprechende Sprachpaket auch vorhanden sein. Dazu apt install php-php-gettext
installieren (oder prüfen, ob es installiert ist).
Die gewünschte Sprachdatei aktivieren: dpkg-reconfigure locales
. Apache reloaden.
In der Zabbix-Spracheinstellung in der Datei /usr/share/zabbix/include/locales.inc.php
die gewünschte Sprache von false
auf true
umstellen.
Nun kann jeder Nutzer seine gewünschte Sprache in seinen Nutzerprofil auswählen.
16.4.2022 13:10Spracheinstellung in ZabbixWorum geht es hier ? Um die Systemüberwachung Zabbix:
de.wikipedia.org/wiki/Zabbix
Download hier:
zabbix.com/download