zabbix 性能優化

Zabbix 安裝好就放在那無論了,覺得不須要調優。直到最近出現了以下一堆告警。mysql

zabbix 性能優化

描述下咱們的環境sql

硬件:8核 32G 數據庫

軟件:Centos7.6 Zabbix4.0、Httpd2.四、PHP7.三、MySQL5.6緩存

出現告警時,查看系統資源使用率並不高。猜想是 Zabbix-Server 的配置問題,修改以下配置,已去掉不相關安全

# 本機經過socket鏈接更快
DBSocket=/home/work/mysqldata/data/mysql.sock
# 輪詢進程的初始實例數量。默認5
StartPollers=30
# 不可達主機 (包括IPMI 和 Java)的輪詢進程的初始實例數量。默認1
StartPollersUnreachable=20
# trappers進程實例數量。Trappers接受來自Zabbix發送者、主動agents和主動proxies的傳入鏈接。默認5 
StartTrappers=15
# 自動發現子進程實例個數。默認1
StartDiscoverers=5
# HTTP 輪詢器子進程實例個數。默認1
StartHTTPPollers=5
#Zabbix 執行 housekeeping 的頻率 (單位爲小時)。housekeeping負責從數據庫中刪除過時的信息。默認1
HousekeepingFrequency=24
#Zabbix 緩存更新頻率, 單位秒。默認60
CacheUpdateFrequency=180
# 歷史緩存數據大小, 單位字節.存儲歷史數據。默認8
HistoryCacheSize=64M
# 歷史索引緩存大小, 單位字節.
# 用於索引歷史緩存中歷史數據的共享內存大小.
#緩存一個item大概須要索引的大小爲100字節.item表明一個監控項,按照100000個監控項來算:100000*100/1024/1024=9.6M
HistoryIndexCacheSize=10M
# 歷史數據緩存大小, 單位bytes.
# 緩存item歷史數據請求的共享內存大小.
# 0即禁止緩存 (不建議).
# 當緩存大小超過共享內存時,每5分鐘會向服務器日誌寫入一條警告信息.
ValueCacheSize=128M

以上是Zabbix層面的優化,若是是系統資源不足,則要考慮以下幾個層面。性能優化

服務器硬件 服務器

想經過幾個簡單的配置讓服務器提升成倍的性能,想法很好,可是基本不太現實。簡單的說,你須要搭配更好的CPU、更大的內存,更快的硬盤:條件容許的花,能夠考慮購買SSD,它比更大的cpu和更大的內存帶來的效果更好,或者考慮使用SAS 15K硬盤,組raid等等,總之一句話,配置優化不動的狀況,增長硬件投入,別絞盡腦汁搜索:zabbix如何優化之類的文章,你在浪費時間。app

操做系統socket

使用最新的操做系統,優化、定製化操做系統內核。應該會有些做用,可是確定不大。tcp

數據庫優化

DBsock優化

若是MySQL和zabbix server在同一臺服務器上,socket鏈接要比tcp鏈接要更快。

數據庫分離

將數據庫服務器獨立,數據庫和zabbix資源互相獨立,例如:能夠購買一臺RDS

數據庫引擎

使用MySQL5.6或者更高版本,自從MySQL被Oracle收購了,它的性能確實有很多的提高。請必定選擇innodb,別選擇myisam,由於zabbix在innodb的性能比在myisam快1.5倍,並且myisam不安全,zabbix監控數據量很大,一旦表壞了,那就是一個悲劇。

mysql分區,history等等表數據量較大,能夠試着分區替身性能。

其餘優化

一、減小history保存時間

二、減小item獲取間隔時間

三、減小沒必要要的監控項

相關文章
相關標籤/搜索