zabbix性能调优:
服务器环境:centos7/zabbix3.2/mariadb
1.从监控项调整
(1)关掉没必要的监控项
zabbix自带模板里面涉及各种监控项,实际情况并不需要用到所有的,可以根据自带模板内容自己创建模板。也可以将模板中用不到的监控项关掉。部分自动发现会产生较多无用的监控项,不如关掉他们自己针对特殊的项目自己写,如图:
(2)调整数据获取时间间隔
这个调整的原则是,在满足需求的情况下,尽量将频率调低,也就是间隔调大。举两个例子:
ICMP-ping考虑到如果ping断了,很有可能是网络问题,直接导致服务中断等一系列问题。因为比较重要数据间隔之前为30秒,后期优化将时间调整为一分钟。可减少因为网络原因误报问题,还有这是减少了一半的采集量!
一般磁盘空间变化不会太剧烈,它的监控就可以时间间隔调大一些。磁盘总量改变的可能性更小了,所以间隔为一天。
(3)历史数据保留时间
有些监控主要是为了报警,历史数据并没有那么重要,详细的历史记录可将时间调小,多留一些趋势记录。趋势记录里面的数据虽然不够详细但也能作为大概的参考。
2.从配置文件参数调优
在zabbix服务器加上自带模板Template App Zabbix Server,拓扑图中添加这台主机,单机选择 主机聚合图形,可以查看server各项性能参数,如图:
vim /etc/zabbix/zabbix_server.conf
StartPollers=30
默认5 轮询器实例数量 一般规则 -保持此参数的值尽可能低。 zabbix_server的每个附加实例都会添加已知的开销, 同时,并行性增加。当队列平均包含最小参数数量(理想情况下,在任何给定时刻为0)时,实现最佳实例数。
StartPollersUnreachable=60
默认1 不可达主机 (包括IPMI 和 Java)的轮询器实例数量。
StartTrappers=30
默认5 trappers进程实例数量。Trappers接受来自Zabbix发送者、主动agents和主动proxies的传入连接。
至少要运行一个trapper进程来显示前端的服务器可用性和视图队列。
StartPingers=5
默认1 ICMP pingers进程实例数量
StartHTTPPollers=5
默认1 HTTP 轮询器子进程实例个数。
CacheSize=1024M
默认8M 缓存大小,用于存储主机、监控项、触发器数据的共享内存大小。内存溢出问题需要调节此参数。
HistoryCacheSize=128M
默认16M 历史缓存数据大小.存储历史数据.
TrendCacheSize=64M
默认4M 趋势缓存的大小,用于存储趋势数据的共享内存大小。
ValueCacheSize=128M
默认8M 历史数据缓存大小,缓存item历史数据请求的共享内存大小. 0即禁止缓存 (不建议). 当缓存大小超过共享内存时,每5分钟会向服务器日志写入一条警告信息.
LogSlowQueries=3000
默认0(不记录慢查询日志) 数据库查询时间,大于该时间会记入日志 (毫秒). 0 - 不记录慢查询日志.