zabbix_server优化

2022/9/2 6:24:15

本文主要是介绍zabbix_server优化,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

造成zabbix性能下降的因素如表所示
1

zabbix性能低下的表现


1.    zabbix队列有太多被延迟的item,可以通过administration-queue查看
2.    zabbix绘图中经常出现断图,一些item没有数据
3.    带有nodata()函数的触发器出现flase
4.    前端页面无响应,或者响应慢
解决办法如下:
1. 不要使用默认的模板,应该自己定制模板
2. 数据库调优
3. 架构优化,如果使用分布式,各服务器功能独立
4. Items、trigger调优
5. 更换更好的硬件

Zabbix性能优化的原则


1、确保zabbix内部组件性能处于被监控状态(调优的基础!)
2、使用硬件性能足够好的服务器
3、不同角色分开,使用各自独立的服务器
4、使用分布式部署
5、调整MySQL性能
6、调整Zabbix自身配置
配置文件的参数优化
调整zabbix参数(/etc/zabbix/zabbix_server.conf)
StartPollers=160
StartPollersUnreacheable=80
StartTrappers=20
StartPingers=100
StartDiscoverers=120
Cachesize=1024M
startDBSyncers=16
HistoryCacheSize-1024M
TrendCacheSize=1024M
HIstoryTextCacheSize-512M
重启zabbix_server
Zabbix数据库优化
Zabbix数据库优化
1.    对数据库软件本身的优化,采用更高性能的数据库版本
2.    对数据库本身的参数进行调优
3.    对zabbix数据库结构进行优化,进行分表操作,会最大程度提高zabbix的数据库性能,在分表的时候,需要关闭housekeeper
4.    在zabbix_server.conf中的logshowqueries参数是关于慢查询的设置,将其设置为1000,开启这个参数对慢查询继续记录,方便调优配置
5.  对zabbix的工作机制和各种process的作用要了解,对zabbix的数据库表结构也要有比较好的理解。
6.    对数据库优化(在32G内存的服务器中)
[client]
port = 3306
socket = /tmp/mysql.sock
[mysqld]
port = 3306
socket = /tmp/mysql.sock
server-id = 1
表示是本机的序号为1
max_allowed_packet = 32M
接受的数据包大小;
max_heap_table_size =128 8M
定义了用户可以创建的内存表(memory table)的大小。
read_rnd_buffer_size = 512K
MySQL的随机读缓冲区大小。
sort_buffer_size = 16
MySQL执行排序使用的缓冲大小。
join_buffer_size = 16
联合查询操作所能使用的缓冲区大小
query_cache_size = 4096M
MySQL的查询缓冲大小
query_cache_limit = 4M
指定单个查询能够使用的缓冲区大小,默认1M
innodb_open_files =2048
nnodb能打开的表的数据,如果库里的表特别多的情况,请增加这个。这个值默认是300
innodb_buffer_pool_size = 10G
nnoDB使用一个缓冲池来保存索引和原始数据
innodb_thread_concurrency = 16
默认设置为 0,表示不限制并发数,
[mysqldump]
quick
max_allowed_packet = 16M #服务器发送和接受的最大包长度
[myisamchk]
key_buffer_size = 20M
sort_buffer_size = 20M
read_buffer = 2M
write_buffer = 2M

这篇关于zabbix_server优化的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程