3 Proxy
\=== 概述 ===
Zabbix proxy 是一个可以从一个或多个受监控设备采集监控数据并将信息发送到 Zabbix server 的进程,主要是代表 Zabbix server 工作。 所有收集的数据都在本地缓存,然后传输到 proxy 所属的 Zabbix server。
部署Zabbix proxy 是可选的,但可能非常有利于分担单个 Zabbix server 的负载。 如果只有代理采集数据,则 Zabbix server 上会减少 CPU 和磁盘 I/O 的开销。
Zabbix proxy 是无需本地管理员即可集中监控远程位置、分支机构和网络的理想解决方案。
Zabbix proxy 需要使用独立的数据库。
值得注意的是,Zabbix proxy 支持 SQLite、MySQL和PostgreSQL 作为数据库。使用 Oracle 或 DB2 需要您承担一定的风险,例如,在自动发现规则中的遇到问题 返回值 。
Proxy 进程
通过二进制包安装的组件
Zabbix proxy 进程以守护进程(Deamon)运行。Zabbix proxy 的启动可以通过执行以下命令来完成:
shell> service zabbix-proxy start
上述命令在大多数的 GNU/Linux 系统下都可以正常完成。如果是其他系统,你可能要尝试以下命令来运行:
shell> /etc/init.d/zabbix-proxy start
类似的,Zabbix proxy 的停止、重启、查看状态,则需要执行以下命令:
shell> service zabbix-proxy stop
shell> service zabbix-proxy restart
shell> service zabbix-proxy status
手动启动
如果以上操作均无效,您可能需要手动启动,找到 Zabbix proxy 二进制文件的路径并且执行:
shell> zabbix_proxy
您可以将以下命令行参数用于 Zabbix proxy:
-c --config <file> 配置文件路径
-R --runtime-control <option> 执行管理功能
-h --help 帮助
-V --version 显示版本号
运行时机制的控制不支持 OpenBSD 和 NetBSD 系统。
使用命令行参数运行 Zabbix proxy 的示例::
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 to | 5535) process type - 指定进程的所有类型 (例如,poller) process type,N - 进程类型和编号 (例如,poller,3) |
log_level_decrease[=<target>] | 降低日志级别,如果未指定目标,则会影响所有进程。 ::: |
单一 Zabbix 进程的日志级别改变后,进程的 PIDs 的值也会改变,允许的范围为1~65535。在具有大 PIDs <process type,N> 目标选项可更改单个进程的日志级别。
例如,使用 config_cache_reload 选项重新加载 proxy 的配置缓存:
shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R config_cache_reload
例如,使用 housekeeper_execute 选项来触发管家服务执行:
shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R housekeeper_execute
例如,使用 log_level_increase 选项来改变日志级别:
增加所有进程的日志级别:
shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_increase
增加第二个 Poller 进程的日志级别:
shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_increase=poller,2
增加 PID 为 1234 进程的日志级别:
shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_increase=1234
降低 http poller 进程的日志级别:
shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_decrease="http poller"
进程用户
Zabbix proxy 允许使用非 root 用户运行。它将以任何非 root 用户的身份运行。因此,使用非 root 用户运行 proxy 是没有任何问题的.
如果你试图以“root”身份运行它,它将会切换到一个已经“写死”的“zabbix”用户,该用户必须存在于您的系统上。如果您只想以“root”用户运行 proxy,您必须在 proxy 配置文件里修改‘AllowRoot‘参数。
配置文件
有关配置 Zabbix proxy 的详细信息,请查阅 配置文件 章节。
支持的平台
Zabbix proxy 在与 Zabbix server 相同的 server#受支持的平台 列表上运行。
语言环境
值得注意的是,Zabbix proxy 需要 UTF-8 语言环境,以便可以正确解释某些文本项。 大多数现代类 Unix 系统都默认使用 UTF-8 语言环境,但是,有些系统可能需要专门设置。
Supported platforms
Zabbix proxy runs on the same list of server#supported platforms as Zabbix server.
Locale
Note that the proxy requires a UTF-8 locale so that some textual items can be interpreted correctly. Most modern Unix-like systems have a UTF-8 locale as default, however, there are some systems where that may need to be set specifically.