zabbi4.0性能调优

性能调整

概观
让Zabbix系统进行适当调整以获得最佳性能非常重要。

硬件

  • 使用最快的处理器
  • SCSI或SAS优于IDE(通过使用实用程序hdparm可以显着提高IDE磁盘的性能)和SATA
  • 15K RPM优于10K RPM,优于7200 RPM
  • 使用快速RAID存储
  • 使用快速以太网适配器
  • 拥有更多内存总是更好

操作系统

  • 使用最新(稳定!)版本的操作系统
  • 从内核中排除不必要的功能
  • 调整内核参数

Zabbix配置参数

  • 可以调整许多参数以获得最佳性能。

zabbix_server
StartPollers

  • 一般规则 保持此参数的值尽可能低。zabbix_server的每个附加实例都增加了已知的开销,同时增加了并行性。当队列平均包含最小数量的参数(理想情况下,在任何给定时刻为0)时,实现最佳实例数。可以使用内部检查zabbix [queue]监视此值。

DEBUGLEVEL

  • 最佳值为3。

DBSocket

  • 仅限MySQL。建议使用DBSocket连接数据库。这是最快,最安全的方式。

数据库引擎
这可能是Zabbix调优中最重要的部分。Zabbix在很大程度上取决于数据库引擎的可用性和性能。

  • 使用最快的数据库引擎,即MySQL或PostgreSQL
  • 使用稳定版本的数据库引擎
  • 从源代码重建MySQL或PostgreSQL以获得最大性能
  • 遵循从MySQL或PostgreSQL文档中获取的性能调优说明
    对于MySQL,使用InnoDB表结构
  • 如果使用InnoDB,ZABBIX的工作速度至少快1.5倍(与MyISAM相比)。这是因为并行性增加。但是,InnoDB需要更多的CPU能力。
  • 强烈建议调整数据库服务器以获得最佳性能
  • 将数据库表保存在不同的硬盘上
    ‘history’,'history_str,‘items’‘functions’,triggers’和’trend’是使用最多的表。
  • 对于在tmpfs中保存MySQL临时文件的大型安装是: MySQL> = 5.5:不推荐(MySQL bug#58421) MySQL
    <5.5:推荐

GUI调试

  • 可以使用前端调试模式来诊断与前端性能相关的问题。

一般建议

  • 仅监控所需参数
  • 调整所有项目的“更新间隔”。保持较小的更新间隔可能适用于漂亮的图形,但是,这可能会使Zabbix过载
  • 调整默认模板的参数
  • 调整管家参数
  • 不监视返回相同信息的参数。
  • 避免使用长期作为函数参数给出的触发器。例如,max(3600)的计算速度明显慢于max(60)。

使用“ps”和“top”查看Zabbix进程性能
由于Zabbix 2.2进程更改其命令行以显示当前活动和有意义的统计信息,例如:

UID PID PPID C STIME TTY TIME CMD
zabbix22 4584 1 0 14:55?00:00:00 zabbix_server -c /home/zabbix22/zabbix_server.conf
zabbix22 4587 4584 0 14:55?00:00:00 zabbix_server:配置syncer [同步配置0.041169秒,空闲60秒]
zabbix22 4588 4584 0 14:55?00:00:00 zabbix_server:db watchdog [同步警报配置0.018748秒,空闲60秒]
zabbix22 4608 4584 0 14:55?00:00:00 zabbix_server:timer#1 [更新了0个主机,在0.000472秒内被禁止0个事件,空闲59秒]
zabbix22 4637 4584 0 14:55?00:00:01 zabbix_server:history syncer#3 [处理0值,0触发0.000036秒,空闲1秒]
zabbix22 4657 4584 0 14:55?00:00:00 zabbix_server:vmware collector#1 [已更新0,已删除0 VMware服务,0.000004秒,空闲5秒]
zabbix22 4670 1 0 14:55?00:00:00 zabbix_proxy -c /home/zabbix22/zabbix_proxy.conf
zabbix22 4673 4670 0 14:55?00:00:00 zabbix_proxy:配置syncer [synced config 15251 bytes in 0.111861 sec,idle 60 sec]
zabbix22 4674 4670 0 14:55?00:00:00 zabbix_proxy:心跳发送者[发送心跳消息成功0.013643秒,空闲30秒]
zabbix22 4688 4670 0 14:55?00:00:00 zabbix_proxy:icmp pinger#1 [在1.811128秒获得1个值,闲置5秒]
zabbix22 4690 4670 0 14:55?00:00:00 zabbix_proxy:管家[已删除9870条记录在0.233491秒,闲置3599秒]
zabbix22 4701 4670 0 14:55?00:00:08 zabbix_proxy:http poller#2 [得到1值0.024105秒,空闲1秒]
zabbix22 4707 4670 0 14:55?00:00:00 zabbix_proxy:history syncer#4 [处理0值,0触发0.000039秒,空闲1秒]
zabbix22 4738 1 0 14:55?00:00:00 zabbix_agentd -c /home/zabbix22/zabbix_agentd.conf
zabbix22 4739 4738 0 14:55?00:00:00 zabbix_agentd:收藏家[闲置1秒]
zabbix22 4740 4738 0 14:55?00:00:00 zabbix_agentd:监听器#1 [等待连接]
zabbix22 4741 4738 0 14:55?00:00:00 zabbix_agentd:监听者#2 [处理请求]

主要过程是一个例外。而不是当前活动,显示原始命令行。这有助于区分具有多个Zabbix实例的系统上的进程。

Microsoft Windows未实现此功能。

如果日志记录级别设置为DebugLevel = 4,则这些活动和统计信息也会写入日志文件。

本文章来源于官网非原创文章

–马国宾 qq 2461375381

猜你喜欢

转载自blog.csdn.net/weixin_40460419/article/details/88688495