zabbix_server.conf

本文最后更新于:2023年12月5日 晚上

# zabbix_server.conf
# This is a configuration file for Zabbix server daemon
# To get more information about Zabbix, visit http://www.zabbix.com

ListenPort=10051  # 监听端口
SourceIP=    # 多IP地址情况下,与其他服务器通信使用的源IP地址,一般不用设置
PidFile=/tmp/zabbix_server.pid  # PID文件路径
SocketDir=/tmp   # socket文件路径,如果不涉及到本机通信,此参数意义不大

# 日志
LogType=file   # 日志类型,支持system、file和console
LogFile=/tmp/zabbix_server.log  # 日志路径
LogFileSize=0   # 指定日志滚动写入大小,当达到指定大小时,会删除就日志重新从头写入新日志,0-1024,最大1024M,0表示不限制,建议设置为0,因为这个文件一般不会太大
DebugLevel=3 #自定义日志级别,0-5,默认3 warning,可以设置为4 error

# 数据库
DBHost=192.168.7.104  # 数据库地址
DBName=zabbix_server  # 数据库名称
DBSchema=     # 数据库访问协议,默认myslq,如果使用其他数据库,需要设置
DBUser=zabbix   # 数据库账号名
DBPassword=123456   # 数据库用户密码
DBSocket=     # 数据库socket文件,如果mysql不在本机,此参数不需要配置
DBPort=3306    # 数据库端口,默认3306

# 历史数据
HistoryStorageURL=   # elasticsearch服务器地址,保存zabbix历史数据到ES里面,优化zabbix性能,新版本zabbix的才支持
HistoryStorageTypes=uint,dbl,str,log,text  # elasticsearch索引类型
HistoryStorageDateIndex=0  # 将历史数据保存到不同的elasticsearch索引

# 导出数据相关,一般不会导出数据,所以不需要配置
ExportDir=   # 定义实时导出触发器事件,监控项采集值,趋势数据的目录
ExportFileSize=1G # 定义每个导出文件的最大大小

############ 高级参数 ################

StartPollers=16   # 预启动进程数量,收集数据,0-1000,建议此值设置与cpu核数相同
StartIPMIPollers=0  # 预启动进程数量,IPMI收集数据,0-1000,如果有物理服务器,可以打开
StartPreprocessors=3 # 预启动进程数量,用于处理zabbix agent数据,1-1000,建议设置高一些,如果使用proxy,server就不和agent直接接触了,这样可以设置的低一些
StartPollersUnreachable=1 # 预启动进程数量,轮询检查不可达主机,0-1000,设置1个进程就够了,毕竟服务器不会经常挂
StartTrappers=5  # 预启动进程数量,Trappers进程,处理报警信息,0-1000,报警多的话可以多开几个
StartPingers=3  # 预启动进程数量,用于ping检查主机,0-1000,建议设置多一
StartDiscoverers=1 # 自动发现主机的进程数量,0-250,此功能特别消耗资源,建议关闭
StartHTTPPollers=1  # http进程数量,处理web请求,设置1-2足够
StartTimers=1  # 计时器实例数量,记录报错、发邮件等行为的时间,1-1000,设置为2就足够
StartEscalators=1  # escalators进程的初始实例数量,用于处理动作中的自动步骤的进程的数量,0-100
StartAlerters=3  # 报警实例预启动数量,0-100,报警多的话可以开多一点

# 监控java,zabbix不能直监控java,而是通过javagateway间接监控
JavaGateway=192.168.7.101 # javagateway服务器地址,java pollers必须设置
JavaGatewayPort=10052   # javagateway端口,1024-32767
StartJavaPollers=20   # java轮训实例预启动数量,0-1000

# 监控VMware,很少用
StartVMwareCollectors=0  # 用于设置监控VMWARE Esxi主机实例时使用,0-250,若为0则不启用,若要监控ESXI主机,此值最少为1,根据监控ESXI数量设置对应数值
VMwareFrequency=60   # 监控vmware获取最新数据间隔频率,单位为秒,10-86400
VMwarePerfFrequency=60  # 监控vmware获取性能数据间隔
VMwareCacheSize=8M #vmware数据缓存大小,会占用zabbix server服务器内存
VMwareTimeout=10 #超时时间

SNMPTrapperFile=/tmp/zabbix_traps.tmp # snmp触发器临时文件路径
StartSNMPTrapper=0 # 是否启用 snmptrapper功能 ,默认0不启用(配合参数SNMPTrapperFile使用)

ListenIP=0.0.0.0 # 监听地址

# 历史数据相关,通过设置参数,删不干净,通常写sql脚本,直接删库
HousekeepingFrequency=1  # 多少小时清理一次代理端数据库的history数据,0-24,默认1小时,关于多久之前的数据是history数据,在模板的监控项中有设置
MaxHousekeeperDelete=5000  # 每次最多删除历史数据的行数,0-1000000

# 缓存相关,以下缓存空间都是隔离的
CacheSize=128M  # zabbix初始化时占用多少系统共享内存用于存储配置信息,HOST,ITEM,TRIGGER数据,视监控主机数量和监控项调整,建议调整到32M或者更大
CacheUpdateFrequency=60  # Zabbix更新缓存数据的频率,单位为秒,范围是1-3600,若管理页面操作不频繁,可以考虑加大参数值
StartDBSyncers=8 # zabbix和数据库同步数据的进程数量,1-100,视数据库服务器I/O繁忙情况,和数据库写能力调整。数值越大,写能力越强。对数据库服务器I/O压力越大
HistoryCacheSize=512M # 历史数据的缓存大小,128K-2G
HistoryIndexCacheSize=128M # 历史数据索引缓存的大小,128K-2G
TrendCacheSize=4M # 划分多少系统共享内存用于存储计算出来的趋势数据,一定程度上可缓解数据库读压力
ValueCacheSize=64M # 历史值缓存的大小,用于缓存历史数据请求的共享内存大小

# 超时相关
Timeout=30 # 数据获取等待超时时间,1-30,建议加大此值,注意若此数值加大,应该考虑参数 StartPollers 是否有相应加大的必要。
TrapperTimeout=300 # 启用trapper功能,用于进程等待超时设置,1-300,单位是秒
UnreachablePeriod=45 # 当主机不可达多少秒后,设置为主机不可用,单位是秒,范围是1-3600
UnavailableDelay=60  # 当主机不可用了,多久检查一次该主机的可用性,单位为秒,范围是1-3600
UnreachableDelay=15  # 同 UnavailableDelay

# 脚本相关
AlertScriptsPath=${datadir}/zabbix/alertscripts  # 监控报警脚本路径,取决于编译时datadir参数
ExternalScripts=${datadir}/zabbix/externalscripts  # 自定义脚本存储路径

FpingLocation=/usr/bin/fping  # fping命令的位置
Fping6Location=/usr/bin/fping6  # fping6命令的位置

SSHKeyLocation=  # 用于SSH检查和操作的公钥和私钥的位置。

LogSlowQueries=0 # 设置慢日志查询时间(以毫秒为单位),仅当DebugLevel设置为3、4、5时才可用,0 - 不记录慢查询,范围是1-3600000,数据库自带慢日志查询功能,这里一般也不设置

TmpDir=/tmp  # 临时文件目录

StartProxyPollers=1  # 启用多少子进程与proxy端通信,建议此值等于proxy数量,范围是0-250
ProxyConfigFrequency=60 # 被动模式下,被监控主机同步配置文件至proxy的周期,单位秒,1-3600*24*7
ProxyDataFrequency=60  # 被动模式下,zabbix server间隔多少秒向proxy请求历史数据,1-3600

AllowRoot=0  # 是否允许root启动zabbix,0/1

User=zabbix  # 设置zabbix启动用户

Include=/usr/local/etc/zabbix_server.general.conf  # 导入其他目录的配置文件
Include=/usr/local/etc/zabbix_server.conf.d/
Include=/usr/local/etc/zabbix_server.conf.d/*.conf

# web监控 SSL相关
SSLCertLocation=${datadir}/zabbix/ssl/certs  # SSL证书公钥的位置,用于web监控
SSLKeyLocation=${datadir}/zabbix/ssl/keys   # SSL客证书私钥位置,用于web监控
SSLCALocation=          # SSL CA钥文件目录

StatsAllowedIP=  # 允许访问zabbix server的IP地址列表,不过一般通过防火墙限制

# 第三方模块相关
LoadModulePath=${libdir}/modules # 第三方模块目录路径
LoadModule= #第三方模块路径,示例:LoadModule=<path/module.so>

# TLS相关,不过zabbix一般不用证书,即使用,配置在nginx也更合适
TLSCAFile=   # CA文件
TLSCRLFile=  # 包含已吊销证书的文件的完整路径名。
TLSCertFile=  # 公钥文件路径
TLSKeyFile=   # 私钥文件路径

以上所有参数的设置,可以先设置一个较小的保守的值,然后通过测试,一点点调整,最终优化到合适的值


zabbix_server.conf
http://blog.lujinkai.cn/运维/zabbix/zabbix_server.conf/
作者
像方便面一样的男子
发布于
2021年2月9日
更新于
2023年12月5日
许可协议