




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
前言企業(yè)基本都有自己的IT系統(tǒng),而每個IT系統(tǒng)都有自己的監(jiān)控系統(tǒng)。企業(yè)級的IT應(yīng)用監(jiān)控架構(gòu)是一種綜合性的解決方案,涉及到很多層級和相應(yīng)的工具。隨著企業(yè)IT系統(tǒng)的規(guī)模和復(fù)雜程度的不斷增加,監(jiān)控和管理系統(tǒng)也面臨著越來越大的挑戰(zhàn)。大家有時在建立監(jiān)控時,不知道從何處入手;有時建立監(jiān)控系統(tǒng)后,發(fā)現(xiàn)很多的盲點(diǎn)無法監(jiān)控到。監(jiān)控是IT運(yùn)維系統(tǒng)中至關(guān)重要的一環(huán),所以針對以上問題,本文將分享IT應(yīng)用運(yùn)維監(jiān)控的基本原理、通用監(jiān)控體系和應(yīng)用場景、監(jiān)控平臺設(shè)計、智能監(jiān)控的實(shí)現(xiàn)方法等方面的內(nèi)容,以期對企業(yè)IT系統(tǒng)的監(jiān)控和管理提供一定的幫助。1.監(jiān)控原理企業(yè)級IT應(yīng)用運(yùn)維監(jiān)控架構(gòu)的基本原理是通過收集、存儲、分析和展示各種監(jiān)控數(shù)據(jù),對企業(yè)IT系統(tǒng)進(jìn)行全面的監(jiān)控和管理。其中,監(jiān)控數(shù)據(jù)包括系統(tǒng)、網(wǎng)絡(luò)、應(yīng)用等各種指標(biāo)數(shù)據(jù)、事件數(shù)據(jù)和日志數(shù)據(jù)等,可以通過各種數(shù)據(jù)采集器進(jìn)行收集。收集到的數(shù)據(jù)可以存儲在分布式數(shù)據(jù)庫、NoSQL數(shù)據(jù)庫或者數(shù)據(jù)倉庫等存儲系統(tǒng)中,并通過數(shù)據(jù)分析和處理,將其轉(zhuǎn)化為可視化的監(jiān)控指標(biāo),并通過儀表盤、圖表、報表等形式進(jìn)行展示。同時,還可以通過警報系統(tǒng)對監(jiān)控數(shù)據(jù)進(jìn)行實(shí)時監(jiān)測和告警,以及通過自動化運(yùn)維等手段對IT系統(tǒng)進(jìn)行自動化管理和優(yōu)化。2.監(jiān)控層次一般來說,有IT系統(tǒng)的地方都必須有監(jiān)控,不同企業(yè)IT系統(tǒng)分布不一樣。有的企業(yè)有大量的邊緣系統(tǒng),比如:電腦,工控機(jī)等;有的企業(yè)有自己的IDC機(jī)房,而自己的IT系統(tǒng)建立在IDC機(jī)房內(nèi);有的企業(yè)把自己的IT系統(tǒng)建立在公有云上;又有的企業(yè)建立的混合云架構(gòu),IDC機(jī)房和公有云兼而有之。IT監(jiān)控系統(tǒng)是依附在之上的,對于邊緣系統(tǒng),有類似于IOT的物聯(lián)網(wǎng)監(jiān)控系統(tǒng);IDC機(jī)房有網(wǎng)絡(luò)設(shè)備的監(jiān)控系統(tǒng)(這一般由網(wǎng)絡(luò)供應(yīng)商提供);公有云上的系統(tǒng)由云商提供完整的監(jiān)控系統(tǒng),比如:AWS上的cloudwatch;如果有混合云的架構(gòu),那就需要由監(jiān)控系統(tǒng)建設(shè)團(tuán)隊(duì)把云上云下的監(jiān)控系統(tǒng)做融合提供統(tǒng)一的監(jiān)控。以上的這些監(jiān)控是從系統(tǒng)角度進(jìn)行分類的,做的是系統(tǒng)監(jiān)控,而本文討論的是,如何從應(yīng)用運(yùn)維的角度來進(jìn)行層次劃分。2.1APIs監(jiān)控APIs(應(yīng)用程序編程接口)監(jiān)控,又稱為前端監(jiān)控,是指對APIs的使用情況、性能、安全性等進(jìn)行實(shí)時監(jiān)控和管理的過程。通常包括:A.使用情況監(jiān)控:監(jiān)控APIs的調(diào)用情況、使用頻率、錯誤率等,以便了解APIs的使用情況和流量狀況。B.性能監(jiān)控:監(jiān)控APIs的響應(yīng)時間、延遲、吞吐量等性能指標(biāo),以便及時發(fā)現(xiàn)APIs的性能問題和瓶頸。C.安全監(jiān)控:監(jiān)控APIs的安全性,包括身份驗(yàn)證、授權(quán)、訪問控制等,以保護(hù)APIs免受安全威脅。D.錯誤監(jiān)控:監(jiān)控APIs的錯誤情況,包括錯誤類型、錯誤代碼、錯誤頻率等,以便及時發(fā)現(xiàn)和解決APIs的錯誤問題。為了實(shí)現(xiàn)APIs監(jiān)控,通常需要使用一些專門的工具和平臺:A.APIs監(jiān)控工具:如:Pingdom、Datadog,通過收集、分析和可視化APIs的使用情況、性能、安全性和錯誤情況,以幫助開發(fā)人員和運(yùn)維人員監(jiān)控和管理APIs。B.APIs管理平臺:如Tingyun、Instana、Runscope,通過管理APIs的生命周期、版本控制、文檔生成等,以確保APIs的穩(wěn)定性和可靠性。C.日志管理工具:如Splunk、ELK,通過收集、分析和可視化APIs的日志信息,以幫助用戶快速發(fā)現(xiàn)和解決APIs的問題和錯誤。圖一NetworkRequest監(jiān)控圖二InstanaAPIS監(jiān)控2.2應(yīng)用層監(jiān)控應(yīng)用層監(jiān)控是指對應(yīng)用程序的性能、可用性、安全性等進(jìn)行實(shí)時監(jiān)控和管理的過程。通常包括:A.應(yīng)用性能監(jiān)控:監(jiān)控應(yīng)用程序的性能指標(biāo),包括請求響應(yīng)時間、吞吐量、錯誤率飽和率等黃金四指標(biāo),以便及時發(fā)現(xiàn)應(yīng)用程序的性能問題和瓶頸。B.可用性監(jiān)控:監(jiān)控應(yīng)用程序的可用性,包括應(yīng)用程序的運(yùn)行狀態(tài)、訪問次數(shù)、錯誤率等,以保證應(yīng)用程序的正常運(yùn)行和可用性。C.安全監(jiān)控:監(jiān)控應(yīng)用程序的安全性,包括應(yīng)用程序的防火墻、入侵檢測、安全事件等,以保護(hù)應(yīng)用程序免受安全威脅,一般這是由安全團(tuán)隊(duì)負(fù)責(zé),運(yùn)維人員較少涉及。D.日志管理:收集、分析和可視化應(yīng)用程序的日志信息,以幫助用戶快速發(fā)現(xiàn)和解決應(yīng)用程序問題和異常情況。為了實(shí)現(xiàn)應(yīng)用層監(jiān)控,相對應(yīng)的工具和平臺:A.應(yīng)用性能監(jiān)控工具:通過監(jiān)控應(yīng)用程序的性能指標(biāo),以幫助用戶快速發(fā)現(xiàn)應(yīng)用程序的性能問題和瓶頸。B.可用性監(jiān)控工具:通過監(jiān)控應(yīng)用程序的運(yùn)行狀態(tài)和訪問次數(shù),以保證應(yīng)用程序的正常運(yùn)行和可用性。C.安全監(jiān)控工具:和APIs的監(jiān)控類似,主要由漏洞掃描工具,入侵檢測系統(tǒng)等工具構(gòu)成,比如應(yīng)用新上線的代碼中使用了一個第三方的工具,此工具有后門漏洞,就會被監(jiān)控到。D.日志管理工具:通過收集、分析和可視化應(yīng)用程序的日志信息,以幫助用戶快速發(fā)現(xiàn)和解決應(yīng)用程序問題和異常情況。應(yīng)用性能監(jiān)控工具和可用性監(jiān)控工具,Zabbix在服務(wù)器時代是不二之選,但是隨著kubernetes容器時代的到來,Zabbix漸漸淡出了,目前都以Exporter+Promethesu+Grafana,其中,Prometheus+Grafana就是為容器環(huán)境而生的。Exporter主要把關(guān)鍵的指標(biāo)數(shù)據(jù)以拋出,然后有prometheus采集并加入時序數(shù)據(jù)庫中,然后由Grafana展現(xiàn)。圖三GrafanaJVM應(yīng)用線程數(shù)監(jiān)控2.3資源層監(jiān)控資源層監(jiān)控是指對計算機(jī)系統(tǒng)的各種資源(如CPU、內(nèi)存、磁盤、網(wǎng)絡(luò)等)進(jìn)行實(shí)時監(jiān)控和管理的過程,這個不僅包括服務(wù)器,還包括容器,而對于容器集群,由于有了水平擴(kuò)展的資源調(diào)度,所以還包括容器的數(shù)量及其狀態(tài)的監(jiān)控。A.CPU監(jiān)控:監(jiān)控CPU的使用率、負(fù)載、溫度等指標(biāo),以便及時發(fā)現(xiàn)CPU的問題和瓶頸。容器環(huán)境也就是容器的CPUreqirement和limit值。B.內(nèi)存監(jiān)控:監(jiān)控內(nèi)存的使用率、空閑率、交換空間等指標(biāo),以保證系統(tǒng)具有足夠的內(nèi)存資源。容器環(huán)境也就是內(nèi)存的CPUreqirement和limit值。C.磁盤監(jiān)控:監(jiān)控磁盤的空間、I/O使用率、讀寫速度等指標(biāo),以保證系統(tǒng)磁盤的穩(wěn)定性和可靠性。容器環(huán)境也就是持久化存儲的空間監(jiān)控。D.網(wǎng)絡(luò)監(jiān)控:監(jiān)控網(wǎng)絡(luò)的帶寬、吞吐量、延遲等指標(biāo),以保證網(wǎng)絡(luò)的性能和可靠性。容器環(huán)境也就是進(jìn)出對應(yīng)容器組的網(wǎng)絡(luò)總流量。為了實(shí)現(xiàn)資源層監(jiān)控,通常需要使用一些工具和平臺,過去也是Zabbix為主,現(xiàn)在容器環(huán)境的不二之選就是Prometheus+Grafana,這是因?yàn)閗ubernetes內(nèi)Cadvise會主動提供關(guān)于容器的性能和狀態(tài)的指標(biāo)。對于服務(wù)器,我們可以利用NodeExporter+Prometheus+Grafana在Grafana中展示,當(dāng)然,也可以用Cloudwatch插件在Grafana中監(jiān)控。圖四GrafanaPodCPU和memory監(jiān)控圖五GrafanaPodsnumber監(jiān)控2.4鏈路層監(jiān)控鏈路層監(jiān)控是指對分布式系統(tǒng)中各個組件、模塊之間的交互過程進(jìn)行實(shí)時監(jiān)控和管理的過程。鏈路層監(jiān)控可以幫助用戶快速發(fā)現(xiàn)和解決應(yīng)用程序的問題和瓶頸,提高應(yīng)用程序的可靠性和性能。主要的開源工具就是skywalking,商業(yè)化工具有dynatrace和AppDynamics等,一般價格比較昂貴。這些工具一般有以下特點(diǎn):A.鏈路追蹤:這些工具可以對應(yīng)用程序請求的鏈路進(jìn)行追蹤,并記錄請求的每個環(huán)節(jié),包括請求的來源、目的、處理過程等。B.性能監(jiān)控:這些工具可以對請求的每個環(huán)節(jié)進(jìn)行性能監(jiān)控,包括請求響應(yīng)時間、請求吞吐量、請求錯誤率等指標(biāo),以幫助用戶快速發(fā)現(xiàn)和解決應(yīng)用程序的性能問題和瓶頸。C.依賴分析:這些工具可以分析應(yīng)用程序的依賴關(guān)系,包括服務(wù)之間的依賴、數(shù)據(jù)庫之間的依賴等,并對依賴關(guān)系進(jìn)行監(jiān)控和分析。D.飛行記錄:這些工具可以將請求的鏈路信息進(jìn)行記錄和存儲,以便后續(xù)的分析和查詢,同時也支持對請求鏈路的回放和重放,以幫助用戶深入分析和定位問題。圖六Skywalking鏈路追蹤監(jiān)控圖七Skywalking應(yīng)用依賴拓?fù)湔故?.5后端監(jiān)控后端監(jiān)控是指對應(yīng)用程序后端(如數(shù)據(jù)庫、緩存、消息隊(duì)列等)進(jìn)行實(shí)時監(jiān)控和管理的過程。數(shù)據(jù)庫監(jiān)控是后端監(jiān)控中的一個重要部分,主要是對數(shù)據(jù)庫的性能、可用性和安全性進(jìn)行監(jiān)控和管理,以保證應(yīng)用程序的正常運(yùn)行和穩(wěn)定性。后端監(jiān)控的也包括,性能監(jiān)控、可用性監(jiān)控、安全監(jiān)控、日志監(jiān)控等同應(yīng)用層監(jiān)控類似的監(jiān)控,除此之外,還包括特有的監(jiān)控選項(xiàng),如對于數(shù)據(jù)庫而言,還包括:A.連接數(shù)B.操作數(shù)C.緩存命中率D.鎖數(shù)E.復(fù)制集F.備份在公有云大行其道的今天,越來越多的企業(yè)把后端(數(shù)據(jù)庫,redis等)遷移到了公有云端,這些指標(biāo)公有云都會提供,我們所要做的是把這些指標(biāo)從公有云上引入到本地的Grafana上展示,比如:Grafana上有aws的cloudwatch插件,可以通過cloudwatch在本地grafana展示后端指標(biāo)。圖八GrafanaMongoDB重要指標(biāo)監(jiān)控2.6業(yè)務(wù)監(jiān)控業(yè)務(wù)監(jiān)控是指對應(yīng)用程序的業(yè)務(wù)功能進(jìn)行實(shí)時監(jiān)控和管理的過程,主要關(guān)注應(yīng)用程序的業(yè)務(wù)流程和業(yè)務(wù)指標(biāo),以保證應(yīng)用程序的業(yè)務(wù)功能的正常運(yùn)行和業(yè)務(wù)價值的實(shí)現(xiàn)。通常包括:A.業(yè)務(wù)流程監(jiān)控:對應(yīng)用程序的業(yè)務(wù)流程進(jìn)行監(jiān)控和管理,包括業(yè)務(wù)流程的狀態(tài)、業(yè)務(wù)流程的耗時、業(yè)務(wù)流程的成功率等。通過業(yè)務(wù)流程監(jiān)控,可以及時發(fā)現(xiàn)和解決業(yè)務(wù)流程的問題和瓶頸,提高業(yè)務(wù)流程的效率和可靠性。B.關(guān)鍵業(yè)務(wù)指標(biāo)監(jiān)控:對應(yīng)用程序的關(guān)鍵業(yè)務(wù)指標(biāo)進(jìn)行監(jiān)控和管理,包括業(yè)務(wù)量、轉(zhuǎn)化率、用戶滿意度等。通過關(guān)鍵業(yè)務(wù)指標(biāo)監(jiān)控,可以及時發(fā)現(xiàn)和分析業(yè)務(wù)指標(biāo)的異常情況,提高業(yè)務(wù)指標(biāo)的穩(wěn)定性和可靠性。C.用戶行為監(jiān)控:對應(yīng)用程序用戶的行為進(jìn)行監(jiān)控和管理,包括用戶的訪問量、訪問路徑、用戶行為的轉(zhuǎn)化率等。通過用戶行為監(jiān)控,可以及時了解用戶的需求和行為模式,從而優(yōu)化應(yīng)用程序的用戶體驗(yàn)和業(yè)務(wù)流程。業(yè)務(wù)監(jiān)控通常要和日志監(jiān)控和后端監(jiān)控結(jié)合,要從后者中取得業(yè)務(wù)相關(guān)的數(shù)據(jù)用于展示:圖九Grafana業(yè)務(wù)監(jiān)控2.7運(yùn)維能力的監(jiān)控SLA(ServiceLevelAgreement)、SLO(ServiceLevelObjective)和SLI(ServiceLevelIndicator)是衡量運(yùn)維能力指標(biāo)的重要指標(biāo)。SLA是一種衡量客戶服務(wù)質(zhì)量的協(xié)議,SLO和SLO是一種衡量所運(yùn)維的系統(tǒng)可靠性是否達(dá)標(biāo)的指標(biāo)。這方面的監(jiān)控一般需要設(shè)立ErrorBudget,也就是在一定時間內(nèi)(通常為2周)偏離目標(biāo)的數(shù)值。一般包括:A.如果是乙方運(yùn)維,和甲方在協(xié)議中約定了不同等級的故障響應(yīng)時間的SLA,可以加入對SLA的Errorbudget監(jiān)控。B.如果是甲方運(yùn)維,對自身進(jìn)行KPI考核的,可以加入對主要性能或可用性指標(biāo)的Errorbudget監(jiān)控。這樣做的目的,是控制好運(yùn)維的節(jié)奏,如果ErrorBudget還很多,那么我們就可以對生產(chǎn)系統(tǒng)做比較激進(jìn)的操作;反之,ErrorBudget偏少或在短期內(nèi)已經(jīng)消耗殆盡或已經(jīng)超出了,那么就是減少運(yùn)維操作,以較少發(fā)生更多故障的可能。3.監(jiān)控大盤與合成監(jiān)控指標(biāo)如此之多的監(jiān)控項(xiàng)一直被詬病,這看一遍都費(fèi)力,怎么能做到實(shí)時監(jiān)控呢?這個問題的解決就要依賴監(jiān)控大盤了,目前市場上沒有統(tǒng)一的監(jiān)控大盤的工具軟件,畢竟每個公司的業(yè)務(wù)太不相同了,而且監(jiān)控的投入也不一樣,所以要生成監(jiān)控大盤的軟件過于復(fù)雜。目前基本上都是每家企業(yè)自行開發(fā)的。圖十監(jiān)控大盤挖掘設(shè)計既然,監(jiān)控指標(biāo)太多了,我們就要對其合成,于是合成監(jiān)控指標(biāo)就誕生了。合成監(jiān)控指標(biāo)是指通過對多個監(jiān)控指標(biāo)進(jìn)行組合和計算得到的綜合性指標(biāo),用于判斷應(yīng)用程序的整體健康狀況和性能狀況。合成監(jiān)控指標(biāo)通常是由多個單獨(dú)的指標(biāo)組合而成,可以反映出應(yīng)用程序的整體性能和健康狀況。合成監(jiān)控指標(biāo)的計算方式可以根據(jù)具體情況而定,常見的計算方式包括以下幾種:A.平均值:對多個指標(biāo)的平均值進(jìn)行計算,如請求響應(yīng)時間的平均值、服務(wù)器負(fù)載的平均值等。B.加權(quán)平均值:對多個指標(biāo)的加權(quán)平均值進(jìn)行計算,根據(jù)不同指標(biāo)的重要性為其分配權(quán)重,如請求響應(yīng)時間和服務(wù)器負(fù)載的加權(quán)平均值。C.百分位數(shù):對多個指標(biāo)的百分位數(shù)進(jìn)行計算,反映出指標(biāo)的分布情況和極端值情況,如請求響應(yīng)時間的95th百分位數(shù)。D.綜合指數(shù):通過對多個指標(biāo)進(jìn)行加權(quán)和,生成一個綜合指數(shù),用于衡量應(yīng)用程序的整體性能和健康狀況,如應(yīng)用程序健康得分、性能指數(shù)等。合成監(jiān)控指標(biāo)可以幫助用戶更全面地了解應(yīng)用程序的性能和健康狀況,更快速地發(fā)現(xiàn)和解決問題。比如在SpringBoot中,提供了一個合成監(jiān)控指--JVM的健康度;如果JVM單個指標(biāo)不正常,但JVM仍然可用,健康度指標(biāo)還是正常的,但如果JVM連接數(shù)據(jù)庫出問題,健康度指標(biāo)就直接報錯。效仿這個指標(biāo),我們可以對企業(yè)內(nèi)的其他應(yīng)用創(chuàng)建出自己的健康度合成指標(biāo)。在Grafana中,我們可以利用功能插件大致設(shè)計出類似的監(jiān)控大盤,并使用PQL語句編寫合成監(jiān)控指標(biāo)。盡管沒有自行開發(fā)的下鉆功能,但也是可以在感知系統(tǒng)整體的基礎(chǔ)上,避免過多的指標(biāo)監(jiān)控。使用grafana的statusmap插件,可以把每個系統(tǒng)的合成監(jiān)控指標(biāo)集中顯示。圖十一Grafana集中展示合成監(jiān)控指標(biāo)4.智能監(jiān)控告警智能監(jiān)控告警是指利用人工智能和機(jī)器學(xué)習(xí)技術(shù)對應(yīng)用程序進(jìn)行智能化監(jiān)控和管理的過程。智能監(jiān)控可以幫助用戶更快速、更準(zhǔn)確地發(fā)現(xiàn)和解決問題,提高應(yīng)用程序的穩(wěn)定性和可靠性。A.自動識別異常:不單獨(dú)
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 農(nóng)村合資合作建房合同范本
- 不標(biāo)準(zhǔn)水電施工合同范本
- 內(nèi)江小區(qū)保安合同范本
- 東亮駕照合同范本
- 兩方協(xié)議合同范本
- 買房假合同范例
- 農(nóng)村秸稈銷售合同范本
- 合同范本押金退還
- 化工重苯銷售合同范例
- 卡車購車合同范本
- 上海書法家協(xié)會書法級理論重點(diǎn)內(nèi)容總結(jié)
- 2023新疆中考數(shù)學(xué)試卷及答案解析
- 《發(fā)展?jié)h語(第二版)中級綜合(Ⅱ)》第10課+課件
- 考研英語大綱詞匯(完美打印版)
- GB/T 29587-2013松皰銹病菌檢疫鑒定方法
- 部門(單位)培訓(xùn)申請表
- BB/T 0016-2018包裝材料蜂窩紙板
- 設(shè)計管理資料課件
- “春季傳染病預(yù)防”班會全文PPT
- 《涉外禮儀教程(第五版)》課件第一章 涉外通則
- 農(nóng)藥殘留檢測技術(shù)課件
評論
0/150
提交評論