Zabbix Agent unter IBM AIX

Übersicht

Vorkompilierte Zabbix-Agent-Binärdateien für IBM AIX stehen als .tar.gz-Archiv zum Download zur Verfügung. Auf dieser Seite wird beschrieben, wie Sie den Agent aus dem Archiv installieren, ihn manuell oder mit dem System Resource Controller (SRC) ausführen, ihn beim Systemstart starten und aus dem SRC entfernen.

Agent installieren

Der AIX-Befehl tar unterstützt die Option -z nicht. Dekomprimieren Sie das Archiv daher mit gunzip. Verwenden Sie die Option -o von tar, damit die extrahierten Dateien dem Benutzer gehören, der sie extrahiert, und nicht den numerischen Benutzer- und Gruppen-IDs, die im Archiv gespeichert sind. Um den Agent beispielsweise unter /opt/zabbix abzulegen (als Root ausführen; /opt/zabbix darf noch nicht existieren):

gunzip -c zabbix_agent-7.4.7-aix-7.2-powerpc-openssl.tar.gz | tar -xof -
mv zabbix_agent-7.4.7-aix-7.2-powerpc-openssl /opt/zabbix

Im AIX-Archiv befindet sich die Agent-Binärdatei in usr/sbin/ und die Konfigurationsdatei in etc/zabbix/. Passen Sie vor dem Start des Agents /opt/zabbix/etc/zabbix/zabbix_agentd.conf nach Bedarf an (mindestens die Parameter Server, ServerActive und Hostname).

Wenn der Agent als Root gestartet wird, wechselt er zum Benutzer zabbix (oder zu dem Benutzer, der mit dem Parameter User angegeben ist), sofern in der Konfigurationsdatei nicht AllowRoot=1 gesetzt ist. Dieser Benutzer muss auf dem System vorhanden sein. Andernfalls wird der Agent nicht gestartet. Falls der Benutzer zabbix noch nicht existiert, erstellen Sie ihn zusammen mit einer Gruppe desselben Namens:

mkgroup zabbix
mkuser pgrp=zabbix login=false rlogin=false zabbix

Die Attribute login=false und rlogin=false verhindern, dass das Konto zum Anmelden verwendet wird. Der Agent kann dennoch unter diesem Benutzer ausgeführt werden.

Agent manuell starten

Der Agent kann manuell gestartet werden:

/opt/zabbix/usr/sbin/zabbix_agentd -c /opt/zabbix/etc/zabbix/zabbix_agentd.conf

Agent mit SRC ausführen

Agent registrieren

Der Agent kann auch beim System Resource Controller (SRC) registriert werden. Wenn er über SRC gestartet wird, muss der Agent im Vordergrundmodus (Option -f) ausgeführt werden. Andernfalls verliert SRC den Überblick über den Agent-Prozess und kann ihn nicht stoppen. Beispiel (als Root ausführen):

mkssys \
  -s zabbix_agentd \
  -p /opt/zabbix/usr/sbin/zabbix_agentd \
  -a "-c /opt/zabbix/etc/zabbix/zabbix_agentd.conf -f" \
  -u zabbix \
  -G tcpip \
  -S -n 15 -f 9 \
  -R

In diesem Beispiel:

  • -s legt den Subsystemnamen fest, der mit den SRC-Befehlen verwendet wird;
  • -p legt den vollständigen Pfad zur Agent-Binärdatei fest;
  • -a legt die Befehlszeilenargumente des Agents als eine Zeichenfolge in Anführungszeichen fest; SRC teilt diese Zeichenfolge beim Starten des Agents in einzelne Argumente auf (es wird nur eine Option -a akzeptiert);
  • -u legt den Benutzer fest, unter dem der Agent ausgeführt wird; der Benutzername wird beim Erstellen des Subsystems in eine numerische Benutzer-ID umgewandelt, daher muss der Benutzer bereits vorhanden sein;
  • -G fügt den Agent zur Subsystemgruppe tcpip hinzu, sodass Gruppenbefehle auch auf ihn angewendet werden (beispielsweise stoppt stopsrc -g tcpip auch den Agent);
  • -S -n 15 -f 9 weist SRC an, den Agent mit Signalen zu steuern: stopsrc sendet SIGTERM (15) für ein normales Stoppen und SIGKILL (9) für ein erzwungenes Stoppen (stopsrc -f);
  • -R weist SRC an, den Agent neu zu starten, wenn er unerwartet beendet wird (beispielsweise wenn einer seiner Prozesse abstürzt); nach stopsrc wird der Agent nicht neu gestartet.

Da die Benutzer-ID in der Subsystemdefinition gespeichert wird, muss die Definition aktualisiert werden, wenn der Benutzer zabbix mit einer anderen Benutzer-ID neu erstellt wird:

chssys -s zabbix_agentd -u zabbix
Agent starten und stoppen

Der Agent kann mit startsrc, lssrc und stopsrc gestartet, abgefragt und gestoppt werden:

startsrc -s zabbix_agentd
lssrc -s zabbix_agentd
stopsrc -s zabbix_agentd

Vermeiden Sie das erzwungene Stoppen (stopsrc -f). Dabei wird nur der Hauptprozess des Agents beendet; die anderen Agent-Prozesse laufen weiter und halten den Listening-Port geöffnet. Daher kann der Agent erst wieder gestartet werden, wenn diese Prozesse manuell beendet wurden (zum Beispiel mit kill -9).

Agent beim Systemstart starten

Die Registrierung des Agents bei SRC bewirkt nicht, dass er beim Systemstart gestartet wird. Um den Agent automatisch beim Systemstart zu starten, fügen Sie einen Eintrag zu /etc/inittab hinzu:

mkitab "zabbix_agentd:2:once:/usr/bin/startsrc -s zabbix_agentd >/dev/console 2>&1"

Entfernen des Agent aus SRC

Um den Agent aus dem Systemstart und aus SRC zu entfernen:

stopsrc -s zabbix_agentd
rmitab zabbix_agentd
rmssys -s zabbix_agentd