Zabbix agent su IBM AIX

Panoramica

I file binari precompilati dell'agent Zabbix per IBM AIX sono disponibili per il download come archivio .tar.gz. Questa pagina descrive come installare l'agent dall'archivio, eseguirlo manualmente o con il System Resource Controller (SRC), avviarlo all'avvio del sistema e rimuoverlo da SRC.

Installazione dell'agent

Il comando tar di AIX non supporta l'opzione -z, quindi decomprimere l'archivio con gunzip. Utilizzare l'opzione -o di tar in modo che i file estratti siano di proprietà dell'utente che li estrae, anziché degli ID numerici dell'utente e del gruppo memorizzati nell'archivio. Ad esempio, per installare l'agent in /opt/zabbix (eseguire come root; /opt/zabbix non deve ancora esistere):

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

Nell'archivio AIX, il binario dell'agent si trova in usr/sbin/ e il file di configurazione in etc/zabbix/. Prima di avviare l'agent, modificare secondo necessità /opt/zabbix/etc/zabbix/zabbix_agentd.conf (almeno i parametri Server, ServerActive e Hostname).

Se viene avviato come root, l'agent passa all'utente zabbix (o all'utente specificato dal parametro User), a meno che nel file di configurazione non sia impostato AllowRoot=1. Questo utente deve esistere nel sistema; in caso contrario, l'agent non viene avviato. Se l'utente zabbix non esiste ancora, crearlo insieme a un gruppo con lo stesso nome:

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

Gli attributi login=false e rlogin=false impediscono di utilizzare l'account per l'accesso; l'agent può comunque essere eseguito con questo utente.

Avvio manuale dell'agent

L'agent può essere avviato manualmente:

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

Esecuzione dell'agent con SRC

Registrazione dell'agent

L'agent può essere registrato anche con il System Resource Controller (SRC). Quando viene avviato tramite SRC, l'agent deve essere eseguito in modalità foreground (l'opzione -f). In caso contrario, SRC perde il controllo del processo dell'agent e non può arrestarlo. Ad esempio (eseguire come root):

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 questo esempio:

  • -s imposta il nome del sottosistema utilizzato con i comandi SRC;
  • -p imposta il percorso completo al file binario dell'agent;
  • -a imposta gli argomenti della riga di comando dell'agent come un'unica stringa tra virgolette; SRC divide questa stringa in argomenti separati quando avvia l'agent (è accettata una sola opzione -a);
  • -u imposta l'utente con cui viene eseguito l'agent; il nome utente viene convertito in un ID utente numerico quando viene creato il sottosistema, quindi l'utente deve già esistere;
  • -G aggiunge l'agent al gruppo di sottosistemi tcpip, in modo che i comandi del gruppo vengano applicati anche all'agent (ad esempio, stopsrc -g tcpip arresta anche l'agent);
  • -S -n 15 -f 9 configura SRC per controllare l'agent tramite segnali: stopsrc invia SIGTERM (15) per un arresto normale e SIGKILL (9) per un arresto forzato (stopsrc -f);
  • -R configura SRC per riavviare l'agent se termina in modo anomalo (ad esempio, se uno dei suoi processi si arresta in modo imprevisto); l'agent non viene riavviato dopo stopsrc.

Poiché l'ID utente viene memorizzato nella definizione del sottosistema, aggiornare la definizione se l'utente zabbix viene ricreato con un ID utente diverso:

chssys -s zabbix_agentd -u zabbix
Avvio e arresto dell'agent

L'agent può essere avviato, interrogato e arrestato con startsrc, lssrc e stopsrc:

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

Evitare l'arresto forzato (stopsrc -f). Termina solo il processo principale dell'agent; gli altri processi dell'agent continuano a essere eseguiti e mantengono aperta la porta di ascolto, pertanto non è possibile avviare nuovamente l'agent finché non vengono terminati manualmente, ad esempio con kill -9.

Avvio dell'agent all'avvio del sistema

La registrazione dell'agent con SRC non ne comporta l'avvio all'avvio del sistema. Per avviare automaticamente l'agent all'avvio, aggiungere una voce a /etc/inittab:

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

Rimozione dell'agent da SRC

Per rimuovere l'agent dall'avvio del sistema e da SRC:

stopsrc -s zabbix_agentd
rmitab zabbix_agentd
rmssys -s zabbix_agentd