本节列出Zabbix agent配置 file (zabbix_agentd.conf)中支持的参数
请注意:
参数 | 必选 | 范围 | 默认值 | 描述 |
---|---|---|---|---|
Alias | no | 为监控项键设置alias. 可用于将冗长复杂的监控项键替换为更短更简单的形式. 允许存在多个alias参数. 不允许存在相同alias键的多个参数. 不同的alias键可以引用相同的监控项键. 别名可用于HostMetadataItem参数但不能用于HostnameItem参数. 示例: 1. 获取用户'zabbix'的ID. alias=zabbix.userid:vfs.file.regexp[/etc/passwd,"^zabbix:.:([0-9]+)",,,,\1] 现在可以使用简写键zabbix.userid来获取数据. 2. 使用默认和自定义参数获取CPU利用率. alias=cpu.util:system.cpu.util alias=cpu.util[*]:system.cpu.util[*] 这样既可以使用cpu.util键get默认参数的CPU利用率百分比, 也可以使用cpu.util[all, idle, avg15]来getCPU利用率的具体数据. 3. 运行多个处理相同发现监控项的low-level discovery规则. alias=vfs.fs.discovery[*]:vfs.fs.discovery 现在可以为每个规则设置使用vfs.fs.discovery的不同参数来配置多个发现规则, 例如vfs.fs.discovery[foo], vfs.fs.discovery[bar]等. |
||
AllowKey | no | 允许执行与模式匹配的监控项键值. 键模式是支持通配符的表达式, 可使用"*"字符匹配任意数量的任意字符. 可通过与DenyKey参数组合定义多个键匹配规则. 这些参数按其出现顺序逐一处理. 此参数自Zabbix 5.0.0版本开始支持. 另请参阅: Restricting agent checks. |
||
AllowRoot | no | 0 | 允许agent以'root'身份run. 若禁用且agent由'root'启动时, agent将尝试切换至'zabbix'用户运行. 以普通用户启动时此参数无效. 0 - 禁止 1 - 允许 |
|
BufferSend | no | 1-3600 | 5 | 在缓冲区中保留数据不超过N秒。 |
BufferSize | no | 2-65535 | 100 | memory缓冲区中值的最大数量。当缓冲区满时,agent会将所有收集的数据发送至Zabbix server或proxy。 |
DebugLevel | no | 0-5 | 3 | 指定调试级别: 0 - 关于Zabbix进程启动和停止的基本信息 1 - 关键信息 2 - 错误信息 3 - 警告信息 4 - 调试信息(产生大量输出) 5 - 扩展调试信息(产生更多输出) |
DenyKey | no | 拒绝执行与模式匹配的监控项键值。键模式是支持使用"*"字符匹配任意数量任意字符的通配符表达式。 可结合AllowKey参数定义多个键匹配规则。系统将按照参数出现的顺序逐一处理这些规则。 该参数自Zabbix 5.0.0版本起支持。 另请参阅:Restricting agent checks。 |
||
EnableRemoteCommands | no | 0 | 是否允许来自Zabbix server的远程命令。此参数已弃用,请改用AllowKey=system.run[*]或DenyKey=system.run[*] 它是AllowKey/DenyKey参数的内部alias,具体取决于值:0 - DenyKey=system.run[*] 1 - AllowKey=system.run[*] |
|
HostInterface | no | 0-255 characters | 定义主机接口的可选参数。 主机接口用于主机将-dns-设为默认接口进程。 若值超过255字符限制,agent将问题错误且不会启动。 未定义时,将从HostInterfaceItem获取值。 自Zabbix 4.4.0版本起支持。 |
|
HostInterfaceItem | no | 可选参数,用于定义获取主机接口时使用的监控项. 主机接口用于主机 将-dns-设为默认接口进程. 在自动注册请求期间,如果指定监控项返回的值超过255字符限制,agent将记录警告消息. 无论AllowKey/DenyKey值如何设置,都支持system.run[] 监控项. 此选项仅在未定义HostInterface时使用. 从Zabbix 4.4.0版本开始支持. |
||
HostMetadata | no | 0-255 characters | 用于定义主机元数据的可选参数。主机元数据仅在主机自动注册过程(主动agent)中使用。 若未定义,该值将从HostMetadataItem中获取。 若指定值超过限制或包含非UTF-8string,agent将问题错误且无法启动。 |
|
HostMetadataItem | no | 可选参数,用于定义获取主机元数据时使用的Zabbix agent 监控项。此选项仅在未定义HostMetadata时使用。 支持UserParameters和别名。无论AllowKey/DenyKey值如何,均支持system.run[]。 HostMetadataItem值会在每次自动注册尝试时获取,且仅用于主机自动注册流程(主动式agent)。 在自动注册请求期间,若指定监控项返回的值超过255字符限制,agent将记录警告消息。 监控项返回的值必须是UTF-8 string,否则将被忽略。 |
||
Hostname | no | 按主机名项设置 | 以逗号分隔的唯一且区分大小写的主机名列表。 主动检查所必需,必须与服务器上配置的主机名匹配。如果未定义,则从HostnameItem获取值。 允许的字符:字母数字、'.'、' '、'_'和'-'。 最大长度:每个主机名128个字符,整行2048个字符。 |
|
HostnameItem | no | system.hostname | 可选参数,用于定义获取主机名时使用的Zabbix agent 监控项。此选项仅在未定义主机名时使用。 不支持UserParameters或别名,但支持system.run[],且不受AllowKey/DenyKey值影响。 |
|
Include | no | 您可以在配置file中包含单个文件或目录中的所有文件。 若仅需包含指定目录中的相关文件,支持使用星号通配符进行模式匹配。例如: /absolute/path/to/config/files/*.conf 。关于限制条件,请参阅special notes。 |
||
ListenBacklog | no | 0 - INT_MAX | SOMAXCONN | TCP队列中等待连接的最大数量。 默认值为硬编码常量,具体取决于系统。 支持的最大值也取决于系统,过高的值可能会被静默截断为"实现指定的最大值"。 |
ListenIP | no | 0.0.0.0 | 以逗号分隔的IP地址列表,agent应监听的地址。 在version 1.8.3及更高版本中支持多个IP地址。 |
|
ListenPort | no | 1024-32767 | 10050 | Agent 将在此端口监听来自服务器的连接。 |
LoadModule | no | 在agent启动时加载的模块。模块用于扩展agent的功能。 格式: LoadModule=<module.so> LoadModule=<path/module.so> LoadModule=</abs_path/module.so> 模块必须位于LoadModulePath指定的目录中,或者路径必须位于模块名称之前。如果前置路径是绝对路径(以'/'开头),则忽略LoadModulePath。 允许包含多个LoadModule参数。 |
||
LoadModulePath | no | agent模块所在位置的完整路径。 默认值取决于编译选项。 |
||
LogFile | yes, if LogType is set to file, otherwise no |
日志file名称 | ||
LogFileSize | no | 0-1024 | 1 | 日志文件file的最大大小(MB)。 0 - 禁用自动日志轮转。 注意:如果日志文件file大小达到限制且file轮转失败(无论何种原因),现有日志文件file将被截断并重新开始记录。 |
LogType | no | file | 日志输出类型: file - 将日志写入由LogFile参数指定的file, system - 将日志写入syslog, console - 将日志写入标准输出. 该参数自Zabbix 3.0.0版本起支持. |
|
LogRemoteCommands | no | 0 | 启用将执行的shell命令记录为警告的功能. 0 - 禁用 1 - 启用 仅当远程执行时才会记录命令. 如果system.run[]是通过HostMetadataItem、HostInterfaceItem或HostnameItem参数在本地启动的, 则不会创建日志条目. |
|
MaxLinesPerSecond | no | 1-1000 | 20 | 当处理'日志'、'logrt'或'log.count'主动检查时,agent每秒向Zabbix server或proxy发送的最大新行数。 提供的值将被'日志'、'logrt'或'log.count' 监控项监控项键值中的'maxlines'参数覆盖。 注意: Zabbix将处理比MaxLinesPerSecond设置多10倍的新行数,以在日志监控项中查找所需的string。 |
PidFile | no | /tmp/zabbix_agentd.pid | PID文件名称 file. | |
RefreshActiveChecks | no | 60-3600 | 120 | 主动检查列表的刷新频率,单位为秒。 请注意若主动检查刷新失败,下一次刷新尝试将在60秒后进行。 |
Server | yes, if StartAgents is not explicitly set to 0 | 以逗号分隔的IP地址列表(支持CIDR表示法)或Zabbix servers和Zabbix proxies的DNS名称。 仅接受来自此处列出的主机的传入连接。 若启用IPv6支持,则'127.0.0.1'、'::127.0.0.1'、'::ffff:127.0.0.1'将被等同处理,且'::/0'允许任何IPv4或IPv6地址。 '0.0.0.0/0'可用于允许任何IPv4地址。 注意:"IPv4兼容的IPv6地址"(0000::/96前缀)受支持但已被RFC4291弃用。 示例:Server=127.0.0.1,192.168.1.0/24,::1,2001:db8::/32,zabbix.example.com 允许包含空格。 |
||
ServerActive | no | Zabbix server/proxy地址或集群配置,用于get主动检查的来源。 server/proxy地址可以是IP地址或DNS名称,可选端口号用冒号分隔。 集群配置由一个或多个用分号分隔的服务器地址组成。 可指定多个Zabbix servers/集群和Zabbix proxies,用逗号分隔。 每个Zabbix server/集群不应指定多个Zabbix proxy。 若指定了Zabbix proxy,则不应再为该proxy指定Zabbix server/集群。 可提供多个逗号分隔的地址以并行使用多个独立的Zabbix servers,允许包含空格。 未指定端口时使用默认端口。 若为IPv6地址指定端口,则必须用方括号括住主机地址。 未指定端口时,IPv6地址的方括号可省略。 未指定此参数时,主动检查功能将被禁用。 Zabbix proxy示例: ServerActive=127.0.0.1:10051 多服务器示例: ServerActive=127.0.0.1:20051,zabbix.domain,[::1]:30051,::1,[12fc::1] 高可用性示例: ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051;zabbix.cluster.node3 双集群加单服务器的高可用性示例: ServerActive=zabbix.cluster.node1;zabbix.cluster.node2:20051,zabbix.cluster2.node1;zabbix.cluster2.node2,zabbix.domain |
||
SourceIP | no | 源IP地址用于: - 到Zabbix server或Zabbix proxy的出站连接; - 执行某些监控项时建立连接(web.page.get, net.tcp.port等) |
||
StartAgents | no | 0-100 | 3 | 处理被动检查的zabbix_agentd预派生实例数量. 若设置为0,将禁用被动检查且agent不会监听任何TCP端口. |
Timeout | no | 1-30 | 3 | 处理时间不超过Timeout秒。 |
TLSAccept | yes, if TLS certificate or PSK parameters are defined (even for unencrypted connection), otherwise no | 接受哪些传入连接. 用于被动检查. 可指定多个值, 用逗号分隔: unencrypted - 接受未加密的连接 (默认) psk - 接受使用TLS和预共享密钥(PSK)的连接 cert - 接受使用TLS和证书的连接 该参数自Zabbix 3.0.0起支持. |
||
TLSCAFile | no | 包含用于对等证书验证的Top级CA证书的file完整路径名,用于Zabbix组件之间的加密通信。 该参数自Zabbix 3.0.0版本起支持。 |
||
TLSCertFile | no | 包含用于与Zabbix组件加密通信的agent证书或证书链的file完整路径名。 该参数自Zabbix 3.0.0版本起支持。 |
||
TLSCipherAll | no | GnuTLS优先级string或OpenSSL(TLS 1.2)加密套件string。覆盖基于证书和PSK加密的默认加密套件选择标准。 示例:TLS_AES_256_GCM_SHA384:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256 该参数自Zabbix 4.4.7版本起支持。 |
||
TLSCipherAll13 | no | OpenSSL 1.1.1或更高版本中TLS 1.3的密码套件string. 覆盖基于证书和PSK加密的默认密码套件选择标准. 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版本开始支持. |
||
TLSCipherCert | no | GnuTLS优先级string或OpenSSL(TLS 1.2)加密套件string。覆盖基于证书加密的默认加密套件选择标准。 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版本起支持。 |
||
TLSCipherCert13 | no | 用于OpenSSL 1.1.1或更高版本在TLS 1.3中的密码套件string。覆盖基于证书加密的默认密码套件选择标准。 该参数自Zabbix 4.4.7版本起支持。 |
||
TLSCipherPSK | no | GnuTLS优先级string或OpenSSL (TLS 1.2)加密套件string. 覆盖基于PSK加密的默认加密套件选择标准. 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版本起支持. |
||
TLSCipherPSK13 | no | 用于OpenSSL 1.1.1或更高版本的TLS 1.3密码套件string。覆盖基于PSK加密的默认密码套件选择标准。 示例:TLS_CHACHA20_POLY1305_SHA256:TLS_AES_128_GCM_SHA256 该参数自Zabbix 4.4.7版本起支持。 |
||
TLSConnect | yes, if TLS certificate or PSK parameters are defined (even for unencrypted connection), otherwise no | agent应如何连接至Zabbix server或proxy。用于主动检查。仅可指定一个值: unencrypted - 不加密连接(默认) psk - 使用TLS和预共享密钥(PSK)连接 cert - 使用TLS和证书连接 该参数自Zabbix 3.0.0版本起支持。 |
||
TLSCRLFile | no | 包含已吊销证书的file完整路径名。该参数用于与Zabbix组件进行加密通信。 此参数自Zabbix 3.0.0版本起支持。 |
||
TLSKeyFile | no | 包含用于与Zabbix组件进行加密通信的file agent私钥的完整路径名。 该参数自Zabbix 3.0.0版本起支持。 |
||
TLSPSKFile | no | 包含用于与Zabbix组件进行加密通信的file agent预共享密钥的完整路径名。 该参数自Zabbix 3.0.0版本起支持。 |
||
TLSPSKIdentity | no | 预共享密钥标识string,用于与Zabbix server进行加密通信。 该参数自Zabbix 3.0.0版本起支持。 |
||
TLSServerCertIssuer | no | 允许的服务器(proxy)证书颁发者。 该参数自Zabbix 3.0.0版本起支持。 |
||
TLSServerCertSubject | no | 允许的服务器(proxy)证书主题。 该参数自Zabbix 3.0.0版本起支持。 |
||
UnsafeUserParameters | no | 0,1 | 0 | 允许所有字符作为参数传递给用户自定义参数. 0 - 不允许 1 - 允许 以下字符不被允许: \ ' " ` * ? [ ] { } ~ $ ! & ; ( ) < > \ |
User | no | zabbix | 将权限降级至系统中指定的现有用户。 仅当以'root'身份运行run且AllowRoot被禁用时生效。 |
|
UserParameter | no | 用于监控的用户自定义参数。可定义多个用户参数。 格式:UserParameter=<键>,<shell命令> 注意shell命令不能返回空string或仅包含EOL。 若指定了UserParameterDir参数,shell命令可使用相对路径。 示例: UserParameter=system.test,who\ |
||
UserParameterDir | no | UserParameter命令的默认搜索路径。若启用此参数,agent将在执行命令前将工作目录切换至此处指定的路径。因此,UserParameter命令可使用相对路径前缀./ 替代完整路径。仅允许配置单个条目。 示例:UserParameterDir=/opt/myscripts |