2 Zabbix proxy

概述

本节列出了Zabbix proxy配置文件(zabbix_proxy.conf)中支持的参数,请注意:

  • The default values reflect daemon defaults, not the values in the shipped configuration files;

  • 默认值反映了守护程序启动的默认值,而不是配置文件中的值;

  • Zabbix只支持不带BOM的UTF-8编码的配置文件

  • 在配置文件中行首使用 “#“可以注释此行配置。

参数

参数名称必须配置范围默认值描述信息
AllowRootno0允许服务以 ‘root’身份运行。 如果该参数配置为禁止,并且服务仍以root身份启动,服务会切换到使用 ‘zabbix’用户启动 。 对于以普通用户启动的,该参数没有影响。
0 - 禁止
1 - 允许
Zabbix 2.2.0。以后的版本都支持这个参数。
CacheSizeno128K-64G8M缓存大小, 单位为字节。
用于存储主机、监控项数据的共享内存大小。
在Zabbix 5.0.1版本这参数的最大值可以从8G增加到64G。
ConfigFrequencyno1-6048003600每隔多少秒proxy从Zabbix server获取配置数据。
该参数只有主动proxy才会使用,proxy工作模式由参数ProxyMode决定。
DataSenderFrequencyno1-36001Proxy将采集到的数据以一定的时间间隔(单位为秒)发送给Zabbix server。
该参数只有主动proxy才会使用,proxy工作模式由参数ProxyMode决定。
DBHostnolocalhost数据库主机名。
如果是MySQL localhost或空字符串会导致使用套接字。 如果是 PostgreSQL
只有空字符串会使用套接字。
DBNameyes数据库名称。
对于 SQLite3 必须提供数据库文件路径(Zabbix的多进程架构不允许使用内存数据库,例如 :memory:file :: memory:?cache = sharedfile:memdb1?mode = memory&cache = shared)。
警告: 不要与Zabbix server使用同一个数据库。
DBPasswordno数据库登录密码。此参数SQLite不使用。
如果数据库没有密码,请注释掉此参数。
DBSchemano数据库Schema 名字。仅IBM DB2 和 PostgreSQL使用。
DBSocketno3306MySQL套接字文件的路径。
本地套接字链接时不使用数据库端口参数。 此参数SQLite不使用。
DBUser数据库用户名。此参数SQLite不使用。
DBTLSConnectno设置此选项将强制使用到TLS连接数据库。
required - 使用TLS连接
verifyca - 使用TLS并且验证
verify_full - 使用TLS连接加证书,并且验证DBHost指定的数据库标识是否与其证书匹配。

MySQL 5.7.11和PostgreSQL支持下列值: “required”, “verify”, “verify_full”. MariaDB 10.2.6支持 “required” and “verify_full”。
默认情况下不设置为任何选项,以数据库配置为准.

从Zabbix 5.0.0开始支持此参数。
DBTLSCAFileno
(yes, 如果数据库连接为其中一个: verify_ca, verify_full)
包含用于数据库证书验证的顶级CA证书的文件的完整路径名。
从Zabbix 5.0.0开始支持此参数。
DBTLSCertFileno数据库进行身份验证时对Zabbix服务器证书文件进行完整路径名验证。
从Zabbix 5.0.0开始支持此参数。
DBTLSKeyFileno数据库进行身份验证时对私钥文件进行完整路径名验证。
从Zabbix 5.0.0开始支持此参数。
DBTLSCiphernoZabbix服务器允许TLS协议通过TLSv1.2的加密密码列表。
只支持MySQL.
从Zabbix 5.0.0开始支持此参数。
DBTLSCipher13noZabbix服务器允许TLS协议通过TLSv1.3的加密密码列表。
只支持MySQL8.0.16之后的版本。
从Zabbix 5.0.0开始支持此参数。
DebugLevelno0-53指定调试等级:
0 - Zabbix进程的起停基本信息
1 - 重要(Critical)信息
2 - 错误(Error)信息
3 - 警告(Warning)信息
4 - 调试(Debug)信息 (产生大量信息)
5 - 扩展调试 (产生更多信息)
EnableRemoteCommandsno0是否允许Zabbix server远程执行命令。
0 - 禁止
1 - 允许
从Zabbix 3.4.0开始支持该参数。
ExternalScriptsno/usr/local/share/zabbix/externalscripts外部脚本位置 (依赖编译安装时的环境变量datadir)。
Fping6Locationno/usr/sbin/fping6ping6程序的路径。
确保fping6程序的所有者是root用户,并且设置了SUID标记。
如果需要fping程序处理IPv6地址,就置空(“Fping6Location=”)参数 。
FpingLocationno/usr/sbin/fpingfping程序的路径。
确保fping程序的所有者是root用户,并且设置了SUID标记
HeartbeatFrequencyno0-360060心跳信息发送频率,单位为秒。
用于监视proxy的可用性。
0 - 禁止
该参数只有主动proxy才会使用,proxy工作模式由参数ProxyMode决定。
HistoryCacheSizeno128K-2G16M历史缓存数据大小, 单位为字节。
存储历史数据使用共享内存.
HistoryIndexCacheSizeno128K-2G4M历史索引缓存大小, 单位为字节。\缓存一个item大概需要大小为100字节的空间。
该参数从Zabbix 3.0.0开始支持。
Hostnameno由参数HostnameItem设置唯一的大小写敏感的Proxy名称。确保Server端能正确解析这个proxy名称。
允许的字符: 字母, ‘.’, ‘ ‘, ‘‘ 和 ‘-‘.
最大长度: 128
HostnameItemnosystem.hostname当参数Hostname没有定义时使用这个参数设置主机名。
该参数不能用于UserParameters, performance counters or aliases, 但能用于system.run[]。
如果Hostname设置了,该参数可以忽略。从Zabbix 1.8.6开始支持该参数。
HousekeepingFrequencyno0-241Zabbix 执行 housekeeping 的频率 (单位为小时)。
housekeeping负责从数据库中删除过期的信息。
注意: 为了防止 housekeeper 负载过大 (例如, 当历史和趋势周期大大减小时), 对于每一个监控项,不会在一个housekeeping周期内删除超过4倍HousekeepingFrequency 的过期数据。 因此, 如果 HousekeepingFrequency 是 1小时, 一个周期内不会删除超过4小时的过期信息 (从最旧的数据开始) 。
备注: 为降低 server压力, housekeeping将在server启动以后,延迟30分钟执行。 因此, 如果 HousekeepingFrequency 是1小时,serverg启动30分后执行第一次 housekeeping , 然后按1小时为周期重复执行。从Zabbix 2.4.0以后有了这种延迟行为。
从Zabbix 3.0.0开始,可以设置HousekeepingFrequency为0来禁止自动housekeeping。 此时 housekeeping 只能通过 housekeeper_execute 启动, 在一个housuekeeping周期内删除的过期信息时长为从最后一次housekeeping以来到配置周期的4倍,不少于4小时且不大于4天。
Includeno可以在配置文件中指定单个文件或者指定一个目录(所有文件在该目录中)。
只有在指定的目录中包含相关文件, 才可以使用正则匹配的通配符 。例如: /absolute/path/to/config/files/*.conf. Zabbix 2.4.0以后都支持模式匹配。
参看关于限制条件特例
JavaGatewaynoZabbix Java 网关的IP 地址 (或主机名) 。
Java 轮询器启动时才需要该参数。
Zabbix 2.0.0以后的所有版本都支持该参数.
JavaGatewayPortno1024-3276710052Zabbix Java 网关监听端口。
Zabbix 2.0.0以后的所有版本都支持该参数。
ListenIPno0.0.0.0trapper监听的Ip地址,多个Ip用逗号分开。
如果没有设置该参数,会监听所有网络接口。
从Zabbix 1.8.3开始支持多Ip地址。
ListenPortno1024-3276710051trapper监听端口。
LoadModulenoserver端启动时加载的模块,这些模块用来扩展server的功能。
格式:
LoadModule=<module.so>
LoadModule=<path/module.so>
LoadModule=</abs_path/module.so>
这些模块必须位于LoadModulePath指定的目录中,或者路径必须位于模块名称之前。 如果前面的路径是绝对路径(以“/”开头),则忽略LoadModulePath.
允许多个 LoadModule 参数。
LoadModulePathnoproxy模块本地完整路径.
默认值在编译时指定。
LogFile如果日志类型选择yes,其他选择no日志文件名字
LogFileSizeno0-10241日志文件大小,单位 MB。
0 - 禁止日志文件自动回滚.
注意: 如果日志文件达到限定的大小,文件回滚失败, 不管是什么原因, 现有的日志会被截断,并重新记录日志。
LogRemoteCommandsno0当执行shell命令时可以记录日志。
0 - 禁止
1 - 允许
从Zabbix 3.4.0开始支持该参数。
LogTypenofile日志输出类型:
file - 写入LogFile 参数指定的日志文件中,
system - 写入syslog,
console - 控制台输出.
从Zabbix 3.0.0开始支持该参数。
LogSlowQueriesno0-36000000数据库查询消耗时间,大于该时间将会记入日志 (毫秒)。
0 - 不记录慢查询日志。
DebugLevel=3时该选项可用。
从Zabbix 1.8.2开始支持该参数。
PidFileno/tmp/zabbix_proxy.pidPID文件名字。
ProxyLocalBufferno0-7200Proxy将在本地保留数据N小时,即使数据已与server同步。\如果第三方应用程序将使用本地数据,则可以使用此参数。
ProxyModeno0-10Proxy工作模式。
0 - 主动模式
1 - 被动模式
从Zabbix 1.8.3开始支持该参数。
注意 当使用 Active proxy 时,敏感的 proxy 配置数据可供有权访问Zabbix server trapper端口的应用使用。 因为第三方应用可以假装是活动proxy并请求配置数据而不会进行身份验证。
ProxyOfflineBufferno1-7201如果无法连接Zabbix server,proxy将保留数据N小时。\旧数据将丢失。
ServerPortno1024-3276710051当ProxyMode参数设置为 主动模式:\可以通过Zabbix server的IP地址或DNS名称获取配置数据并将数据发送给Zabbix server。

当ProxyMode参数设置为被动模式:\逗号分隔的IP地址列表,可选以CIDR表示法或Zabbix server的DNS名称。 仅接受来自此处配置地址的传入连接。 如果启用了IPv6支持,则“127.0.0.1”,“:: 127.0.0.1”,“:: ffff:127.0.0.1”将被同等对待,“:: / 0”将允许任何IPv4或IPv6地址。 ‘0.0.0.0/0’可用于允许任何IPv4地址。
示例:Server = 127.0.0.1,192.168.1.0 / 24,:: 1,2001:db8 :: / 32,zabbix.example.com
SNMPTrapperFileno/tmp/zabbix_traps.tmp临时文件, 用于传递 SNMP trap守护进程的数据给server.
必须和 zabbix_trap_receiver.pl或 SNMPTT 配置文件中的配置保持一致。
从Zabbix 2.0.0开始支持该参数。
SocketDirno/tmpZabbix 内部服务使用的用于存储 IPC sockets的目录。从Zabbix 3.4.0开始支持该参数。
SourceIPno对外连接的源IP地址。如:
-连接到Zabbix server;
- 无代理连接(VMware, SSH, JMX, SNMP, Telnet and simple checks);
- HTTP agent连接;
- 预处理JavaScript HTTP请求
SSHKeyLocationnoSSH检查和操作的公钥和私钥的位置。
SSLCertLocationno用于客户端身份验证的SSL证书文件的位置。
该参数只用于web监控,从Zabbix 2.4开始支持该参数
SSLKeyLocationno用于客户端身份验证的SSL私钥文件的位置。
该参数只用于web监控,从Zabbix 2.4开始支持该参数。
SSLCALocationno为SSL服务器证书验证覆盖证书颁发机构(CA)文件的位置。如果不设置,系统范围的目录将被使用。
注意,这个参数的值将被设置为libcurl选项curloptcapath, 在7.42.0之前的libcurl版本中,只有使用OpenSSL编译libcurl才会有效。 更多信息见 cURL 网页.
这个参数从Zabbix 2.4.0开始的web监控和自从Zabbix 3.0.0开始的SMTP身份验证中使用。
StartDBSyncersno1-1004数据库进程的初始实例数量。
在版本1.8.5之前,上限是64。
这个参数从Zabbix 1.8.3开始得到了支持。
StartDiscoverersno0-2501发现进程的初始实例数量。
在Zabbix 1.8.5版本之前,最大能设置为255。
StartHTTPPollersno0-10001HTTP 轮询进程的初始实例数量。
StartIPMIPollersno0-10000IPMI 轮询进程的初始实例数量。
在Zabbix 1.8.5版本之前,最大能设置为255。
StartJavaPollersno0-10000Java 轮询子进程的初始实例数量。
从Zabbix 2.0.0开始支持该参数。
StartPingersno0-10001ICMP pingers进程的初始实例数量
在Zabbix 1.8.5版本之前,最大能设置为255。
StartPollersUnreachableno0-10001不可达主机 (包括IPMI 和 Java)的轮询进程的初始实例数量。
从Zabbix 2.4.0开始,如果IPMI或Java轮询器启动,那么至少有一个针对不可访问主机的轮询进程必须运行。\在Zabbix 1.8.5版本之前,最大能设置为255。
这个参数从Zabbix 1.8.3开始得到了支持。
StartPollersno0-10005轮询进程的初始实例数量。\在Zabbix 1.8.5版本之前,最大能设置为255。
StartPreprocessorsno1-10003pre-forked实例的预处理线程数量1.
预处理器工作进程启动时,预处理管理器进程将自动启动。
从Zabbix 4.2.0开始支持该参数。
StartSNMPTrapperno0-10设置为1, SNMP trapper进程将启动。
从Zabbix 2.0.0开始支持该参数。
StartTrappersno0-10005trapper进程的初始实例数量。
Trapper接收来自Zabbix发送者、主动agent的数据。
至少要运行一个trapper进程用于在web前端展示服务器可用性和队列视图。
在Zabbix 1.8.5版本之前,最大能设置为255。
StartVMwareCollectorsno0-2500vmware采集器进程的初始实例数量。\从Zabbix 2.2.0开始支持该参数。
StatsAllowedIPnoip地址列表以”,”分割,也可以使用CIDR、或者DNS. 只接受ip里表中的请求. 如果未设置此参数,则不接受请求.如果启用ipv6,则 ‘127.0.0.1’, ‘::127.0.0.1’, ‘::ffff:127.0.0.1’ ipv4和ipv6都支持 ,’::/0’ 支持IPv4或者IPv6地址. ‘0.0.0.0/0’ 只支持ipv4.
例如:StatsAllowedIP=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com
从Zabbix 4.2.0开始支持该参数。
Timeoutno1-303agent、SNMP设备或外部检查的超时时长(单位为秒)。
TLSAccept如果TLS certificate 或 PSK 参数都进行了定义(即使是未加密的连接)选择yes, 否则为否Zabbix server能接受哪些连接方式。 此参数仅用于被动proxy。 可以指定多个值,以逗号分隔:
未加密接受无加密的连接(默认)
psk - 接受与TLS的连接和预共享密钥(PSK)
cert - 接受与TLS和证书的连接
从Zabbix 3.0.0开始支持该参数。
TLSCAFileno包含用于对等证书验证的顶级CA(s)证书的文件的完整路径名,用于Zabbix组件之间的加密通信。
从Zabbix 3.0.0开始支持该参数。
TLSCertFileno包含服务器证书或证书链文件的完整路径名,用于Zabbix组件之间的加密通信。
从Zabbix 3.0.0开始支持该参数。
TLSCipherAllnoGnuTLS或者OpenSSL (TLS 1.2)加密. 默认的密码套件为PSK-based.
例如: TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256
从Zabbix 4.4.7开始支持该参数。
例如GnuTLS: NONE:+VERS-TLS1.2:+ECDHE-RSA:+RSA:+ECDHE-PSK:+PSK:+AES-128-GCM:+AES-128-CBC:+AEAD:+SHA256:+SHA1:+CURVE-ALL:+COMP-NULL::+SIGN-ALL:+CTYPE-X.509
例如OpenSSL: EECDH+aRSA+AES128:RSA+aRSA+AES128:kECDHEPSK+AES128:kPSK+AES128
从Zabbix 4.4.7开始支持该参数。
TLSCipherCertnoGnuTLS加密或者 OpenSSL (TLS 1.2) 加密. 基于证书的加密的默认certificate-based.
例如GnuTLS: NONE:+VERS-TLS1.2:+ECDHE-RSA:+RSA:+AES-128-GCM:+AES-128-CBC:+AEAD:+SHA256:+SHA1:+CURVE-ALL:+COMP-NULL:+SIGN-ALL:+CTYPE-X.509
例如OpenSSL: EECDH+aRSA+AES128:RSA+aRSA+AES128
从Zabbix 4.4.7开始支持该参数。
TLSCipherCert13noOpenSSL 1.1.1或者TLS 1.3,基于证书的加密的默认certificate-based.
从Zabbix 4.4.7开始支持该参数。
TLSCipherPSKnoGnuTLS或者OpenSSL (TLS 1.2) 加密。 默认的密码套件为PSK-based.
例如GnuTLS: NONE:+VERS-TLS1.2:+ECDHE-PSK:+PSK:+AES-128-GCM:+AES-128-CBC:+AEAD:+SHA256:+SHA1:+CURVE-ALL:+COMP-NULL:+SIGN-ALL
例如OpenSSL: kECDHEPSK+AES128:kPSK+AES128
从Zabbix 4.4.7开始支持该参数。
TLSCipherPSK13noOpenSSL 1.1.1或者TLS 1.3.默认的密码套件为PSK-based..
例如: TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256
从Zabbix 4.4.7开始支持该参数。
TLSConnect如果TLS certificate 或 PSK 参数进行了定义(即使是未加密的连接)选是, 否则为否该参数仅用于主动proxy连接Zabbix server。 仅可以选择一种方式:
未加密接受无加密的连接(默认)
psk - 接受与TLS的连接和预共享密钥(PSK)
cert - 接受与TLS和证书的连接
从Zabbix 3.0.0开始支持该参数。
TLSKeyFileno包含私钥文件的完整路径名,用于Zabbix组件之间的加密通信。
从Zabbix 3.0.0开始支持该参数。
TLSPSKFileno包含proxy与Zabbix server加密通信所使用的预共享密钥文件的完整路径名。
从Zabbix 3.0.0开始支持该参数。
TLSPSKIdentityno预共享密钥身份字符串,用于与Zabbix server进行加密通信。
从Zabbix 3.0.0开始支持该参数。
TLSServerCertIssuerno允许server证书颁发者。
从Zabbix 3.0.0开始支持该参数。
TLSServerCertSubjectno允许的server证书主题。
从Zabbix 3.0.0开始支持该参数。
TmpDirno/tmp临时目录
TrapperTimeoutno1-300300定义trapper处理数据的超时时间。
Usernozabbix为了降低权限使用普通用户。
仅当以’root’身份运行且AllowRoot参数设置为禁止时,该参数才起作用。
从Zabbix 2.4.0开始支持该参数。
UnavailableDelayno1-360060在资源不可达期间,Zabbix多少秒检查一次资源是否可用。
UnreachableDelayno1-360015在资源不可 期间 ,Zabbix多少秒检查一次资源是否可达.
UnreachablePeriodno1-360045在资源不可期间 ,Zabbix多少秒检查一次资源是否可达。
VMwareCacheSizeno256K-2G8M存储VMware数据的共享内存大小。
VMware内部检查[vmware,buffer,…] 可以用来监控VMware缓存使用情况 (参见 内部检查)。
注意,如果没有配置并启动vmware收集器实例,那么共享内存就不会被分配。\从Zabbix 2.2.0开始支持该参数。
VMwareFrequencyno10-8640060间隔多少秒从单个VMware服务收集数据。\任何VMware监控项的最小更新周期都大于或等于该时间。
从Zabbix 2.2.0开始支持该参数。
VMwarePerfFrequencyno10-8640060间隔多少秒从单个VMware服务检索性能计数器统计数据。
该时间为任一VMware 监控项(使用VMware性能计数器)的最小更新间隔。
从Zabbix 2.2.9, 2.4.4开始支持该参数。
VMwareTimeoutno1-30010vmware采集器等待 VMware 服务(vCenter or ESX 管理程序)响应的最大时长。
从Zabbix 2.2.9, 2.4.4开始支持该参数。