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