欧美日本国产一区,国产农村妇女毛片精品久久莱园子,国产精品视频一区二区三区,777gn亚洲综合国产

IT可觀測(cè)系列剖析——企業(yè)應(yīng)用觀測(cè)中樞建設(shè)

發(fā)布日期:2024-09-09 15:27:32

分享到

01. 運(yùn)維挑戰(zhàn)加劇

新時(shí)代技術(shù)背景下,運(yùn)維面臨的挑戰(zhàn)加劇:

1)業(yè)務(wù)數(shù)量日益增加、業(yè)務(wù)規(guī)模日益龐大

隨著科技發(fā)展進(jìn)步、民眾生活富足,線(xiàn)下業(yè)務(wù)線(xiàn)上化、線(xiàn)上業(yè)務(wù)復(fù)雜化趨勢(shì)愈演愈烈,各行各業(yè)投入巨大人力物力財(cái)力進(jìn)行企業(yè)IT建設(shè)。隨之而來(lái)的是線(xiàn)上業(yè)務(wù)數(shù)量的爆炸式增加與業(yè)務(wù)規(guī)模的劇烈擴(kuò)張,這對(duì)企業(yè)IT運(yùn)維人員提出了全局把控能力的重大挑戰(zhàn)。

2)云原生、微服務(wù)技術(shù)應(yīng)用

伴隨著業(yè)務(wù)增長(zhǎng),IT架構(gòu)領(lǐng)域提出了云原生、微服務(wù)的構(gòu)建理念,將傳統(tǒng)的大體量、高耦合應(yīng)用系統(tǒng)拆分為微型化、可拆卸的分布式模塊。這種高可用性、高靈活度的部署架構(gòu)使得運(yùn)維人員更難了解系統(tǒng)全貌,在日常監(jiān)控和故障現(xiàn)場(chǎng)還原時(shí)難度極大。

3)容器技術(shù)的大規(guī)模實(shí)踐落地

與此同時(shí),在資源調(diào)度層面,為應(yīng)對(duì)上述現(xiàn)狀帶來(lái)的業(yè)務(wù)快速迭代、運(yùn)行保障維穩(wěn)需求,容器技術(shù)在各企業(yè)內(nèi)部快速落地推廣。容器對(duì)基礎(chǔ)資源的弱依賴(lài)、Pod/Container頻繁起滅的特性都給運(yùn)維工作帶來(lái)了難以估量的復(fù)雜度提升,人力沒(méi)有算力快的“弱勢(shì)”日益凸顯。

復(fù)雜業(yè)務(wù)邏輯帶來(lái)的交錯(cuò)系統(tǒng)關(guān)系

綜上所述,在當(dāng)今企業(yè)內(nèi)部,運(yùn)維工作越來(lái)越需要工具的協(xié)助,傳統(tǒng)人工式的運(yùn)維方案,已無(wú)法應(yīng)對(duì)科技發(fā)展帶來(lái)的挑戰(zhàn)要求。

02. 企業(yè)應(yīng)用觀測(cè)建設(shè)路徑

面對(duì)上述挑戰(zhàn),企業(yè)常常會(huì)踏上構(gòu)建可觀測(cè)性工具體系的征途,而在融合ITIM基礎(chǔ)監(jiān)控之后,針對(duì)應(yīng)用的可觀測(cè)能力補(bǔ)充往往在中間階段進(jìn)行建設(shè)落地。

  • 針對(duì)應(yīng)用的可觀測(cè)體系,首先需要建設(shè)狹義上的應(yīng)用監(jiān)控工具(APM),通過(guò)請(qǐng)求跟蹤(Trace)標(biāo)記,實(shí)現(xiàn)應(yīng)用架構(gòu)可視化、應(yīng)用流量指標(biāo)化、請(qǐng)求記錄數(shù)據(jù)化;
  • 在觀測(cè)數(shù)據(jù)補(bǔ)足后,應(yīng)用觀測(cè)進(jìn)入下一階段建設(shè)目標(biāo)——數(shù)據(jù)聯(lián)動(dòng),將應(yīng)用觀測(cè)數(shù)據(jù)(Trace)和指標(biāo)(metric)、日志(log)關(guān)聯(lián)起來(lái);通過(guò)多維度視角監(jiān)控業(yè)務(wù)系統(tǒng)運(yùn)行狀況,為告警產(chǎn)生后的故障定位提供可追溯的現(xiàn)場(chǎng)記錄。
完整可觀測(cè)體系的結(jié)構(gòu)與應(yīng)用可觀測(cè)的占位


03. 企業(yè)應(yīng)用觀測(cè)建設(shè)思路

1)總體定位

鏈路追蹤的工具,即前面提到的APM,因?yàn)槠渥詣?dòng)化生成了一系列數(shù)據(jù)之間的關(guān)聯(lián)關(guān)系,在整個(gè)可觀測(cè)體系中是一個(gè)類(lèi)似中樞的存在。


鏈路追蹤工具在可觀測(cè)體系中的作用

這張圖概括了鏈路追蹤在整個(gè)可觀測(cè)體系建設(shè)中的定位以及與其他工具的關(guān)聯(lián)關(guān)系:

  • 向前可關(guān)聯(lián)到用戶(hù)操作,鏈路追蹤可以將用戶(hù)在終端上的發(fā)起的請(qǐng)求和后端鏈路聯(lián)系起來(lái),實(shí)現(xiàn)前端到后端完整的時(shí)間線(xiàn)和因果關(guān)系呈現(xiàn);
  • 向后則可串聯(lián)到具體日志,鏈路追蹤可以定位到具體某個(gè)服務(wù)的某次或某一批請(qǐng)求,從而精確匹配到相關(guān)日志來(lái)解析問(wèn)題所在;
  • 向下則可以在鎖定某個(gè)服務(wù)節(jié)點(diǎn)問(wèn)題后,通過(guò)資源標(biāo)簽定位到具體承載這個(gè)服務(wù)節(jié)點(diǎn)的進(jìn)程級(jí)監(jiān)控和主機(jī)操作系統(tǒng)層級(jí)的監(jiān)控,或是容器平臺(tái)的監(jiān)控。

另外鏈路追蹤本身也是可以進(jìn)行一些指標(biāo)提取的,經(jīng)典指標(biāo)例如請(qǐng)求量、請(qǐng)求成功率、各種分位的時(shí)延,這些指標(biāo)在配置了一定的告警規(guī)則后,也都可以直接作為告警來(lái)源。產(chǎn)生異常后主動(dòng)觸達(dá)運(yùn)維人員。

由此可見(jiàn),在構(gòu)建全面的可觀測(cè)性體系時(shí),孤立地看待與應(yīng)用性能管理(APM)工具的建設(shè)是一種偏頗的思路。不少企業(yè)曾嘗試獨(dú)立為APM工具設(shè)立項(xiàng)目并推進(jìn)實(shí)施,然而最終這些工具并未能實(shí)現(xiàn)廣泛的采納與應(yīng)用,項(xiàng)目所帶來(lái)的實(shí)際效益遠(yuǎn)低于初始預(yù)期。究其根本,是因?yàn)閱我坏腁PM工具所能覆蓋的問(wèn)題場(chǎng)景極為有限。我們應(yīng)當(dāng)將APM盡可能和各類(lèi)其他觀測(cè)工具做串聯(lián)打通,通過(guò)APM建立起基于業(yè)務(wù)實(shí)際請(qǐng)求流量的“橋梁”,有目標(biāo)性地拉通各個(gè)觀測(cè)工具和不同類(lèi)型的觀測(cè)數(shù)據(jù),實(shí)現(xiàn)完整有效的觀測(cè)效果。

接下來(lái)我們就具體的串聯(lián)打通場(chǎng)景提出一些具體實(shí)踐供各位讀者參考。

① 前端到后端串聯(lián)排障

當(dāng)具備對(duì)用戶(hù)終端數(shù)據(jù)進(jìn)行采集的能力,那就可以結(jié)合這種前端監(jiān)控工具(RUM)和鏈路追蹤工具(APM)通過(guò)一些機(jī)制來(lái)實(shí)現(xiàn)前端到后端的串聯(lián)排障。

前端串聯(lián)后端調(diào)用鏈排障示意圖

圖中可以解釋這一過(guò)程的原理,用戶(hù)在移動(dòng)應(yīng)用或者Web瀏覽器網(wǎng)頁(yè)上訪(fǎng)問(wèn)時(shí),會(huì)生成一個(gè)Session被記錄,一個(gè)Session中記錄了一個(gè)用戶(hù)的完整操作流程,包括他依次打開(kāi)了哪些頁(yè)面,在每個(gè)頁(yè)面上進(jìn)行了怎樣的操作,觸發(fā)了哪些后臺(tái)請(qǐng)求。當(dāng)產(chǎn)生了一個(gè)具體的后臺(tái)請(qǐng)求后,RUM工具可以按照APM工具定義的Trace標(biāo)識(shí)規(guī)則(TraceID的生成規(guī)則),來(lái)對(duì)這個(gè)請(qǐng)求進(jìn)行標(biāo)記,這樣在后端也可以完整跟蹤到這個(gè)請(qǐng)求在后端系統(tǒng)具體經(jīng)過(guò)了哪些服務(wù),在哪個(gè)服務(wù)上處理消耗的時(shí)間過(guò)長(zhǎng)或者出現(xiàn)了報(bào)錯(cuò)。

② 鏈路跟蹤與日志關(guān)聯(lián)

對(duì)于開(kāi)發(fā)人員來(lái)說(shuō),直接將問(wèn)題定位到代碼級(jí)別是最高效的。但告警信息的有限以及指標(biāo)類(lèi)數(shù)據(jù)的高度抽象,使得運(yùn)維人員在很多時(shí)候其實(shí)無(wú)法給出這么詳細(xì)的信息,無(wú)法有效輔助開(kāi)發(fā)人員進(jìn)行問(wèn)題定位和解決。這時(shí),鏈路追蹤和日志關(guān)聯(lián)的方式就給出了一種有效的解決手段。

具體的實(shí)現(xiàn)方式如下圖所示:

調(diào)用鏈串聯(lián)日志方法

可能會(huì)有工程師擔(dān)心這種方式對(duì)代碼侵入性很大,很難實(shí)踐,但其實(shí)不然,業(yè)界有非常多好用的日志框架來(lái)幫你解決這個(gè)問(wèn)題,我們只需要額外生成一份日志輸出的配置文件做批量下發(fā)即可。

以下就用Logback日志框架配合Skywalking探針(一種業(yè)界流行的開(kāi)源APM探針)來(lái)做個(gè)例子,其中關(guān)鍵的修改點(diǎn)在于:

  • 在Logger配置中引用這個(gè)Appender

在這個(gè)過(guò)程中,業(yè)務(wù)并不會(huì)有很大感知,只是會(huì)發(fā)現(xiàn)他們輸出的日志中增加了Skywalking注入的TraceID等信息。接下來(lái)我們?cè)?/span>日志解析過(guò)程中就可以提取這些Trace信息,便于后續(xù)直接根據(jù)這些Trace信息進(jìn)行關(guān)聯(lián)檢索和分析。


③ 鏈路追蹤下鉆到資源層監(jiān)控

這里會(huì)進(jìn)一步分為三種不同類(lèi)型的場(chǎng)景:

  • 下鉆到組件或數(shù)據(jù)庫(kù)排查問(wèn)題

APM所捕獲到的調(diào)用數(shù)據(jù)中,有一部分是對(duì)組件或數(shù)據(jù)庫(kù)的調(diào)用。這種調(diào)用可以將系統(tǒng)所用到的組件和數(shù)據(jù)庫(kù)直觀地呈現(xiàn)在拓?fù)鋱D和某一條具體的調(diào)用鏈中,如果相關(guān)的組件或數(shù)據(jù)庫(kù)出現(xiàn)了問(wèn)題,大概率會(huì)在這種可視化的形式中有所體現(xiàn),例如拓?fù)鋱D上的狀態(tài)呈現(xiàn)以及調(diào)用鏈瀑布圖中的長(zhǎng)條。當(dāng)然,這里只是解決了發(fā)現(xiàn)的問(wèn)題,我們只能在APM中判斷這些組件或者數(shù)據(jù)庫(kù)的故障對(duì)上游調(diào)用者產(chǎn)生了影響,但至于為何產(chǎn)生以及這些組件及數(shù)據(jù)庫(kù)的真實(shí)運(yùn)行狀態(tài),我們?nèi)匀恍枰柚渌O(jiān)控工具來(lái)呈現(xiàn)和分析。

此時(shí)APM可以在調(diào)用信息中提取出對(duì)應(yīng)組件或數(shù)據(jù)庫(kù)的資源標(biāo)識(shí),這可能是IP地址,或是域名鏈接,再通過(guò)這些標(biāo)識(shí)信息去對(duì)應(yīng)的組件監(jiān)控或數(shù)據(jù)庫(kù)監(jiān)控中獲取到這些資源的核心監(jiān)控指標(biāo)信息及相關(guān)日志,通過(guò)同一個(gè)平臺(tái)的頁(yè)面跳轉(zhuǎn)或者嵌入來(lái)實(shí)現(xiàn)一套連貫的排障流程,提升此類(lèi)場(chǎng)景的排障效率。


  • 下鉆到進(jìn)程所在的主機(jī)/容器集群排查問(wèn)題

當(dāng)我們?cè)谙到y(tǒng)中通過(guò)APM探針或者SDK按照規(guī)范要求上報(bào)了Trace信息,一般都會(huì)攜帶對(duì)應(yīng)服務(wù)所在的主機(jī)或者容器集群信息,最常見(jiàn)的就是主機(jī)的IP地址以及容器的ContainerID,這兩種信息會(huì)作為我們?nèi)で笃渌O(jiān)控工具時(shí)對(duì)主機(jī)和容器監(jiān)控的索引,從而能夠在識(shí)別到某個(gè)服務(wù)節(jié)點(diǎn)故障后,對(duì)其所在的主機(jī)或者容器進(jìn)行下鉆,查看到主機(jī)和容器層級(jí)上更加精確的指標(biāo)數(shù)據(jù)或者容器數(shù)據(jù)。

我們知道,計(jì)算機(jī)網(wǎng)絡(luò)其實(shí)底層有七層協(xié)議,而我們平時(shí)大多數(shù)情況會(huì)將這七層協(xié)議轉(zhuǎn)化抽象成單次請(qǐng)求。但不排除,有時(shí)我們的故障發(fā)生在比較深的網(wǎng)絡(luò)層面,在APM調(diào)用鏈中只能得知某一段span的耗時(shí)增加、返回碼錯(cuò)誤或者無(wú)響應(yīng)斷鏈,無(wú)法進(jìn)一步排查深層次的網(wǎng)絡(luò)問(wèn)題。這時(shí)就可以通過(guò)這一進(jìn)程將請(qǐng)求的span獲取到內(nèi)核態(tài)的 sys span ,再?gòu)膕ys span映射到網(wǎng)絡(luò)監(jiān)控中的具體net span,然后就可以從專(zhuān)業(yè)的網(wǎng)絡(luò)監(jiān)控中獲取到這次網(wǎng)絡(luò)請(qǐng)求在各個(gè)環(huán)節(jié)的詳細(xì)信息。

一次請(qǐng)求調(diào)用實(shí)際的網(wǎng)絡(luò)過(guò)程

通常某次請(qǐng)求出現(xiàn)網(wǎng)絡(luò)問(wèn)題的概率還是比較小的,往往是短時(shí)間大面積出現(xiàn)網(wǎng)絡(luò)問(wèn)題,這個(gè)時(shí)候我們也可以從APM的某些樣本請(qǐng)求中獲取一個(gè)大致的范圍,接下來(lái)按一定條件跳轉(zhuǎn)到專(zhuān)業(yè)的網(wǎng)絡(luò)監(jiān)控,查看相應(yīng)的指標(biāo)趨勢(shì)(例如丟包數(shù)量、丟包率、CRC校驗(yàn)通過(guò)率等)。


04. 結(jié)語(yǔ)

以上,我們介紹了比較成熟理想的企業(yè)應(yīng)用觀測(cè)中樞建設(shè)方案。總的來(lái)說(shuō),應(yīng)用觀測(cè)領(lǐng)域目前尚處于快速發(fā)展、落地探索階段,各企業(yè)在建設(shè)應(yīng)用觀測(cè)中樞的過(guò)程中不應(yīng)操之過(guò)急。企業(yè)內(nèi)部從一個(gè)試點(diǎn)出發(fā),以點(diǎn)帶面,逐漸推廣是比較理想且穩(wěn)妥的建設(shè)節(jié)奏。其最終實(shí)現(xiàn)的觀測(cè)能力也將會(huì)對(duì)企業(yè)內(nèi)部的系統(tǒng)維穩(wěn)及代碼調(diào)優(yōu)起到極大的助力作用。

免費(fèi)申請(qǐng)演示

聯(lián)系我們

服務(wù)熱線(xiàn):

020-38847288

QQ咨詢(xún):

3593213400

在線(xiàn)溝通:

立即咨詢(xún)
查看更多聯(lián)系方式

申請(qǐng)演示

請(qǐng)登錄后在查看!