阿里P8架构师谈:高并发网站的监控系统选型、比较、核心监控指标
在高并發分布式環境下,對于訪問量大的業務、接口等,需要及時的監控網站的健康程度,防止網站出現訪問緩慢,甚至在特殊情況出現應用服務器雪崩等場景,在高并發場景下網站無法正常訪問的情況,這些就會涉及到分布式監控系統,對于核心指標提前監控,防患于未然。
常見的開源監控系統
1.Zabbix
Zabbix是一個基于WEB界面的提供分布式系統監控以及網絡監控功能的企業級開源運維平臺,也是目前國內互聯網用戶中使用最廣的監控軟件。
入門容易、上手簡單、功能強大并且開源免費。
Zabbix易于管理和配置,能生成比較漂亮的數據圖,其自動發 現功能大大減輕日常管理的工作量,豐富的數據采集方式和API接口可以讓用戶靈活進行數據采集,而分布式系統架構可以支持監控更多的設備。
2.Nagios
Nagios是一款開源的企業級監控系統,能夠實現對系統CPU、磁盤、網絡等方面參數的基本系統監控,以及 SMTP,POP3,HTTP,NNTP等各種基本的服務類型。另外通過安裝插件和編寫監控腳本,用戶可以實現應用監控,并針對大量的監控主機和多個對象 部署層次化監控架構。
Nagios最大的特點是其強大的管理中心,盡管其功能是監控服務和主機的,但Nagios自身并不包括這部分功能代碼,所有的監控、告警功能都是由相關插件完成的。
3.開源監控工具比較
4.建議首選Zabbix,免費開源監控首選,以下我主要以Zabbix為例,主要談監控流程和核心監控指標。
Zabbix監控流程
Zabbix的監控流程可以簡單描述為:
數據采集–>數據存儲–>數據分析–>數據展示–>監控報警
Zabbix的監控配置流程可以簡單描述為:
告警是由一系列的流程組成,首先是觸發器達到閥值,產生一個事件,接下來由Action對事件信息進行處理,其中包括兩部分:
Host groups(主機組)→Hosts(主機)→template(模板)→Applications(監控項組)→Items(監控項)→graph(圖形) →screen (圖形分組)→Triggers(觸發器)→Event(事件)→Actions(處理動作)→Media types(告警升級|1.執行遠程命令2.發送告警郵件)→User groups(用戶組)→Users(用戶)→Medias(告警郵件)
在實際生產使用的時候,Items、Trigger、Graph采用模板來進行監控,模板特點就是可以重復的事情一次完成,修改了模板等于修改了所有調用此模板的主機。
Zabbix監控功能
1.監控指標
- 主機的性能監控
- 網絡設備性能監控
- 數據庫性能監控
- 多種告警方式
- 詳細的報表圖表繪制
- 監控主機zabbix有專用的agent,可以監控Linux,Windows,FreeBSD等 。
- 監控網絡設備zabbix通過SNMP,ssh(不多用)
2.可監控對象
- 設備:服務器,路由器,交換機
- 軟件:OS,網絡,應用程序
- 主機性能指標監控
- 故障監控: down機,服務不可用,主機不可達
3.基礎監控數據
主要包括以下幾個類別:
- CPU
- Load
- 內存
- 磁盤
- IO
- 網絡相關
- 內核參數
- ss 統計輸出
- 端口采集
- 核心服務的進程存活信息采集
- 關鍵業務進程資源消耗
- NTP offset采集
- DNS解析采集
對于這些基礎監控選項全部理解透徹的時刻,也就是對Linux運行原理及命令進階的時刻。
4.JVM監控
對于Java作為主要開發語言的大多數公司,對于JVM的監控不可或缺。
每個JVM應用的參數,比如:
- GC
- 類加載
- JVM內存
- 進程
- 線程等
而這些參數的獲得,都可以通過MxBeans實現。
5.mysql四大性能指標
- 查詢吞吐量
- 查詢執行性能
- 連接情況
- 緩沖池使用情況
6.業務應用監控
對于業務需要監控的接口,比如響應時間等。
你可能也喜歡:
總結
以上是生活随笔為你收集整理的阿里P8架构师谈:高并发网站的监控系统选型、比较、核心监控指标的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 会议交流|大模型与图学习等知识图谱相关技
- 下一篇: 论文浅尝 | 基于潜在类别信息的实体链接