科技云報(bào)道原創(chuàng)。
可觀測(cè)性不是一個(gè)新鮮的名詞,但是近年來隨著云原生技術(shù)的發(fā)展,在帶來效率、可用性提升的同時(shí)也增加了復(fù)雜度,而可觀測(cè)性成為降低這種復(fù)雜度的唯一手段,因此被推到了前所未有的重要地位。
Gartner將應(yīng)用可觀測(cè)性(Applied Observability)列為“2023年十大戰(zhàn)略技術(shù)趨勢(shì)”之一,并指出,到2026年,70%成功實(shí)現(xiàn)可觀測(cè)性的企業(yè)機(jī)構(gòu),將能夠降低決策延遲,幫助目標(biāo)業(yè)務(wù)或IT流程建立競(jìng)爭(zhēng)優(yōu)勢(shì)。
那么,云原生時(shí)代的可觀測(cè)性有哪些新挑戰(zhàn)和新趨勢(shì)?
云原生帶來可觀測(cè)性變革
可觀測(cè)性,是指通過分析系統(tǒng)的Metrics(指標(biāo))、Traces(鏈路)、Logs(日志)等數(shù)據(jù),構(gòu)建完整的觀測(cè)模型,從而實(shí)現(xiàn)故障診斷、根因分析和快速恢復(fù)。
對(duì)此,谷歌有一個(gè)很簡單的表述,快速排障(troubleshooting),即可觀測(cè)性的核心價(jià)值。
盡管近年來可觀測(cè)性頗有一點(diǎn)“網(wǎng)紅”氣質(zhì),但可觀測(cè)性也是由傳統(tǒng)監(jiān)控演進(jìn)而來的。
傳統(tǒng)監(jiān)控是面向運(yùn)維視角的,從系統(tǒng)外部視角去觀察系統(tǒng)的運(yùn)行狀態(tài),應(yīng)用規(guī)模普遍較小且服務(wù)之間沒有互相依賴,更多是通過閾值來監(jiān)控單體主機(jī)的日志和性能指標(biāo)。
隨著云原生技術(shù)的發(fā)展,基于容器和微服務(wù)化的應(yīng)用規(guī)模更加龐大,服務(wù)之間依賴呈現(xiàn)為網(wǎng)狀結(jié)構(gòu),復(fù)雜的云上環(huán)境以及分布式系統(tǒng)的復(fù)雜性、動(dòng)態(tài)性,使得故障定界、調(diào)用追蹤非常不明朗。
例如,雖然很多容器化應(yīng)用上線有著開箱即用、快速發(fā)布的這些好處,但也有很多的網(wǎng)絡(luò)流量抓取不到。
在這種情況下,其實(shí)很難通過傳統(tǒng)的方式進(jìn)行網(wǎng)絡(luò)流量抓包分析,云環(huán)境網(wǎng)絡(luò)流量監(jiān)控“黑盒”的短板也逐步暴露了出來。
以往的日志、性能指標(biāo)監(jiān)控能力,就需要補(bǔ)充面向云網(wǎng)絡(luò)的流量日志與性能指標(biāo),同時(shí)結(jié)合動(dòng)態(tài)的全鏈路追蹤能力,實(shí)現(xiàn)多維數(shù)據(jù)的關(guān)聯(lián)分析,提供整體應(yīng)用的可靠性保障。
因此,云原生可觀測(cè)性被提出來了,要求從系統(tǒng)內(nèi)部出發(fā),基于“白盒化”的思路去監(jiān)測(cè)系統(tǒng)內(nèi)部的運(yùn)行情況,不僅發(fā)現(xiàn)問題,更對(duì)于問題現(xiàn)象背后本質(zhì)給出明晰解釋。
而可觀測(cè)性背后的指標(biāo)、日志、事件、鏈路數(shù)據(jù),以及診斷工具的結(jié)合使用,就為事前預(yù)防、事中處理、事后復(fù)盤提供了重要決策依據(jù)。
可以說,可觀測(cè)性是基礎(chǔ)設(shè)施自動(dòng)化的基石,優(yōu)秀的可觀測(cè)性是確保云原生紅利高效釋放的前提條件。
可觀測(cè)性的三大維度
云原生計(jì)算基金會(huì)CNCF將可觀測(cè)性分解為三個(gè)更具體方向進(jìn)行研究,分別是:事件日志、鏈路追蹤和聚合度量。
日志(Logging)日志的職責(zé)是記錄離散事件,通過這些記錄事后分析出程序的行為,譬如曾經(jīng)調(diào)用過什么方法,曾經(jīng)操作過哪些數(shù)據(jù)等等。
輸出日志的確很容易,但收集和分析日志卻可能會(huì)很復(fù)雜。面對(duì)成千上萬的集群節(jié)點(diǎn),迅速滾動(dòng)的事件信息,數(shù)以TB計(jì)算的文本,傳輸與歸集都并不簡單。
目前,事件日志可觀測(cè)產(chǎn)品已經(jīng)是一片紅海。
日志管理方案大都包含日志收集、日志聚合、日志存儲(chǔ)與分析幾個(gè)模塊,具體過程是日志收集工具與應(yīng)用程序容器一起運(yùn)行,并直接從應(yīng)用程序收集消息,然后將消息轉(zhuǎn)發(fā)到中央日志存儲(chǔ)以進(jìn)行匯總和分析。
常見的日志管理工具包括ELK Stack、Fluentd、Loki等。其中,Elastic Stack日志解決方案幾乎覆蓋了日志管理的全流程。
度量(Metrics)度量是指對(duì)系統(tǒng)中某一類信息的統(tǒng)計(jì)聚合,主要目的是監(jiān)控和預(yù)警,如某些度量指標(biāo)達(dá)到風(fēng)險(xiǎn)閾值時(shí)觸發(fā)事件,以便自動(dòng)處理或者提醒管理員介入。
度量常用的工具包括:Zabbix、Nagios、Prometheus,及相關(guān)高可用部署方案如Prometheus-operator、Thanos。
追蹤(Tracing)追蹤的主要目的是排查故障如:分析調(diào)用鏈的哪一部分、哪個(gè)方法出現(xiàn)錯(cuò)誤或阻塞,輸入輸出是否符合預(yù)期等等。
云原生時(shí)代,追蹤不只局限于調(diào)用棧了,一個(gè)外部請(qǐng)求需要內(nèi)部若干服務(wù)的聯(lián)動(dòng)響應(yīng),這時(shí)候完整的調(diào)用軌跡將跨越多個(gè)服務(wù),同時(shí)包括服務(wù)間的網(wǎng)絡(luò)傳輸信息與各個(gè)服務(wù)內(nèi)部的調(diào)用堆棧信息。因此,分布式系統(tǒng)中的追蹤常被稱為“全鏈路追蹤”。
同時(shí),追蹤方面的情況與日志、度量也有所不同。
追蹤是與具體網(wǎng)絡(luò)協(xié)議、程序語言密切相關(guān)的,各個(gè)服務(wù)之間是使用HTTP還是gRPC來進(jìn)行通信,會(huì)直接影響追蹤的實(shí)現(xiàn),各個(gè)服務(wù)是使用Java、Golang還是Node.js來編寫,也會(huì)直接影響到進(jìn)程內(nèi)調(diào)用棧的追蹤方式。
這決定了追蹤工具本身有較強(qiáng)的侵入性,通常是以插件式的探針來實(shí)現(xiàn),也決定了追蹤領(lǐng)域很難出現(xiàn)一家獨(dú)大的情況,通常要有多種產(chǎn)品來針對(duì)不同的語言和網(wǎng)絡(luò)。
近年來各種鏈路追蹤產(chǎn)品層出不窮,市面上主流的工具既有像Datadog這樣的一攬子商業(yè)方案,也有AWS X-Ray和Google Stackdriver Trace這樣的云計(jì)算廠商產(chǎn)品,還有像SkyWalking、Zipkin、Jaeger這樣來自開源社區(qū)的優(yōu)秀產(chǎn)品。
總的來說,日志、度量、追蹤三者打通,最大的價(jià)值是能做到全鏈路錯(cuò)誤尋根,即從發(fā)現(xiàn)請(qǐng)求Metric指標(biāo)異常,通過指標(biāo)關(guān)聯(lián)分析,并逐層下鉆到明細(xì)Trace追蹤和具體Error Log,全流程自動(dòng)化從宏觀到明細(xì)的錯(cuò)誤發(fā)現(xiàn)和根因定位。
可觀測(cè)性將走向何方?
不難發(fā)現(xiàn),可觀測(cè)性問題相對(duì)復(fù)雜,沒有開箱即用的最佳方案。
為了應(yīng)對(duì)云原生場(chǎng)景下復(fù)雜的可觀測(cè)性問題,各大廠商采用了不同的策略。
有的采用多種產(chǎn)品組合的方式,針對(duì)不同場(chǎng)景,為客戶提供不同的解決方案,比如AWS有CloudWatch、AMP、AMG等產(chǎn)品組合,阿里云有ARMS、鏈路追蹤、日志服務(wù)SLS等;
有的廠商則提供了統(tǒng)一的解決方案,比如Azure monitor,Vmware Tanzu Wavefront,華為云CIE等。
隨著各大廠商和開源項(xiàng)目的發(fā)展和推進(jìn),在可預(yù)見的未來,可觀測(cè)領(lǐng)域正在呈現(xiàn)新的趨勢(shì):
趨勢(shì)一:形成可觀測(cè)性行業(yè)標(biāo)準(zhǔn)首先是指標(biāo),Prometheus作為云原生時(shí)代指標(biāo)數(shù)據(jù)標(biāo)準(zhǔn)已經(jīng)形成共識(shí)。
鏈路標(biāo)準(zhǔn)也隨著OpenTracing和OpenTelemetry的推行而逐漸占據(jù)主流。
OpenTelemetry作為一套由CNCF主導(dǎo)的云原生可觀測(cè)性的標(biāo)準(zhǔn)協(xié)議,目前已經(jīng)是海外企業(yè)在該領(lǐng)域的實(shí)踐標(biāo)準(zhǔn)。
反觀國內(nèi),雖未形成類似的標(biāo)準(zhǔn),卻也涌現(xiàn)了諸如 CAT 和 SkyWalking 等一系列國產(chǎn)開源的 APM 系統(tǒng)。得益于對(duì)業(yè)務(wù)代碼無侵入,性能表現(xiàn)優(yōu)秀,社區(qū)活躍,中文文檔齊全等眾多優(yōu)秀特性,SkyWalking在國內(nèi)異常火爆。
在日志領(lǐng)域,雖然其數(shù)據(jù)結(jié)構(gòu)化程度較低難以形成數(shù)據(jù)標(biāo)準(zhǔn),但采集存儲(chǔ)分析側(cè)涌現(xiàn)出Fluentd、Loki等開源新秀;另一方面,Grafana作為可觀測(cè)數(shù)據(jù)展示標(biāo)準(zhǔn)也愈加明朗。
?趨勢(shì)二:構(gòu)建以應(yīng)用為中心的觀測(cè)視角可觀測(cè)性比較好的觀測(cè)視角是應(yīng)用視角,以應(yīng)用為單位關(guān)聯(lián)指標(biāo)、鏈路與日志,利用逐漸成熟的eBPF探針技術(shù)快速實(shí)現(xiàn)全局應(yīng)用可觀測(cè),無侵入應(yīng)用探針為主,OpenTelemetry為輔實(shí)現(xiàn)代碼級(jí)可觀測(cè)能力。
趨勢(shì)三:聚焦業(yè)務(wù)成敗在“業(yè)務(wù)至上”的時(shí)代,技術(shù)工程師們保障的核心其實(shí)并不是這套IT系統(tǒng)或軟件,核心其實(shí)是業(yè)務(wù)。
一筆業(yè)務(wù)可能會(huì)涉及到多個(gè)微服務(wù)系統(tǒng),需要追蹤到整個(gè)API關(guān)聯(lián)的訂單、用戶甚至具體到哪一筆交易,這也是可觀測(cè)性和業(yè)務(wù)結(jié)合的一個(gè)重要發(fā)展趨勢(shì)。
趨勢(shì)四:加大IT投入“可觀測(cè)性”被定義為是一個(gè)降本增效的好工具,這讓許多開發(fā)者認(rèn)為安裝了可觀測(cè)性平臺(tái),就可以降低成本、為業(yè)務(wù)創(chuàng)造價(jià)值。
事實(shí)上,可觀測(cè)性工具從來不是一個(gè)“便宜”的東西,可觀測(cè)性平臺(tái)除了基本的工具投入,還需要有一套完整的數(shù)據(jù)存儲(chǔ)方案,企業(yè)自研一套優(yōu)秀的可觀測(cè)性解決方案投入成本并不低。
以美國企業(yè)的可觀測(cè)性相關(guān)投入為例,其占企業(yè)整體IT支出的5%-10%。
因此,可觀測(cè)性產(chǎn)品的“降本增效”不是短時(shí)間內(nèi)就可以顯現(xiàn)出來的,而是通過長時(shí)間的應(yīng)用產(chǎn)生價(jià)值,企業(yè)將做好加大投入的準(zhǔn)備。
趨勢(shì)五:可觀測(cè)性與安全融合安全和可觀測(cè)性的合并,已在全球范圍內(nèi)形成一種趨勢(shì)。
摩根士丹利《安全分析和可觀測(cè)性》一文中提到,在國外,以DataDog為代表的公司在上市之后發(fā)布的新增功能中有70%都是安全相關(guān)的。
這其中的道理非常簡單,可觀測(cè)性是通過檢查其輸出來衡量系統(tǒng)內(nèi)部狀態(tài)的能力,它收集了系統(tǒng)的方方面面,通過這些數(shù)據(jù)可以分析出系統(tǒng)的故障,自然也就能夠分析出系統(tǒng)有沒有被入侵。
比如DataDog就提供了通過分析當(dāng)前訪問請(qǐng)求,區(qū)分哪些可能是黑客在嗅探,或者準(zhǔn)備未來做DDoS攻擊的接口的功能。
也就是說,采集的數(shù)據(jù)在安全方面也能夠發(fā)揮作用,而不像傳統(tǒng)安全工具那樣,需要針對(duì)安全場(chǎng)景再進(jìn)行一次數(shù)據(jù)采集。
所以,安全和可觀測(cè)性的合并在全球范圍內(nèi)已經(jīng)成為一種趨勢(shì)。
針對(duì)攻擊現(xiàn)場(chǎng)的追蹤,比如國內(nèi)的態(tài)勢(shì)感知、SIEM這些安全產(chǎn)品都選擇了和可觀測(cè)性進(jìn)行融合。
結(jié)語
總體來說,真正的可觀測(cè)性平臺(tái)應(yīng)該是,能夠?qū)⒏鞣N各樣對(duì)于系統(tǒng)的形態(tài)、實(shí)時(shí)的狀態(tài)進(jìn)行有結(jié)構(gòu)性的收集并提供一系列的觀察、測(cè)量手段的平臺(tái)。
就像傳感器一樣,能夠讓開發(fā)者們的開發(fā)、測(cè)試、運(yùn)維過程變的更容易,能夠即時(shí)了解系統(tǒng)的運(yùn)行狀態(tài),而并不是簡簡單單的“監(jiān)控”。
- 美媒聚焦比亞迪“副業(yè)”:電子代工助力蘋果,下個(gè)大計(jì)劃瞄準(zhǔn)AI機(jī)器人
- 微信零錢通新政策:銀行卡轉(zhuǎn)入資金提現(xiàn)免手續(xù)費(fèi)引熱議
- 消息稱塔塔集團(tuán)將收購和碩印度iPhone代工廠60%股份 并接管日常運(yùn)營
- 蘋果揭秘自研芯片成功之道:領(lǐng)先技術(shù)與深度整合是關(guān)鍵
- 英偉達(dá)新一代Blackwell GPU面臨過熱挑戰(zhàn),交付延期引發(fā)市場(chǎng)關(guān)注
- 馬斯克能否成為 AI 部部長?硅谷與白宮的聯(lián)系日益緊密
- 余承東:Mate70將在26號(hào)發(fā)布,意外泄露引發(fā)關(guān)注
- 無人機(jī)“黑科技”亮相航展:全球首臺(tái)低空重力測(cè)量系統(tǒng)引關(guān)注
- 賽力斯發(fā)布聲明:未與任何伙伴聯(lián)合開展人形機(jī)器人合作
- 賽力斯觸及漲停,汽車整車股盤初強(qiáng)勢(shì)拉升
免責(zé)聲明:本網(wǎng)站內(nèi)容主要來自原創(chuàng)、合作伙伴供稿和第三方自媒體作者投稿,凡在本網(wǎng)站出現(xiàn)的信息,均僅供參考。本網(wǎng)站將盡力確保所提供信息的準(zhǔn)確性及可靠性,但不保證有關(guān)資料的準(zhǔn)確性及可靠性,讀者在使用前請(qǐng)進(jìn)一步核實(shí),并對(duì)任何自主決定的行為負(fù)責(zé)。本網(wǎng)站對(duì)有關(guān)資料所引致的錯(cuò)誤、不確或遺漏,概不負(fù)任何法律責(zé)任。任何單位或個(gè)人認(rèn)為本網(wǎng)站中的網(wǎng)頁或鏈接內(nèi)容可能涉嫌侵犯其知識(shí)產(chǎn)權(quán)或存在不實(shí)內(nèi)容時(shí),應(yīng)及時(shí)向本網(wǎng)站提出書面權(quán)利通知或不實(shí)情況說明,并提供身份證明、權(quán)屬證明及詳細(xì)侵權(quán)或不實(shí)情況證明。本網(wǎng)站在收到上述法律文件后,將會(huì)依法盡快聯(lián)系相關(guān)文章源頭核實(shí),溝通刪除相關(guān)內(nèi)容或斷開相關(guān)鏈接。