選擇合適的監(jiān)控方式
一個好的監(jiān)控系統(tǒng),對于 IT 團(tuán)隊來說是舉足輕重的,當(dāng)服務(wù)器發(fā)生異常時,監(jiān)控系統(tǒng)能很好地幫助運(yùn)維人員及時發(fā)現(xiàn)和處理問題,從而降低業(yè)務(wù)的中斷中間。本小節(jié)我們一起來學(xué)習(xí)如何選擇合適的監(jiān)控方式。
1. 常見的監(jiān)控方式
一般來說,常見的監(jiān)控方式主要有如下三種:
- 工具/腳本;
- 商業(yè)產(chǎn)品;
- 開源產(chǎn)品;
監(jiān)控方式 | 特點(diǎn) | 優(yōu)點(diǎn) | 缺點(diǎn) |
---|---|---|---|
工具/腳本 | 自己編寫工具或腳本,適合初期機(jī)器很少的生產(chǎn)環(huán)境 | 在企業(yè)初期可以快速滿足監(jiān)控需求 | 后期部署和維護(hù)成本大 |
商業(yè)產(chǎn)品 | 可以快速搭建一套成熟的監(jiān)控平臺,有非常專業(yè)酷炫的監(jiān)控大屏 | 功能強(qiáng)大,有技術(shù)支持,見效快 | 成本高昂,擴(kuò)展性也較差 |
開源產(chǎn)品 | 免費(fèi)產(chǎn)品,可以滿足大部分的監(jiān)控場景 | 成本很低,定制能力強(qiáng),自主可控 | 需要一定的開發(fā)能力 |
現(xiàn)在主流的做法是,選擇開源產(chǎn)品,從簡單的場景入手,先上線實(shí)施,觀察效果。后面再根據(jù)實(shí)施效果,不斷優(yōu)化開源產(chǎn)品。
2. 主流開源監(jiān)控產(chǎn)品
主流開源監(jiān)控產(chǎn)品的代表是 Zabbix 和 PMM,下面分別對這兩個開源產(chǎn)品進(jìn)行介紹。
2.1 Zabbix
Zabbix是一個企業(yè)級的高度集成開源監(jiān)控軟件,提供分布式監(jiān)控解決方案,可以用來監(jiān)控設(shè)備、服務(wù)等的可用性和性能,由國外團(tuán)隊進(jìn)行維護(hù)以及持續(xù)更新源碼,可以自由下載,是一個真正的源代碼開放產(chǎn)品。
Zabbix的通用架構(gòu)是C/S架構(gòu),通過B/S在web端進(jìn)行展示和配置,分布式架構(gòu)為Client/Proxy/Server,Zabbix-Server將采集到的數(shù)據(jù)持久地存儲到數(shù)據(jù)庫中。
Zabbix數(shù)據(jù)的采集不僅可以使用Agent方式,也可以使用SNMP、SSH、Telent、IPMI等多種協(xié)議。
Zabbix的主要特點(diǎn):
- 安裝配置簡單;
- 免費(fèi)開源,試錯成本低;
- 支持多語言;
- 自動發(fā)現(xiàn)服務(wù)器;
- 分布式監(jiān)控;
- 集中式web管理;
- 郵件、微信等通知功能。
Zabbix 的新版本 5.0,可以支持 proxy/server 端通過 odbc 連接 MySQL 進(jìn)行采集監(jiān)控數(shù)據(jù),所有的配置在web端都可以完成,而且有現(xiàn)成的完善的監(jiān)控模板,使用起來非常簡單高效。
2.2 PMM
Percona Monitoring and Management (PMM) 是 percona 公司一款開源的用于管理和監(jiān)控 MySQL、PostgreSQL、MongoDB 以及 ProxySQL 性能的開源平臺,通過第三方軟件 Grafana 將 DB 監(jiān)控數(shù)據(jù)展示出來。PMM 可以幫助你降低數(shù)據(jù)庫環(huán)境的復(fù)雜性,提升 DB 性能和安全性,是非常流行的開源數(shù)據(jù)庫監(jiān)控方案。
PMM主要包括兩個部分:
- PMM client:部署在每臺數(shù)據(jù)庫主機(jī)上,采集服務(wù)器,數(shù)據(jù)庫和慢 SQL 等監(jiān)控數(shù)據(jù);
- PMM Server:PMM 的核心部分,匯集數(shù)據(jù)并 web 界面中展示監(jiān)控數(shù)據(jù)。
PMM 的架構(gòu)如下圖:
3. 小結(jié)
本小節(jié)主要介紹了三種監(jiān)控方式的異同點(diǎn),以及常見的開源產(chǎn)品 Zabbix 和 PMM 的介紹。
目前的主流方案是選擇開源產(chǎn)品,快速上線,優(yōu)先滿足簡單場景,再不斷優(yōu)化升級。對于 MySQL 的監(jiān)控來說,Zabbix 和 PMM 都是非常不錯的開源產(chǎn)品。