4 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 需要您承担一定的风险,例如,在自动发现规则中的遇到问题 返回值

    详见:。

    概述

    Zabbix proxy 是一个可以从一个或多个受监控设备采集监控数据并将信息发送到 Zabbix server 的进程,主要是代表 Zabbix server 工作。 所有收集的数据都在本地缓存,然后传输到 proxy 所属的 Zabbix server。

    部署Zabbix proxy 是可选的,但可能非常有利于分担单个 Zabbix server 的负载。 如果只有代理采集数据,则 Zabbix server 上会减少 CPU 和磁盘 I/O 的开销。

    Zabbix proxy 是无需本地管理员即可集中监控远程位置、分支机构和网络的理想解决方案。

    值得注意的是,Zabbix proxy 支持 SQLite、MySQL和PostgreSQL 作为数据库。使用 Oracle 或 DB2 需要您承担一定的风险,例如,在自动发现规则中的遇到问题 。

    详见:在分布式环境中使用 Zabbix proxy

    运行Proxy

    如果通过包安装

    Zabbix proxy 进程以守护进程(Deamon)运行。Zabbix proxy的启动可以通过执行以下命令来完成:

    上述命令在大多数的 GNU/Linux系统下都可以正常完成。如果是其他系统,你可能要尝试以下命令来运行:

    类似的,Zabbix proxy 的停止、重启、查看状态,则需要执行以下命令:

    1. shell> service zabbix-proxy stop
    2. shell> service zabbix-proxy restart
    3. shell> service zabbix-proxy status
    手动启动

    如果上述方法无效,则必须手动启动。找到路 到zabbix_proxy二进制文件并执行:

    您可以将以下命令行参数用于Zabbix proxy:

    1. -c --config <file> 配置文件的路径
    2. -f --foreground 运行Zabbix proxy在前台
    3. -R --runtime-control <option> 启动管理员后台功能
    4. -h --help 帮助
    5. -V --version 显示版本信息

    使用命令行参数运行Zabbix proxy的示例:

    1. shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf
    2. shell> zabbix_proxy -V
    运行时控制

    运行时控制选项:

    使用运行时控制收集诊断信息的示例:

    1. Proxy日志文件中收集所有可用的诊断信息:
    2. shell> zabbix_proxy -R diaginfo
    3. shell> zabbix_proxy -R diaginfo=historycache

    使用运行时控制重新加载SNMP缓存的例子:

    1. shell> zabbix_proxy -R snmp_cache_reload

    使用运行时控制触发管家执行的示例

    使用运行时控制更改日志级别的示例:

    1. 增加所有进程的日志级别:
    2. shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_increase
    3. 增加第二个轮询进程的日志级别:
    4. shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_increase=poller,2
    5. 使用PID 1234增加进程的日志级别:
    6. shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_increase=1234
    7. 降低所有http轮询器进程的日志级别:
    8. shell> zabbix_proxy -c /usr/local/etc/zabbix_proxy.conf -R log_level_decrease="http poller"
    进程用户

    Zabbix proxy被设计为以非root用户的身份运行。它将以任何非root用户的身份运行。因此,您可以作为任何非root用户运行代理而没有任何问题。

    如果您尝试以“root”身份运行它,它将切换到硬编码的“zabbix”用户,这必须在您的系统上。如果你相应地修改了代理配置文件中的AllowRoot参数,那么你只能以root身份运行proxy。

    配置文件

    另请参考 配置zabbix_proxy的详细信息。

    Proxy进程类型

    • availability manager - 主机可用性更新的进程
    • configuration syncer - 管理配置数据的内存缓存的进程
    • discoverer - - 发现设备的进程程
    • - proxy 心跳信息发送进程
    • history poller - 处理需要数据库连接的计算、聚合和内部检查的进程
    • history syncer - 历史数据同步进程
    • housekeeper - 删除旧历史数据的进程
    • http poller - web监控进程
    • icmp pinger - icmpping检查进程
    • ipmi manager - IPMI管理进程
    • ipmi poller - IPMI检查进程
    • java poller - Java检查进程
    • odbc poller - ODBC检查进程
    • poller - 被动检查的普通轮询器
    • preprocessing manager - 预处理任务的管理
    • preprocessing worker - - 数据预处理的进程
    • self-monitoring - 服务器内部统计信息收集进程
    • snmp trapper - traper 用于SNMP trap
    • task manager - 远程执行其他组件请求的任务的过程(例如,关闭问题、确认问题、现在检查项目值、远程命令功能)
    • trapper - 陷阱主动检查,陷阱,代理通信
    • unreachable poller - 针对不可达设备的轮询器
    • - VMware数据收集器负责从VMware服务中收集数据

    可以使用代理日志文件来观察这些进程类型。

    可以使用zabbix[process,<type>,<mode>,<state>] 内部来监控各种类型的 Zabbix proxy进程。

    支持的平台

    本地环境

    请注意,代理需要UTF-8语言环境,以便能够正确解释某些文本项。 大多数现代类unix系统默认使用UTF-8语言环境, 然而,有些系统可能需要专门设置。