Zabbix agent en IBM AIX

Descripción general

Los binarios precompilados del Zabbix agent para IBM AIX están disponibles para descarga como un archivo .tar.gz. Esta página describe cómo instalar el agent desde el archivo, ejecutarlo manualmente o con el System Resource Controller (SRC), iniciarlo durante el arranque del sistema y eliminarlo de SRC.

Instalación del agent

El comando tar de AIX no admite la opción -z, por lo que debe descomprimir el archivo con gunzip. Utilice la opción -o de tar para que los archivos extraídos pertenezcan al usuario que los extrae, y no a los ID numéricos de usuario y grupo almacenados en el archivo. Por ejemplo, para colocar el agent en /opt/zabbix (ejecute como root; /opt/zabbix no debe existir todavía):

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

En el archivo de AIX, el binario del agent se encuentra en usr/sbin/ y el archivo de configuración, en etc/zabbix/. Antes de iniciar el agent, ajuste /opt/zabbix/etc/zabbix/zabbix_agentd.conf según sea necesario (como mínimo, los parámetros Server, ServerActive y Hostname).

Si se inicia como root, el agent cambia al usuario zabbix (o al usuario especificado por el parámetro User), a menos que se establezca AllowRoot=1 en el archivo de configuración. Este usuario debe existir en el sistema; de lo contrario, el agent no se inicia. Si el usuario zabbix aún no existe, créelo junto con un grupo del mismo nombre:

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

Los atributos login=false y rlogin=false impiden que la cuenta se utilice para iniciar sesión; el agent aún puede ejecutarse como este usuario.

Iniciar el agent manualmente

El agent se puede iniciar manualmente:

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

Ejecución del agent con SRC

Registro del agent

El agent también se puede registrar con el System Resource Controller (SRC). Cuando se inicia mediante SRC, el agent debe ejecutarse en modo de primer plano (la opción -f). De lo contrario, SRC pierde el seguimiento del proceso del agent y no puede detenerlo. Por ejemplo (ejecutado como 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

En este ejemplo:

  • -s establece el nombre del subsistema utilizado con los comandos de SRC;
  • -p establece la ruta completa al binario del agent;
  • -a establece los argumentos de la línea de comandos del agent como una única cadena entre comillas; SRC divide esta cadena en argumentos independientes cuando inicia el agent (solo se acepta una opción -a);
  • -u establece el usuario con el que se ejecuta el agent; el nombre de usuario se convierte en un ID de usuario numérico cuando se crea el subsistema, por lo que el usuario ya debe existir;
  • -G añade el agent al grupo de subsistemas tcpip, de modo que los comandos del grupo también se aplican a él (por ejemplo, stopsrc -g tcpip también detiene el agent);
  • -S -n 15 -f 9 hace que SRC controle el agent mediante señales: stopsrc envía SIGTERM (15) para una detención normal y SIGKILL (9) para una detención forzada (stopsrc -f);
  • -R hace que SRC reinicie el agent si termina de forma anómala (por ejemplo, si uno de sus procesos se bloquea); el agent no se reinicia después de stopsrc.

Dado que el ID de usuario se almacena en la definición del subsistema, actualice la definición si el usuario zabbix se vuelve a crear con un ID de usuario diferente:

chssys -s zabbix_agentd -u zabbix
Inicio y detención del agent

El agent se puede iniciar, consultar y detener con startsrc, lssrc y stopsrc:

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

Evite la detención forzada (stopsrc -f). Esta solo finaliza el proceso principal del agent; los demás procesos del agent siguen ejecutándose y mantienen abierto el puerto de escucha, por lo que el agent no se puede iniciar de nuevo hasta que se finalicen manualmente (por ejemplo, con kill -9).

Iniciar el agent durante el arranque del sistema

Registrar el agent con SRC no hace que se inicie durante el arranque del sistema. Para iniciar el agent automáticamente durante el arranque, añada una entrada a /etc/inittab:

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

Eliminación del agent de SRC

Para eliminar el agent del inicio del sistema y de SRC:

stopsrc -s zabbix_agentd
rmitab zabbix_agentd
rmssys -s zabbix_agentd