<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          聊聊可觀測(cè)性O(shè)bservability丨IDCF

          共 4139字,需瀏覽 9分鐘

           ·

          2022-04-13 02:04

          來(lái)源:哥的世界
          作者:Cheng哥


          自打去年以來(lái),可觀測(cè)性O(shè)bservability這個(gè)概念又非常的火,按照我的感受,在運(yùn)維領(lǐng)域,這個(gè)概念是近兩年即AIOps之后,熱度最高的一個(gè)了。

          無(wú)論是國(guó)內(nèi)還是海外的運(yùn)維相關(guān)的公司,都給了自己一個(gè)新的定位,就是可觀測(cè)性平臺(tái),或者叫做可觀測(cè)云,相對(duì)應(yīng)的產(chǎn)品也是層出不窮。

          對(duì)于我來(lái)講,我看一個(gè)趨勢(shì),往往會(huì)從落地的角度,從實(shí)際情況來(lái)分析,反向去看,而不是單純地看技術(shù)多么酷炫。

          所以,我觀測(cè)了很久Observability之后,打算還是從實(shí)際情況入手來(lái)聊聊這個(gè)概念,看看可觀測(cè)這個(gè)東西到底包含哪些內(nèi)容?它們之間是什么關(guān)系?

          如果要落地,里面真正核心的、決定成敗的又到底是哪些東西?

          先做個(gè)簡(jiǎn)要概述:

          Observability是來(lái)自控制論的一個(gè)概念:

          In control theory, observability is a measure for how well internal states of a system can be inferred by knowledge of its external outputs. The observability and controllability of a system are mathematical duals. The concept ofobservability was introduced by American-Hungarian scientist Rudolf E. Kalmanfor linear dynamic systems.

          這里我們不做詳細(xì)描述,大家感興趣可以自行查詢(xún)一下。

          通常我們?cè)贗T領(lǐng)域看到的關(guān)于可觀測(cè)性概念的介紹,都會(huì)提到它是Metrics, Traces以及Logs的結(jié)合,通常會(huì)以下圖來(lái)呈現(xiàn)。


          這里我找了一個(gè)Splunk的Demo,我們可以直觀的感受一下,可觀測(cè)性的實(shí)際效果是怎樣的。

          大家看完這個(gè)示意,對(duì)可觀測(cè)性就有更直觀的理解了,不做贅述。

          但是這個(gè)Demo就只能作為Demo看一下,現(xiàn)實(shí)情況遠(yuǎn)比這個(gè)要復(fù)雜的多,原因我們后面會(huì)講到。

          不過(guò),這里就有問(wèn)題了,監(jiān)控做了這么多年,Metric都是全的,日志系統(tǒng)也上了,Log一條都沒(méi)拉下,調(diào)用鏈工具也引入了,Trace拓?fù)湟材墚?huà)出來(lái),那上面這個(gè)效果是不是將三者結(jié)合一下就有了呢?

          答案顯而易見(jiàn),是否定的。相反,現(xiàn)實(shí)情況下上述的效果并不容易達(dá)成,這里不僅僅是Metric、Trace和Log三者的技術(shù)結(jié)合在一起就OK,這只是外在的形,要想達(dá)成這個(gè)效果,其實(shí)更關(guān)鍵的是背后的神。

          那這個(gè)神到底是什么,接下來(lái)我就換一個(gè)方式描述一下這個(gè)過(guò)程,把背后更為核心的內(nèi)容呈現(xiàn)出來(lái)。

          可觀測(cè)性O(shè)bservability的剖析

          一圖勝千言,我直接用一張圖來(lái)描述,如下所示:

          其實(shí)有了這張圖,對(duì)Observability有一定理解的同學(xué),應(yīng)該就看的差不多了。

          如果說(shuō)Observability的內(nèi)在的神是什么,總結(jié)下來(lái)就是3部分內(nèi)容:

          1、SRE方法論

          2、AIOps算法能力

          3、業(yè)務(wù)架構(gòu)的理解,這里暗含著對(duì)領(lǐng)域知識(shí)的掌握

          我們可以看到,這三部分的核心能力的掌握就不單純是技術(shù)能力的體現(xiàn)了,這里要有非常深厚經(jīng)驗(yàn)積累和時(shí)間,以及長(zhǎng)時(shí)間對(duì)業(yè)務(wù)架構(gòu)摸索和理解。

          也只有在這三部分核心能力的指導(dǎo)下,像Metric、Trace和Log這樣的技術(shù)手段才能發(fā)揮最大價(jià)值。

          接下來(lái)我們?cè)僬務(wù)劄槭裁催@三個(gè)核心能力非常重要:

          可觀測(cè)性之SRE方法論

          這里面要用到SLO的方法,幫助我們識(shí)別關(guān)鍵Metrics,快速感知問(wèn)題發(fā)生,主要是在Detect階段。

          我們知道復(fù)雜系統(tǒng)下,會(huì)包含網(wǎng)絡(luò)、應(yīng)用、分布式中間件、容器、主機(jī)、存儲(chǔ)、數(shù)據(jù)庫(kù)等等多層設(shè)備和部件,每個(gè)部件都會(huì)有自己的各類(lèi)指標(biāo)。

          但是指標(biāo)這么多,出問(wèn)題同時(shí)告警,那就告警風(fēng)暴了,一個(gè)是會(huì)造成關(guān)鍵信息淹沒(méi),再就是信息多了,告警就變成了“狼來(lái)了”,接收告警的人就麻木了。

          這個(gè)時(shí)候就要設(shè)定SLO,而且SLO得是要分層設(shè)定,業(yè)務(wù)層面,要關(guān)注業(yè)務(wù)SLO,比如GMV、訂單量、支付成功率等等。

          系統(tǒng)層面就要關(guān)注系統(tǒng)SLO,比如訂單接口成功率、時(shí)延和TPS等等,應(yīng)用就要關(guān)注應(yīng)用的SLO,緩存、消息、存儲(chǔ)、數(shù)據(jù)庫(kù),以及底層的網(wǎng)絡(luò)、容器、虛擬機(jī)、硬件主機(jī)要也要有自己的SLO。

          SLO怎么設(shè)計(jì),我不詳述了,之前講了很多,大家自行了解SRE的SLO機(jī)制就好了。

          不過(guò),即使做分層設(shè)定,出問(wèn)題告警依然很多,我可以通過(guò)選定最上層的業(yè)務(wù)SLO來(lái)感知出問(wèn)題了,提升響應(yīng)速度,但是問(wèn)題出在哪兒依然未知,這個(gè)時(shí)候在這種復(fù)雜系統(tǒng)中,就必須依賴(lài)AIOps的能力了。

          可觀測(cè)性之AIOps

          AIOps領(lǐng)域,針對(duì)Metric、Trace和Log,都有專(zhuān)門(mén)的算法來(lái)應(yīng)對(duì)支持,對(duì)應(yīng)三類(lèi),比如針對(duì)Metric,就是KPI Anomaly Detection,針對(duì)Trace就是Tracing Anomaly Detection,針對(duì)Log就是Log Anomaly Detecion。

          所以,AIOps是會(huì)始終貫穿整個(gè)Observability過(guò)程的,關(guān)于AIOps推薦看一下清華裴丹教授的文章和課程,會(huì)有更詳細(xì)的分享。

          可觀測(cè)性之業(yè)務(wù)架構(gòu)的理解

          如果SRE方法論和AIOps是落地Observability的兩個(gè)核心,那對(duì)業(yè)務(wù)架構(gòu)的理解,我對(duì)它的定位就是核心中的核心。

          我們?cè)诩軜?gòu)領(lǐng)域經(jīng)常聽(tīng)到的一句話就是,“脫離業(yè)務(wù)談架構(gòu)就是耍流氓”,其實(shí)也適用于Observability,適用于SRE和AIOps,脫離業(yè)務(wù)架構(gòu)談Observability就是耍流氓。

          那對(duì)業(yè)務(wù)架構(gòu)的理解為什么這么重要呢?我們看兩個(gè)場(chǎng)景:

          第一個(gè),還是回到SLO設(shè)定上,當(dāng)我們?cè)O(shè)定業(yè)務(wù)SLO時(shí),我們是要根據(jù)業(yè)務(wù)類(lèi)型和特點(diǎn)來(lái)的,或者換種說(shuō)法,用戶(hù)對(duì)我們業(yè)務(wù)的感知,是通過(guò)哪些指標(biāo)來(lái)體現(xiàn)的?

          首先,我們得能定義出來(lái),比如電商可以是可以訂單和支付維度來(lái)判定,對(duì)應(yīng)會(huì)有下單成功率、下單量,支付成功率,支付筆數(shù)等等。

          再進(jìn)一步,正常這些指標(biāo)都一個(gè)平滑的駝峰式曲線,等但是在做活動(dòng)時(shí),它可能就是一個(gè)個(gè)的尖峰和突刺,在節(jié)假日它的同環(huán)比會(huì)下降,遇到熱點(diǎn)商品,可能會(huì)出現(xiàn)一段時(shí)間的波動(dòng),但是這些場(chǎng)景并不意味著系統(tǒng)出問(wèn)題了,這種就要在AIOps的算法里識(shí)別出來(lái)。

          那類(lèi)似微信的IM又是什么指標(biāo)和特點(diǎn)?社交軟件微博又有什么不同?跨行業(yè)的電信運(yùn)營(yíng)商,以及銀行、證券、保險(xiǎn)等金融行業(yè)又各是什么特點(diǎn)。

          這些都取決于對(duì)業(yè)務(wù)場(chǎng)景的深刻理解。

          如果說(shuō)第一個(gè)場(chǎng)景只要我懂業(yè)務(wù)就可以設(shè)定SLO,那如果我往深里看,那就不僅僅是對(duì)業(yè)務(wù)場(chǎng)景的理解了。

          第二個(gè),我們往業(yè)務(wù)架構(gòu)深里看,我們都知道復(fù)雜分布式系統(tǒng)里,調(diào)用關(guān)系是異常復(fù)雜的,會(huì)呈現(xiàn)密布的網(wǎng)狀調(diào)用關(guān)系。

          當(dāng)然現(xiàn)在有各類(lèi)Trace工具能幫我們把調(diào)用拓?fù)涑尸F(xiàn)出來(lái),也可以根據(jù)TraceID或業(yè)務(wù)ID單獨(dú)看某次的調(diào)用鏈,確實(shí)方便了很多。

          但是這么復(fù)雜的調(diào)用關(guān)系全部呈現(xiàn)出來(lái),我到底應(yīng)該怎么看?

          答案是基本沒(méi)法看!

          所以這個(gè)時(shí)候就必須得事先規(guī)劃出一條核心的業(yè)務(wù)鏈路,也就是我們常說(shuō)的業(yè)務(wù)關(guān)鍵路徑Critical Path,再進(jìn)一步,關(guān)鍵路徑上就會(huì)有核心應(yīng)用,只有對(duì)照著這個(gè)路徑去看,Observability才會(huì)有針對(duì)性和指導(dǎo)意義。

          所以上面的那個(gè)Splunk的Demo,我們?yōu)槭裁凑f(shuō)就是個(gè)Demo,因?yàn)楝F(xiàn)實(shí)中的調(diào)用關(guān)系要比Demo復(fù)雜N多倍,但是它想呈現(xiàn)的效果,就是針對(duì)Critical Path關(guān)鍵路徑路來(lái)的。

          關(guān)于Critical Path,核心應(yīng)用,強(qiáng)弱依賴(lài)關(guān)系等等,在我的課程和之前的文章中都有,可以自行查閱。

          所以講到這里,我們可以看到,Observability從業(yè)務(wù)來(lái)講,其實(shí)是需要事先定義出如下一條業(yè)務(wù)分析鏈路的:

          業(yè)務(wù)SLO—Critical Path—核心應(yīng)用SLO—核心分布式組件SLO—容器SLO—IAAS SLO

          只有這個(gè)鏈路清晰了,AIOps才會(huì)發(fā)揮最大的優(yōu)勢(shì),Observability的效果才會(huì)呈現(xiàn)出來(lái)。

          一開(kāi)始可以冗余,不那么清晰,但是必須得有,就像杭州到深圳,大家得知道杭州打車(chē)去機(jī)場(chǎng),飛機(jī)去深圳機(jī)場(chǎng),到了深圳再打車(chē)或地鐵去目的地,這就是一條主線,這個(gè)都沒(méi)有,基本就沒(méi)法出門(mén)了。

          所以,要做到這個(gè)程度,你就得懂業(yè)務(wù)、懂業(yè)務(wù)架構(gòu)、懂技術(shù)架構(gòu)、還要有一定的經(jīng)驗(yàn)積累和沉淀,不然沒(méi)法做判斷。

          上面講了那么多,我放個(gè)示例,就不多講了。

          當(dāng)然,可能會(huì)有人挑戰(zhàn)我說(shuō),AIOps可以做到無(wú)監(jiān)督學(xué)習(xí),自行分析關(guān)鍵路徑,不用這么麻煩還要人工分析。

          當(dāng)然,我相信未來(lái)有一天或許會(huì)做到,但是到目前為止,我覺(jué)得這還不現(xiàn)實(shí),即使能分析出鏈路來(lái),但是已然離不開(kāi)架構(gòu)師的梳理和確認(rèn)。

          這個(gè)狀態(tài),我覺(jué)得就跟現(xiàn)在的無(wú)人駕駛一樣,絕大多數(shù)情況下,他可以自動(dòng)巡航,但是關(guān)鍵時(shí)刻還是離不開(kāi)人的判斷和控制。而人的判斷又是來(lái)自于駕駛經(jīng)驗(yàn)、交通法規(guī)、倫理道德以及當(dāng)時(shí)的精神面貌等很多因素。

          從這個(gè)角度,自動(dòng)巡航能力只是人的決策依據(jù)的一部分而已,只能做輔助,永遠(yuǎn)離不開(kāi)也取代不了人的判斷。

          最后,總結(jié)一下:

          當(dāng)前看到的Observability的產(chǎn)品只有Metric、Trace和Log的技術(shù)描述,額外再加上部分AIOps的加持,但是這些只是形,沒(méi)有神。

          要想有神,最關(guān)鍵不能離開(kāi)業(yè)務(wù)和場(chǎng)景,所以SRE方法論、領(lǐng)域知識(shí)(業(yè)務(wù)和架構(gòu))以及AIOps才是Observability的落地的關(guān)鍵所在。

          而這三者之中,對(duì)業(yè)務(wù)場(chǎng)景及業(yè)務(wù)架構(gòu)的理解程度,決定了SRE和AIOps可以發(fā)揮的效果如何,也最終決定了落地的效果。

          再就是,為什么之前很少有人提Observability,這兩天如此火熱,我覺(jué)得還是技術(shù)應(yīng)用發(fā)展到一定程度的結(jié)果,大家前幾年都在分頭搞監(jiān)控、鏈路跟蹤和日志系統(tǒng),這兩年搞差不多了,自然就會(huì)有更高的應(yīng)用訴求。

          所以,從技術(shù)上講,并無(wú)新鮮的東西,關(guān)鍵還是得有更清晰的判斷和思考。



          #IDCF DevOps黑客馬拉松挑戰(zhàn)賽,獨(dú)創(chuàng)端到端DevOps體驗(yàn),精益創(chuàng)業(yè)+敏捷開(kāi)發(fā)+DevOps流水線的完美結(jié)合。

          2022年首場(chǎng)將在美麗的海濱城市-大連舉辦,5月14-15日,36小時(shí)內(nèi)從0到1打造并發(fā)布一款產(chǎn)品。

          企業(yè)組隊(duì)參賽&個(gè)人參賽均可,趕緊上車(chē)~??


          瀏覽 113
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  欧美一级一内谢 | 精品国产一区二区色婷婷 | 竹菊国产精品成人竹菊影视 | 欧美在线伦理一 | 成人免费三级91 |