指標指用于描述一個物體或事物的某個性質的指數、規格、標準,使其可以和其他的物體或者事物比較;從軟件的角度講度量即把所有東西都量化、數據化、可采集。指標即表示對這些量化后的數據的目標值。
觀測指標體系是指對監控指標進行體系化的規劃、實現全生命周期管理、建設管理規范等的系統方法論。
在了解指標體系前,先了解下為什么需要進行指標體系的建設,結合過往的建設經驗,主要有以下六個方面的原因:
經過嘉為藍鯨多年的項目積累,對于指標管理體系的總結如下圖。
基于圖中的內容,接下來將詳細介紹如何進行指標體系建設和設計。
01. 指標管理閉環
指標全生命周期管理,包含指標定義、指標評估、指標上線、指標運營四個階段。
1)指標定義
2)指標評估
3)指標上線
4)指標運營
02. 指標管理規范
1)指標設計原則
2)指標分級規范
指標本身一般分三級,按重要程度區分:核心指標(生死指標)、關鍵指標(告警指標)和常規指標(分析指標)。
核心指標一定要配置告警基線,關鍵指標建議配置,而常規指標可以按業務場景考慮是否配置。后續通過不同指標的分級、權重,便可以很容易地建設起企業內的應用健康評估模型,衡量整個應用的健康情況。
3)指標命名規范
核心是可視可讀,定義統一的指標命名規則,如包含編號的長度限制、編碼的構成、各組成部分的具體含義等。
命名示例:
(1) 組件名_指標獲取方式_指標分類_指標描述:
nginx_exporter_cachezone_max_size
(2) 系統名_插件獲取方式_指標描述:
blueking_script_host_num
4)指標數據規范
指標數據規范,支撐上層場景實現的基石,定義需要謹慎,下面提供兩種常見的指標數據格式規范供參考。
① JSON格式示例
② Prometheus Metrics 標準格式
03. 指標分層體系
從企業業務應用的全面管理視角出發,通常將監控體系劃分為六個核心層級,以全面覆蓋并優化企業的IT架構。這些層級依次為:基礎設施層、硬件設備層、操作系統層、組件服務層、應用性能層、業務運營層。當然,企業也可以根據自身的實際情況和特定需求,對上述監控層級進行靈活調整或定制。
1)基礎設施層
基礎設施層,指機房的基礎設施配備,用于保證機房的正常運轉,包含動力、環境、安防等設備。
動力主要包含供電系統、發電機、UPS電源等電力供應設備,核心關注電力的狀態、容量、電壓、電流、穩定性、頻率等指標。
環境主要包含溫濕度計、空調、通風等環境監測和調節設備,核心關注環境設備的運行狀態、環境溫度、濕度等指標
安防主要包含視頻攝像頭、門禁、煙霧探測器、消防設備等安全防護設備,核心關注設備的運行狀態、視頻穩定性、門禁狀態等指標。
該層設備的監控指標主要通過IOT傳感器結合接口/SNMP協議以及HTTP接口的方式進行監控。
2)硬件設備層
硬件設備層,指服務器、存儲、網絡、安全四類常見硬件設備對象,用于提供應用運行所需的硬件資源。
服務器設備主要包含X86服務器、小機、大機等計算資源設備,隨著分布式計算技術的普及,小機、大機這種性能超強的專用機器逐漸淘汰,X86服務器成為當下主流;核心關注服務器的電源、CPU、內存、磁盤、風扇等配件的工作狀態和性能指標。服務器主要通過IPMI、Redfish、SNMP幾種協議以及HTTP接口的方式進行監控。
存儲設備主要包含磁盤陣列、磁帶庫、存儲交換機等存儲資源設備,隨著虛擬存儲的技術的出現,專用而昂貴的存儲設備逐漸減少,取而代之的是廉價的服務器設備配合大量的硬盤通過虛擬化技術提供的存儲資源;核心關注存儲設備的容量、IOPS、運行狀態、讀寫速率等指標。存儲設備主要通過SNMP、SMI-S、SSH協議以及HTTP接口的方式進行監控。
網絡設備主要包含交換機、路由器、負載均衡等網絡資源設備;核心關注網絡設備的運行狀態、端口狀態、端口流量、吞吐量、錯誤包、丟包率等指標。網絡設備主要通過SNMP協議進行監控。
安全設備主要包含防火墻、入侵檢測設備、防病毒設備、加密機等;核心關注安全設備的運行狀態、接口狀態、速率、丟包數、網絡攻擊數等指標。安全設備主要通過SNMP、SSH協議以及HTTP接口的方式進行監控。
3)操作系統層
操作系統層,除了包含傳統意義上的各類操作系統之外,虛擬化、容器也納入該層,虛擬化、容器本質上也是由操作系統驅動而提供的一種資源服務,如有需要,可單獨劃分虛擬化層。
操作系統主要包含Windows Server、Linux系的CentOS、RHEL、Suse、Ubuntu、AIX、HP-Unix等服務器操作系統;核心關注CPU使用率、內存使用率、磁盤使用率、磁盤IO速率、網卡流量等指標。操作系統主要通過Agent/插件的方式調用系統接口(例如WMI)或者內置命令行/文件進行監控。
虛擬化主要包含VMware、OpenStack、KVM、Citrix等虛擬化平臺;核心關注平臺主機、集群、存儲的狀態和資源容量、資源數、配額等指標。虛擬化主要通過HTTP接口的方式進行監控。
容器監控主要指K8s容器管理平臺的監控;核心關注Cluster、Node、Container、Service、Workload等資源的狀態、CPU負載、內存使用、磁盤使用、網絡流量等指標。容器平臺主要通過HTTP接口(ServiceMonitor)的方式進行監控。
4)組件服務層
組件服務層,一般指數據庫、中間件及其運行進程等軟件資源對象,部分監控系統經常將進程歸屬于操作系統監控,或者獨立進行監控,反映的都是進程本身的狀態,但是進程本質是各種數據庫、中間件軟件資源服務化的表現形式,應當隸屬于資源實例監控的一部分。
數據庫主要包含企業常用的各種關系型數據庫MySQL、Oracle、MSSQL等,以及非關系型數據庫MongoDB、Redis、InfluxDB等;核心關注的是數據庫的連接數、讀寫速率、鎖、索引命中率、連接數等指標。數據庫主要通過數據庫的Client/命令行或者通用的JDBC/ODBC協議執行SQL的方式或者自帶的監控接口進行監控。
中間件主要包含Web中間件、消息中間件兩種,例如WebLogic、Was、Tomcat、kafka、RabbitMQ等,其他的還有配置中間件、分布式事務、任務調度中間件等;核心關注的是中間件的吞吐量、連接數、JVM性能等指標。中間件主要通過中間件的自帶的命令行工具或者通用的JMX協議或者自帶的接口進行監控。
一般只有數據庫、中間件或者應用本身的進程才會進行監控,進程監控核心關注進程狀態、端口狀態、進程的性能使用率等指標。進程主要通過Agent/插件的方式調用系統接口(例如WMI)或者命令行進行監控。
5)應用性能層
應用性能層,包含應用系統服務端和客戶端兩個方面,其中服務端主要指調用鏈,客戶端主要包含移動端APP、PC端Web頁面。
對于服務端的調用鏈,核心關注可用率、錯誤率、響應時間、吞吐率等關鍵性能指標。主要通過Traces調用鏈的方式進行監控。
對于客戶的移動端APP和PC端的Web頁面,核心關注瀏覽量、請求數、首屏時間、渲染時間、可用率、響應時間等關鍵性能指標。主要通過安卓/蘋果的SDK以及JS的SDK進行監控。
另外,對于應用和服務的基礎探測,也可以采用協議撥測的方式來實現,此時主要關注網站或接口的撥測可用率、撥測響應時間。主要通過HTTP/TCP/UDP協議通過撥測進行監控。
6)業務運營層
業務運營層,主要指業務系統中的業務數據的監控,需要根據業務系統的特點來進行梳理,常見的業務系統主要關注交易量、交易耗時、庫存量、用戶數、活躍用戶數、在線用戶數等業務核心指標。主要通過HTTP接口、數據庫SQL、腳本、日志提取等方式進行監控。
以上便是指標管理體系的全部內容,但是指標的管理不僅僅是指標體系內容建立,還包括指標的管理規范和治理。不僅僅需要觀測工具的承載,還需要相應的配套工具,如CMDB的建設,提供數據治理,對象管理等能力;ITSM流程系統,保障指標管理過程中的流程規范,保障順利完成整個落地過程。
申請演示
主站蜘蛛池模板: 湘潭县| 高青县| 巴林左旗| 元氏县| 金乡县| 达州市| 邹城市| 沽源县| 彭山县| 永善县| 师宗县| 乌审旗| 囊谦县| 宁国市| 乌苏市| 苍山县| 英吉沙县| 邵武市| 黎城县| 巴塘县| 额尔古纳市| 桂平市| 大化| 防城港市| 特克斯县| 谢通门县| 南开区| 财经| 文化| 大冶市| 松江区| 柏乡县| 铜山县| 乐山市| 翼城县| 余庆县| 德令哈市| 林芝县| 逊克县| 青海省| 房山区|