zabbix3 4 14歷史資料寫入es

2022-04-10 20:57:40 字數 2777 閱讀 9091

zabbix在3.4.5版本後開始支援將歷史資料寫入es;其實就是將zabbix 5張歷史表的資料寫入es的5個索引,字段還是一樣的;

mysql表和es索引的對應關係如下:

配置其實很簡單,以下是我按照順序寫一遍

1,配置zabbix server配置檔案

開啟配置檔案,3.4.5版本後的zabbix多了配置es的兩個引數,新增上;

2, 配置zabbix前端檔案

新增$history['url'] = 'http://es_ip:9200';

$history['types'] = ['str', 'text', 'log', 'uint', 'dbl'];

前面修改為 

global $db , $history;

示例如下

3 , 建立es索引

共建立uint,dbk,str,log,text5個索引

}}'5 , 去kibana上建立索引

登入到kibana,建立如上兩個索引,時間過濾字段這個地方寫clock,kibana會提示的

6,此時重啟zabbix server,zabbix web(httpd)

7, 稍等去kibana上和zabbix web上看新的資料是否正常

8,期間踩了兩個坑

1,我是從zabbix 3.0公升級過來的,作業系統是centos 6.7,公升級後改完配置啟動報錯

cannot initialize history storage: curl library support >= 7.28.0 is required for elasticsearch history backend

curl -v看了下,版本是7.19比較低,要公升級,然後yum,rpm,編譯安裝都試了,curl版本看著也公升級上來了,但是啟動server還是報錯,網上說重新編譯安裝zabbix server即可,不過我是yum安裝的,嘗試重新yum安裝了一次,還是報錯。

只好重新搭建了一台centos7.x,其系統自帶的curl版本是7.29,滿足要求,然後安裝相同版本的zabbix server,把配置都倒過去。啟動,ok。

2,如果第3步在歷史資料已經開始寫入後再建立索引的話;也就是先配置好zabbix,啟動後,資料會開始寫入es,這時候再按照上述方法建立索引,就會報錯,索引已經存在了,必須先stop zabbix,把這5個索引手動刪了,再按照第三步執行才行

3,如果不按照3步建立索引的話,再es上寫入的資料中的clock是unix時間,kibana不會像上面圖中那樣展示,zabbix web也不會有資料顯示

4, 補充下,歷史資料寫入es的話,除了5個history表不再寫入新資料,兩個trends表也不再寫入新資料。 

mysql 刪除 zabbix歷史資料

zabbix伺服器報警 zabbix housekeeper processes more than 75 busy 原因分析說明 處理方法 vim etc zabbix zabbix server.conf housekeepingfrequency 12 原值是每一小時清理一次,建議改為12或2...

zabbix歷史資料相關表研究

history和trends相關表 history和trends都是儲存歷史資料的地方。一般是通過監控項 item 配置裡 匹配更新監控項 item 和設定housekeeper tasks來設定保留資料的時長。housekeeper 會定期刪除過期的資料。如果不是特別有意義,建議你把保留時間設定短...

歷史資料轉移

作用 歷史資料轉移 兩種方法 方法1.重建表 方法2.歷史資料匯入其他表 李海軍 2009.11.12 方法1.重建表 exec sp rename taga talkin record back taga talkin record back delafter3mon 修改表名 grant all...