Zabbix Proxy是一个可以从一个或多个受监控设备收集监控数据,并将信息发送到Zabbix sever的进程,基本上是代表sever工作的。 所有收集的数据都在本地进行缓存,然后传送到proxy所属的Zabbix sever。
部署Proxy是可选的,,但是可能非常有益于分散单个Zabbix sever的负载。 如果只有proxy收集数据,sever上的进程就会减少CPU消耗和磁盘I / O负载。
Zabbix proxy是完成远程区域、分支机构、没有本地管理员的网络的集中监控的理想解决方案。
Zabbix proxy需要使用独立的数据库。
Zabbix proxy数据库可以使用SQLite, MySQL, PostgreSQL. 使用Oracle或IBM DB2数据库时会有一定风险和限制(例如在低等级发现规则中的 返回值 ) return values of low-level discovery rules.
请参阅: 在分布环境中使用Proxy
Zabbix proxy以守护进程的方式运行。Proxy可以通过执行代码运行。
您可以使用Zabbix agent下的命令行参数:
运行时控制当前不支持OpenBSD和NetBSD。
命令行参数示例:
shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf
shell> zabbix_proxy --help
shell> zabbix_proxy -V
运行时控制选项:
选项 描 | 目标 | |
---|---|---|
config_cache_reload | 重新加载配置缓存。若当前已被加载,则忽略。 激活Zabbix proxy将会连接到Zabbix server并查询配置数据。 |
|
housekeeper_execute | 开始管理程序。 如果管理程序目前正在进行中,则被忽略. | |
log_level_increase[=<target>] | 提升日志级别。 如果没有特别指出,将会赋给所有进程。 pid - 进程号 (1 到 65535 | process type -All 特指类型的进程(例如 poller) process type,N - 进程类型和号码 (例如, poller,3) |
log_level_decrease[=<target>] | 降低日志级别,如果没有特别指出,将会赋给所有进程。 ::: |
用于更改单独Zabbx进程的日志级别的PID允许范围为1到65535。对于具有较大PID的系统,可以使用<process type,N>目标选项来更改单独进程的日志级别。
使用运行时控制来重新加载配置缓存的例子:
使用运行时控制来触发管家的执行的例子
使用运行时控制更改日志级别的示例:
Increase log level of all processes:
shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_increase
Increase log level of second poller process:
shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_increase=poller,2
Increase log level of process with PID 1234:
shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_increase=1234
Decrease log level of all http poller processes:
shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_decrease="http poller"
Zabbix proxy是设计在非root账户下的。它会以其他任何非root用户启动的进程一样的方式运行。 所以,您可以使用任意非root用户运行agent,且不会产生任何问题。
如果您在’root’账户下运行,它将切换到硬编码的“zabbix”用户,该用户必须存在于您的系统上。如果您只想以’root’方式运行proxy,您必须在proxy配额文件里修改‘AllowRoot‘参数。
更多Zabbix proxy配置选项细节,可参见 配置文件 .
Zabbix proxy和Zabbix sever一样,在相同的server#支持平台 下运行.