qmya00 发表于 2019-1-22 06:47:34

Zabbix的使用经验

  Zabbix的使用经验
  文中谈到的zabbix的版本为:zabbix1.6.3
  1.监控面板页面上的"最新的20条信息"框中,如果想要显示超出20条的话,该如何设置呢,修改blocks.inc.php文件里相应的值.
  


[*]# vi /www/zabbix/include/blocks.inc.php
[*]
  

  491行
  


[*]$result = DBselect($sql,20);
  

  将数值20改为您想要的数值就可以了.
  2. 在监控面板页面上的"系统状态" 框中,会显示出有故障的机器数量,默认的值是只显示30,当监控的机器数量过多时,如果同一框中出现了不止30台故障机的话,那么它默认将只显示30台的数量,超过的将不显示了,这时你就无法判断有多少台同一问题的故障机了.应该如何让它显示更多的呢?方法和上面差不多,如下:
  


[*]# vi /www/zabbix/include/blocks.inc.php
[*]
  

  274 行
  


[*]$result = DBselect($sql,30);
  

  将数值30改为您想要的数值就可以了.
  

  随着线上zabbix系统运行的时间越长,zabbix的数据库也在逐渐增大,这时我们会发现,越到后面,备份数据库时间就花的越长.特别是上千台机器的情况,
  然而在大数据量的备份过程中,经常会出现检测数据延迟,导致检测出错,产生不必要的误报.为了不产生误报,只能停止zabbix_server服务,进行备份.如果恰巧在这段时间,线上的应用服务器出现了故障,将不能及时发现与处理故障.
  如何才能实现快速的备份zabbix数据库,而且可以在不停止服务的情况下完成备份呢?
  其实zabbix数据库里面最大的表,就是历史记录的表了, 这些表中的数据,全都存储着之前所检测到的历史数据.所以,现在就很清楚了,你可以选择清空这些表,这样做的话,所有客户端的历史检测数据,都会被清空,空间自然就小了,
  如果你不想失去这些数据的话,那么也可以在备份数据库的时候,选择不备份这几张表.或是只备份这几张表的表结构,里面的数据不做备份.选择哪一种,可以根据实际情况而定.
  下面的操作是清空历史数据的表,主要就是以下这几张表,清空后,备份一下数据库,只要不到三分钟的时间,就可以搞定了.....
  


[*]use zabbix;
[*]
[*]truncate table history;
[*]
[*]optimize table history;
[*]
[*]truncate table history_str;
[*]
[*]optimize table history_str;
[*]
[*]truncate table history_uint;
[*]
[*]optimize table history_uint;
[*]
[*]truncate table trends;
[*]
[*]optimize table trends;
[*]
[*]truncate table trends_uint;
[*]
[*]optimize table trends_uint;
[*]
[*]truncate table events;
[*]
[*]optimize table events;
[*]
  

  (注:此方法在1.6.3版本上应用正常,其它版本未做测试,如因此方法,丢失数据,本人概不负责,操作前切记,先备份数据库)


页: [1]
查看完整版本: Zabbix的使用经验