自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

一文讀懂可觀測性與Opentelemetry

網(wǎng)絡(luò)
只有將標(biāo)準(zhǔn)化、結(jié)構(gòu)化的數(shù)據(jù)喂給觀測平臺,觀測平臺才能從中發(fā)現(xiàn)巨大價(jià)值。

√介紹可觀測性

√介紹Opentelemetry的核心概念

重新認(rèn)識可觀測性

管理學(xué)大師彼得德魯克有一句話:“如果你無法衡量它,你就無法管理它”。在企業(yè)中,無論是管理人,還是管理事,抑或是管理系統(tǒng),首先都需要衡量。衡量的過程其實(shí)是搜集信息的過程,有了足夠的信息才能做出正確的判斷,有了正確的判斷才能做出有效的管理和行動方案。

下面我用一個(gè)簡單模型來說明我對可觀測性的理解:

圖釋:通過觀測看到表象,通過判斷定位問題,通過優(yōu)化解決問題。

可觀測性描述的就是“觀測-判斷-優(yōu)化-再觀測”這個(gè)閉環(huán)的連續(xù)性、高效性。如果只有觀測而無法基于觀測做出判斷,則不能稱其具備可觀測性。如果只有經(jīng)驗(yàn)判斷而沒有數(shù)據(jù)支撐,也不能稱其具備可觀測性,這樣會導(dǎo)致組織高度依賴個(gè)人能力而帶來管理風(fēng)險(xiǎn)。如果優(yōu)化之后無法反饋到觀測上,或者因優(yōu)化引入新的技術(shù)而導(dǎo)致無法觀測,則其可觀測性不可持續(xù)。如果在觀測、判斷、優(yōu)化的閉環(huán)中需要付出很高的成本和承擔(dān)很大風(fēng)險(xiǎn),則其可觀測性的價(jià)值為負(fù)。

所以,當(dāng)我們在談可觀測性的時(shí)候,其實(shí)更多考慮的是觀測者、管理者的感受,也就是說在我們遇到問題的時(shí)候,能否輕而易舉地在觀測平臺找到答案,沒有阻力也沒有困惑,這就是可觀測性。隨著企業(yè)的發(fā)展,組織架構(gòu)(角色、觀測者)和管理對象(系統(tǒng)、被觀測者)都會隨之發(fā)展變化,當(dāng)使用了一堆傳統(tǒng)的觀測工具,卻仍然無法滿足觀測者、管理者新的需求的時(shí)候,我們不禁要問:“可觀測性何在?”。

“可觀測”不等于“可觀測性”

下面,我們來看一下我們習(xí)以為常的觀測方式。

圖釋:傳統(tǒng)的觀測工具是垂直的,觀測者需要從多個(gè)工具中進(jìn)行問題判斷。

通常我們會基于自己想要的數(shù)據(jù)去搭建觀測工具。當(dāng)我們想了解掌握基礎(chǔ)設(shè)施的健康狀況的時(shí)候,我們會很自然的想到搭建一個(gè)儀表盤,實(shí)時(shí)監(jiān)測各項(xiàng)指標(biāo)。當(dāng)我們想了解業(yè)務(wù)是如何出問題的,我們會很自然的想到搭建一個(gè)日志平臺,隨時(shí)過濾排查業(yè)務(wù)日志。當(dāng)我們想了解事務(wù)為什么高延遲,我們會很自然的想到搭建一個(gè)鏈路監(jiān)測平臺,查詢拓?fù)湟蕾嚭透鞴?jié)點(diǎn)的響應(yīng)時(shí)間。這種模式很好,幫助我們解決了很多問題,以至于我們從不懷疑可觀測性,我們信心滿滿。偶爾遇到大難題,把我們的儀表盤、日志平臺、鏈路平臺打開,所有的數(shù)據(jù)都在這里,我們堅(jiān)信一定能找到問題的根因。即使花費(fèi)了很長時(shí)間,我們也只是告訴自己要多學(xué)習(xí),多了解掌握自己負(fù)責(zé)的系統(tǒng),下一次我一定能更快找到根因。是的,當(dāng)我們想要的數(shù)據(jù)都擺在面前的時(shí)候,我們還有什么理由怪罪觀測工具。

圖釋:人腦像一把尺子,根據(jù)經(jīng)驗(yàn)比對多個(gè)指標(biāo)來發(fā)現(xiàn)它們的相關(guān)性。

圖釋:當(dāng)發(fā)現(xiàn)指標(biāo)有毛刺的時(shí)候,往往需要在大腦中構(gòu)建復(fù)雜的日志查詢條件,費(fèi)時(shí)不說還容易出錯(cuò)。

我們會不辭勞苦地在各種指標(biāo)數(shù)據(jù)中尋找可能的關(guān)聯(lián)性,得到關(guān)鍵線索后,我們會在大腦中構(gòu)造出一堆復(fù)雜的日志查詢條件來驗(yàn)證自己的猜想。就這樣比對、猜想、驗(yàn)證,同時(shí)還要在各種工具中切換,不可否認(rèn)很充實(shí)。

圖釋:系統(tǒng)規(guī)模龐大的時(shí)候,人已經(jīng)無法去定位問題了。

傳統(tǒng)的系統(tǒng)相對簡單,上述方式行之有效?,F(xiàn)代IT系統(tǒng)的關(guān)鍵詞是分布式、池化、大數(shù)據(jù)、零信任、彈性、容錯(cuò)、云原生等,越來越龐大,越來越精細(xì),越來越動態(tài),同時(shí)也越來越復(fù)雜。通過人去尋找各種信息的關(guān)聯(lián)性,再根據(jù)經(jīng)驗(yàn)判斷和優(yōu)化,顯然是不可行的,耗時(shí)耗力還無法找到問題根因。

傳統(tǒng)的工具是垂直向的,引入一個(gè)新的組件的同時(shí)也會引入一個(gè)與之對應(yīng)的觀測工具,這樣是保證了數(shù)據(jù)的全面性,但丟失了數(shù)據(jù)的關(guān)聯(lián)性和分析排查的連貫性(換句話說,我們方方面面都監(jiān)控到了,但遇到問題,還是不能很好地發(fā)現(xiàn)和定位)。此時(shí)我們很自然的想到做一個(gè)統(tǒng)一的數(shù)據(jù)平臺,想象中把所有數(shù)據(jù)放在一個(gè)平臺就能解決關(guān)聯(lián)性的問題,但往往實(shí)際情況是我們只是把數(shù)據(jù)堆在一個(gè)地方,用的時(shí)候還是按傳統(tǒng)的方式各看各的。我們只是把無數(shù)根柱子(工具),融合成了三根柱子:一個(gè)觀測指標(biāo)、日志、鏈路的統(tǒng)一平臺,數(shù)據(jù)統(tǒng)一了,但關(guān)聯(lián)性還得靠人的知識和經(jīng)驗(yàn)。

這里邊最關(guān)鍵的其實(shí)是解決數(shù)據(jù)關(guān)聯(lián)的問題,把之前需要人去比對、過濾的事交給程序去處理,程序最擅長此類事同時(shí)也最可靠,人的時(shí)間更多的用在判斷和決策上。這在復(fù)雜系統(tǒng)中,節(jié)省的時(shí)間會被放大很多倍,就這點(diǎn)小事就是可觀測性看得見的未來。

圖釋:未來觀測工具需要通過時(shí)間和上下文來關(guān)聯(lián)數(shù)據(jù)

那么,如何做數(shù)據(jù)關(guān)聯(lián)呢?說起來很容易,那就是做時(shí)間+空間的關(guān)聯(lián)。在我們的統(tǒng)一數(shù)據(jù)平臺上,由于數(shù)據(jù)是來自于各種觀測工具的,雖然我們在數(shù)據(jù)格式上統(tǒng)一成了metric、log、trace,但不同工具的metric、log、trace的元數(shù)據(jù)截然不同,而如果我們在這個(gè)統(tǒng)一數(shù)據(jù)平臺上去梳理和映射這些元數(shù)據(jù)的話,這將是龐雜、難維護(hù)、不可持續(xù)的。那該如何做呢?答案就是標(biāo)準(zhǔn)化。只有將標(biāo)準(zhǔn)化、結(jié)構(gòu)化的數(shù)據(jù)喂給觀測平臺,觀測平臺才能從中發(fā)現(xiàn)巨大價(jià)值。統(tǒng)一數(shù)據(jù)平臺只是在數(shù)據(jù)格式上進(jìn)行了標(biāo)準(zhǔn)化,而要想將trace、metric、log關(guān)聯(lián)還必須建立context的標(biāo)準(zhǔn)化,context就是數(shù)據(jù)的空間信息,再疊加上時(shí)間信息的關(guān)聯(lián)就可以發(fā)揮真正的觀測價(jià)值。

Opentelemetry做了什么?

Opentelemetry(以下簡稱:OTel)就是解決數(shù)據(jù)標(biāo)準(zhǔn)化問題的一個(gè)項(xiàng)目,OTel由以下幾部分組成:

  • 跨語言的標(biāo)準(zhǔn)規(guī)范(Specification):定義了數(shù)據(jù)、上下文、API、概念術(shù)語等的規(guī)范。這是OTel的核心,它使得所有觀測數(shù)據(jù)有機(jī)地統(tǒng)一起來,這樣觀測平臺才能自動比對、自動過濾,同時(shí)也為AI提供了高質(zhì)量的數(shù)據(jù)。
  • 接收、處理、輸出觀測數(shù)據(jù)的工具(Collector)一個(gè)用于接收OTel觀測數(shù)據(jù)的工具,并支持通過配置pipeline對觀測數(shù)據(jù)進(jìn)行處理,輸出給指定的后端。
  • 各種語言的SDK(SDK):基于OTel標(biāo)準(zhǔn)的API實(shí)現(xiàn)的各種語言的SDK,用來支持自定義開發(fā)觀測數(shù)據(jù)采集器。
  • 采集器(Instrumentation):開箱即用的觀測數(shù)據(jù)采集器。

OTel是開源項(xiàng)目,所有內(nèi)容都可以在Github找到,下面我介紹幾個(gè)關(guān)鍵的概念:屬性從數(shù)據(jù)的角度看屬性是一個(gè)鍵值對,本質(zhì)上屬性描述了空間信息,方便從空間上做數(shù)據(jù)關(guān)聯(lián)。OTel定義了很多通用的屬性,如果定義不明確或數(shù)據(jù)不一致時(shí),是沒法自動關(guān)聯(lián)分析的。下面是Otel定義的K8S的Pod屬性:

資源

從數(shù)據(jù)的角度看資源是一個(gè)鍵值對集合,本質(zhì)上資源描述的是觀測對象。相同觀測對象的Metric、log、trace都有相同的資源數(shù)據(jù)(或稱:相同上下文),這樣就可以自動發(fā)現(xiàn)相關(guān)性。

事件

從數(shù)據(jù)的角度看事件是一個(gè)時(shí)間戳和一組屬性組成的,用來描述某個(gè)時(shí)間發(fā)生了某件事。本質(zhì)上事件是一個(gè)時(shí)間+空間的組合。

指標(biāo)

從數(shù)據(jù)的角度看指標(biāo)是事件的聚合,在一個(gè)活躍的系統(tǒng)中,相同的事件會不斷發(fā)生,指標(biāo)提供了一個(gè)跨時(shí)間和空間的總覽。沉浸在細(xì)節(jié)不一定有見解,跳出來,從更高的維度鳥瞰可能尋找到靈感。

跨度

從數(shù)據(jù)的角度看跨度由:操作名稱、開始時(shí)間、持續(xù)時(shí)間、一組屬性組成??缍龋ㄓ址Q:span)描述的是一個(gè)過程,如果說事件是在一個(gè)時(shí)間點(diǎn)構(gòu)建了時(shí)間和空間的相關(guān)性,那么跨度就是在一個(gè)時(shí)間段上構(gòu)建了時(shí)間和空間的相關(guān)性。

信號

信號是對標(biāo)準(zhǔn)遙測數(shù)據(jù)的抽象,相同數(shù)據(jù)模型的數(shù)據(jù)被歸為一個(gè)信號。如:一個(gè)Metric是一個(gè)信號,所有Metric都具有統(tǒng)一標(biāo)準(zhǔn)的數(shù)據(jù)模型。一個(gè)Trace是一個(gè)信號,所有Trace都具有統(tǒng)一標(biāo)準(zhǔn)的數(shù)據(jù)模型。信號有一個(gè)重要的特性就是供應(yīng)商無關(guān),任何可觀測系統(tǒng)供應(yīng)商要支持OTel,都必須要按OTel的信號模型收集、上報(bào)、處理數(shù)據(jù),這是保障高效數(shù)據(jù)關(guān)聯(lián)的關(guān)鍵。

上下文

所有信號都基于相同的上下文,如:在同一個(gè)服務(wù)中采集的Metric、log、trace具有相同的上下文(如:service.id和service.name)。這其實(shí)就是在空間上建立的數(shù)據(jù)的關(guān)聯(lián)。

敬畏工程

OTel在數(shù)據(jù)層面提供了標(biāo)準(zhǔn)規(guī)范和許多拿來即用的工具,大大方便了構(gòu)建可觀測平臺,但是真正落地去構(gòu)建適合自己的、全面可擴(kuò)展的、穩(wěn)定可靠的、低成本高效益的可觀測平臺是一個(gè)大工程,不是簡單引入就可以的。這其中涉及到大數(shù)據(jù)引擎、高基數(shù)分析引擎、關(guān)系引擎、AI引擎等系統(tǒng)難題。此外,如何設(shè)計(jì)一個(gè)簡單、高效、準(zhǔn)確、協(xié)同、專業(yè)的平臺也不是一蹴而就的,需要懂?dāng)?shù)據(jù)也要懂技術(shù)還要懂設(shè)計(jì)。

我把可觀測平臺分以下層次:

  1. 數(shù)據(jù)展示+人工關(guān)聯(lián)比對+人工判斷:大多數(shù)傳統(tǒng)觀測平臺在這一層。
  2. 信息關(guān)聯(lián)展示+人工判斷:部分觀測平臺通過梳理映射可以做一些相關(guān)性展示,減少人工發(fā)現(xiàn)的時(shí)間成本。
  3. 信息判斷 x 人工判斷:極少部分觀測平臺做了數(shù)據(jù)的高度標(biāo)準(zhǔn)化,可以根據(jù)相關(guān)性給出見解和建議。
  4. 信息判斷+行動:沒有觀測工具能只依靠工具做判斷。

博睿數(shù)據(jù)在數(shù)據(jù)采集層有十多年的技術(shù)積累,探針穩(wěn)定可靠,部署簡單。在數(shù)據(jù)處理方面也經(jīng)受住了大業(yè)務(wù)量的客戶考驗(yàn),技術(shù)上不斷創(chuàng)新形成了極具優(yōu)勢的架構(gòu)。在數(shù)據(jù)標(biāo)準(zhǔn)化、結(jié)構(gòu)化設(shè)計(jì)方面也形成了自己的體系。可以說我們剛跨越了第2層來到第3層,我們將從觀測廣度和深度兩個(gè)方面豐富標(biāo)準(zhǔn)化的數(shù)據(jù),基于此同時(shí)不斷深化數(shù)據(jù)相關(guān)性,加上我們自研的SwiftAI中臺賦能,未來將給出更多更精準(zhǔn)的信息判斷,幫助客戶快速落地高效可持續(xù)的觀測--判斷--優(yōu)化閉環(huán)。?

責(zé)任編輯:張燕妮 來源: 博睿宏遠(yuǎn)
相關(guān)推薦

2024-01-15 05:55:33

2021-06-23 10:00:46

eBPFKubernetesLinux

2020-06-29 10:35:26

監(jiān)控系統(tǒng)架構(gòu)技術(shù)

2024-05-28 09:37:48

2021-07-23 11:35:49

架構(gòu)運(yùn)維技術(shù)

2023-09-24 23:35:46

云原生Kubernetes

2022-05-12 08:01:18

KubernetesDocker容器

2022-08-22 09:01:59

類型兼容性TypeScript

2023-10-26 08:47:30

云原生數(shù)據(jù)采集

2023-12-22 19:59:15

2021-08-04 16:06:45

DataOps智領(lǐng)云

2024-04-10 10:34:34

Cache系統(tǒng)GPU

2022-12-08 14:18:45

2023-03-09 08:00:22

2023-05-18 22:44:09

2023-09-06 07:51:19

KubernetesOperator

2018-09-28 14:06:25

前端緩存后端

2022-09-22 09:00:46

CSS單位
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號