IBM AIX 上的 Zabbix agent
概述
可从下载页面获取适用于 IBM AIX 的预编译 Zabbix agent 二进制文件,文件格式为 .tar.gz 压缩包。
本页面介绍如何从压缩包安装 agent、手动运行 agent 或通过系统资源控制器(SRC)运行 agent、在系统启动时启动 agent,以及从 SRC 中移除 agent。
安装 agent
AIX 的 tar 命令不支持 -z 选项,因此请使用 gunzip 解压归档文件。
请使用 tar 的 -o 选项,以便提取的文件归属于执行提取操作的用户,而不是归属于归档中存储的数字用户 ID 和组 ID。
例如,要将 agent 放置在 /opt/zabbix 中(以 root 身份运行;/opt/zabbix 必须尚不存在):
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
在 AIX 归档文件中,agent 二进制文件位于 usr/sbin/,配置文件位于 etc/zabbix/。
启动 agent 前,请根据需要调整 /opt/zabbix/etc/zabbix/zabbix_agentd.conf(至少调整 Server、ServerActive 和 Hostname 参数)。
如果以 root 身份启动,agent 将切换到 zabbix 用户(或切换到 User 参数指定的用户),除非在配置文件中设置了 AllowRoot=1。
该用户必须存在于系统中,否则 agent 将无法启动。
如果 zabbix 用户尚不存在,请同时创建同名组:
mkgroup zabbix
mkuser pgrp=zabbix login=false rlogin=false zabbix
login=false 和 rlogin=false 属性可防止使用该账户登录;但 agent 仍可作为该用户运行。
手动启动 agent
可以手动启动 agent:
/opt/zabbix/usr/sbin/zabbix_agentd -c /opt/zabbix/etc/zabbix/zabbix_agentd.conf
使用 SRC 运行 agent
注册 agent
agent 也可以向系统资源控制器(SRC)注册。
通过 SRC 启动时,agent 必须以前台模式运行(使用 -f 选项)。
否则,SRC 会失去对 agent 进程的跟踪,因而无法停止该进程。
例如(以 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
在此示例中:
-s设置与 SRC 命令配合使用的子系统名称;-p设置 agent 二进制文件的完整路径;-a将 agent 命令行参数设置为一个带引号的字符串;SRC 启动 agent 时会将此字符串拆分为单独的参数(只接受一个-a选项);-u设置 agent 运行时所使用的用户;创建子系统时,用户名会转换为数字用户 ID,因此该用户必须已存在;-G将 agent 添加到tcpip子系统组中,因此组命令也会应用于该 agent(例如,stopsrc -g tcpip也会停止该 agent);-S -n 15 -f 9使 SRC 通过信号控制 agent:stopsrc在正常停止时发送SIGTERM(15),在强制停止时(stopsrc -f)发送SIGKILL(9);-R使 SRC 在 agent 异常终止时重新启动它(例如,其某个进程崩溃时);执行stopsrc后,agent 不会重新启动。
由于用户 ID 存储在子系统定义中,如果重新创建 zabbix 用户时使用了不同的用户 ID,请更新该定义:
chssys -s zabbix_agentd -u zabbix
启动和停止 agent
可以使用 startsrc、lssrc 和 stopsrc 启动、查询和停止 agent:
startsrc -s zabbix_agentd
lssrc -s zabbix_agentd
stopsrc -s zabbix_agentd
请避免使用强制停止命令(stopsrc -f)。
该命令只会终止主 agent 进程;其他 agent 进程仍会继续运行并保持监听端口处于开放状态,因此在手动终止这些进程之前(例如使用 kill -9),无法再次启动 agent。
在系统启动时启动 agent
将 agent 注册到 SRC 并不会使其在系统启动时启动。
要在启动时自动启动 agent,请在 /etc/inittab 中添加以下条目:
mkitab "zabbix_agentd:2:once:/usr/bin/startsrc -s zabbix_agentd >/dev/console 2>&1"
从 SRC 中移除 agent
要从系统启动项和 SRC 中移除 agent:
stopsrc -s zabbix_agentd
rmitab zabbix_agentd
rmssys -s zabbix_agentd