参考

zabbix默认的配置即使机器128核心,256内存,只能抗住10-20台的监控,如果再多就需要修改配置了。

一.配置文件

server端配置文件添加如下

StartPollers=160

StartPollersUnreacheable=80

StartTrappers=20

StartPingers=100

StartDiscoverers=120

Cachesize=1024M

startDBSyncers=16

HistoryCacheSize=1024M

TrendCacheSize=1024M

HIstoryTextCacheSize-512M

二.数据库

如果数据库和zabbix在一台机器,可以使用socket连接,速度会提高。
数据库zabbix来说,选择InnoDB引擎,效率是其它引擎的1.5倍

对history类型的(history、history_uint等)大表进行拆分操作,关闭housekeeper禁止自动定期清除历史记录数据,因为对于数据库特别是对于InnoDB引擎大数据删除貌似很蛋疼。

可以对数据库配置文件调优,因为都要提交到数据库中,当机器很多时,数据库压力会很大

如果还是太多,可以考虑将mysql单独一台,并设置读写分离,可以用中间件实现。

三.服务端配置

#####1.关闭服务端的housekeep
housekeep是清理历史的机制,配置文件中,默认是每小时启动一次,然后清除监控项设置之外的多余历史记录。比如mysql监控项默认保存90天,他会清除90天以外的,这会导致经常去清理,有时会报错:Zabbix housekeeper processes more than 75% busy

2种方法
A:
编辑server端的配置文件,修改或添加如下2行,一天清理一次,并每次清理最多500行

HousekeepingFrequency=24   zabbix执行Housekeeping的频率,单位为hours
MaxHousekeeperDelete=500 每次最多删除历史数据的行

B:
关闭housekeep,并手动清理日志
2.2版本以下,server端配置文件添加

DisableHousekeeping=1 设置为1

2.2以上,到web界面修改

"Administration" -> "General" ,选择"Housekeeping" ,确保history和trends栏的"Enable internal housekeeping"的对勾去掉。

或者

2.调整监控项

很多监控项都是无用的或者目前用不到的,像redis监控模板中的调阅/发布监控项应该去掉。

监控项的类型最好使用数字,尽量避免使用字符。字符在数据库中的存储空间使用较大,在设置trigger时也相对麻烦,并且zabbix本身处理数字的效率要相对高。如果业务需要字符类型的监控项,可以适当的降低数据采集的时间间隔以提高处理效率

Trigger中,正则表达式函数last(),nodata()的速度最快,min()、max()、avg()的速度最慢。在使用过程中,尽量选择速度较快的函数。配置Trigger时,也应注意使用正确的逻辑,错误的逻辑可能导致数据库查询较慢的现象。

item监控性默认大部分都是保留90d(天)或者1w(周)的历史数据,趋势图数据保留365天。

其实有趋势图数据即可,历史数据保留7天足够了,采集频率,像磁盘,文件大小等很久才变化的,采集频率可以加大,以达到缓解压力和节省空间的作用

3.如果主机数量太多,采用代理

如果主机数量太多,可以考虑分机房,分业务,分组的方式来用代理中转。zabbix_proxy可以代替服务端收集数据和监控,但是监控结果还是发送到服务端汇总,代理是没有web界面的。

如果机器太多,可以用主动模式,当前所有默认都是被动模式的,客户端启动10051端口,服务端需要去10051取数据。

a) 减少 history 保存时间
b) 减少 item 获取间隔时间
c) 减少不必要的监控项

Zabbix优化的更多相关文章

  1. 转 zabbix 优化方法 以及数据库查询方法 两则

    ###########sample 1 https://www.cnblogs.com/hanshanxiaoheshang/p/10304672.html (不错) 如何从zabbix server ...

  2. 京东MySQL监控之Zabbix优化、自动化

    原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 .作者信息和本声明.否则将追究法律责任.http://wangwei007.blog.51cto.com/68019/1833332 随 ...

  3. zabbix优化,配合文件,zabbix_get命令

    一.配置文件优化 server端配置文件添加如下 StartPollers=160 #zabbix_server的进程数 StartPollersUnreacheable=80 #默认情况下,ZABB ...

  4. 转 zabbix 优化方法 以及 后台数据库查询方法 两则

    ############sample 1 https://blog.51cto.com/sfzhang88/1558254 如何从Zabbix数据库中获取监控数据 sfzhang关注6人评论40627 ...

  5. zabbix 优化之 表分区

    参考文献: http://www.th7.cn/db/mysql/201405/51681.shtml

  6. zabbix 分布式监控及优化

    1..zabbix分布式监控,模拟多机房实现监控? 1.有多机房时,需要用到proxy 1.网络不通 2.网络延迟 2.当监控的主机较多时,也可以用proxy来缓解压力 1.安装proxy [root ...

  7. zabbix目录

    1.Linux实战教学笔记49:Zabbix监控平台3.2.4(一)搭建部署与概述 2.Linux实战教学笔记50:Zabbix监控平台3.2.4(二)深入理解zabbix 3.Linux实战教学笔记 ...

  8. zabbix初级进阶

    目录 一.理论概述 zabbix功用 运行条件 缺点 zabbix组件 部署 web安装zabbix 优化 总结 这篇文章主要对zabbix有一个全面且简单的了解 一.理论概述 zabbix功用 检测 ...

  9. kvm学习篇

    云计算:一种资源的使用模式 弹性,按需付费资源降低成本 公有云:亚马逊.阿里云私有云:混合云: 安装: yum install qemu-kvm qemu-kvm-tools virt-manager ...

随机推荐

  1. R_基本统计分析_06

    summary()提供基础的统计信息 sapply(x,FUN,options)可以指定统计函数 fivenum()可以返回图基五数 Hmisc 中的describe(data)返回变量,观测的变量, ...

  2. Manjaro 安装笔记

    双系统基本知识 [折腾日记]win10 ,ubuntu双系统安装避坑指南 Windows 下安装 Ubuntu 双系统(更新) rEFInd 总结注意点: 制作U盘启动盘一开始使用的是 Ulrstro ...

  3. 【转载】 C#中List集合使用First方法查找符合条件的第一个元素

    在C#的List集合相关操作中,很多时候需要从List集合中查找出符合条件的第一个元素对象,如果确认在List集合中一定存在符合条件的元素,则可以使用First方法来查找,First方法调用格式为Fi ...

  4. react之高阶组件(二)

    高阶组件的使用 接上文———— 一.像函数一样直接调用 import React, { Component } from 'react' import A from './A' class C ext ...

  5. JavaScript 继承 封装 多态实现及原理详解

    面向对象的三大特性 封装 所谓封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏.封装是面向对象的特征之一,是对象和类概念的主要特性. ...

  6. jar包下载网站

    https://mvnrepository.com/ https://www.kumapai.com/open/query/?querytype=title&querykey=cglib ht ...

  7. 常用的js加密

    https://github.com/hellobajie/AES-of-JavaScript    此为js的 AES加密方式,两个加密文档,可当做扣js必备

  8. mysql FORMAT() 格式化后的数字运算出错

    原文链接 FORMAT()  之后   会满三位加逗号, 在此基础上进行数字运算的时候会出现预料之外的结果, 建议使用 : convert(param, decimal(12,2)) cast(par ...

  9. Docker 容器介绍

    Docker 容器介绍 Docker 是一个基于 Go 语言的开源应用容器引擎,它既能实现虚拟化,又可用于将应用服务打包成轻量.可移植的容器,从而可以发布到任何 Linux 平台.除了优秀了沙箱机制外 ...

  10. Linux下 启动tomcat 时候同时日志命令

    ./startup.sh && tail -f ../logs/catalina.out