掃一掃 | 微信關(guān)注
01 什么是可觀測性?
可觀測性(Observability)是一種通過系統(tǒng)產(chǎn)生的輸出數(shù)據(jù)(如日志、指標和鏈路追蹤)來衡量當前系統(tǒng)運行狀態(tài)的能力,其源于現(xiàn)代應(yīng)用系統(tǒng)的復(fù)雜性和分布式架構(gòu),這些應(yīng)用系統(tǒng)往往由大量的服務(wù)器、容器、微服務(wù)等組成,部署在云端或混合云環(huán)境中。在這種情況下,傳統(tǒng)的手動日志分析和故障排查方法已經(jīng)無法滿足快速定位和解決問題的需求。因此,可觀測性越來越成為一種必不可少的技術(shù)手段,幫助運維人員從業(yè)務(wù)應(yīng)用視角實時監(jiān)控應(yīng)用系統(tǒng)的運行狀態(tài)、性能指標和安全性,快速發(fā)現(xiàn)和解決問題,從而確保應(yīng)用系統(tǒng)的高可用性和穩(wěn)定性。同時,可觀測性也可以提高運維人員的工作效率,降低維護成本,使得應(yīng)用系統(tǒng)更加敏捷、靈活和具有競爭力。
02 監(jiān)控與可觀測性的區(qū)別是?
隨著云計算、容器化和微服務(wù)等技術(shù)的發(fā)展,可觀測性在現(xiàn)代 IT 系統(tǒng)中的重要性逐漸凸顯。在此,我們存在疑問:在過去二三十年里,使用指標和儀表盤等構(gòu)建的“傳統(tǒng)監(jiān)控方法”為何無法滿足“現(xiàn)代系統(tǒng)”的需要,“監(jiān)控”和“可觀測性”有什么區(qū)別呢?究其根本,如果依舊使用傳統(tǒng)監(jiān)控方法,運維人員將無法完全“看清”現(xiàn)代系統(tǒng)。眾所周知,現(xiàn)代分布式系統(tǒng)架構(gòu)的復(fù)雜性會導致一種無法預(yù)測且之前沒有遇到過的方式出現(xiàn)的故障,而傳統(tǒng)的監(jiān)控方法更多的需要依賴“預(yù)知”的度量值、閾值和經(jīng)驗直覺。然而,“可觀測性”方法提供了“傳統(tǒng)監(jiān)控”方法不同的思路:
1、從目標對象方面,不局限在某一個技術(shù)領(lǐng)域,更關(guān)注從業(yè)務(wù)應(yīng)用全局去理解整體的運行情況和用戶體驗;
2、從解決問題方面,不需要依靠經(jīng)驗直覺,就具備對復(fù)雜系統(tǒng)的問題發(fā)現(xiàn)、診斷、定位和恢復(fù)的能力;
3、從技術(shù)手段方面,不只是納管“指標、日志、鏈路”等監(jiān)控數(shù)據(jù),還需要建立“跨業(yè)務(wù)、跨系統(tǒng)、跨資源”的數(shù)據(jù)整合關(guān)聯(lián)和可探索性能力。
03 可觀測性落地目標及挑戰(zhàn)
在單體應(yīng)用架構(gòu)時代,由于系統(tǒng)交互比較簡單,數(shù)據(jù)收集有限,往往依靠監(jiān)控和運維人員的經(jīng)驗監(jiān)測判斷系統(tǒng)問題。然而,現(xiàn)代應(yīng)用程序由于其分布式系統(tǒng)的交互組件數(shù)量眾多、敏捷化開發(fā)的高頻迭代造成巨大的未知故障問題,使傳統(tǒng)方法面臨挑戰(zhàn)。
糾其原因,現(xiàn)有的日志、鏈路、指標等監(jiān)控方法存在一定局限。比如問題故障的出現(xiàn)往往牽扯多個工具,而在問題排查過程中,這些工具和數(shù)據(jù)的孤立性和割裂性給運維人員帶來了較大的認知障礙,造成了在分布式應(yīng)用架構(gòu)時代可觀測性落地過程中的沉重負擔和巨大挑戰(zhàn)。

因此,從“監(jiān)控”到“可觀測性”的核心思路和目標是解決多元數(shù)據(jù)的質(zhì)量問題和異構(gòu)整合問題,并具備以服務(wù)化方式持續(xù)擴展可觀測場景的能力,具體實現(xiàn)指標、日志、鏈路、撥測和配置等數(shù)據(jù)域的質(zhì)量管理和聚合關(guān)聯(lián),構(gòu)建從應(yīng)用與應(yīng)用、應(yīng)用與云服務(wù)以及三方組件、應(yīng)用與容器層、應(yīng)用與資源層的橫縱全局視角的可觀測數(shù)據(jù)資源關(guān)聯(lián)能力和價值場景服務(wù)能力。

同時,結(jié)合應(yīng)用橫向全鏈路觀測與應(yīng)用縱向資源指標關(guān)聯(lián)分析,將監(jiān)控、告警、流程、自動化等運維視角進行多角度與結(jié)構(gòu)化整合,呈現(xiàn)應(yīng)用間的邏輯訪問關(guān)系、告警情況、工單信息、指標監(jiān)控、日志監(jiān)控、鏈路監(jiān)控、自動化作業(yè)等,將基礎(chǔ)監(jiān)控、應(yīng)用監(jiān)控、告警、流程、自動化等能力集于一身,以應(yīng)用系統(tǒng)全景視角,為應(yīng)用運維人員提供統(tǒng)一的業(yè)務(wù)視圖,讓業(yè)務(wù)運行情況一目了然。
04 可觀測性的落地方法論是什么?
由于存量工具的功能特性、數(shù)據(jù)質(zhì)量和服務(wù)能力,直接決定了可觀測性落地的成效。因此,可觀測的落地需綜合全面考慮現(xiàn)有運維工具建設(shè)情況,結(jié)合實際情況,分階段進行能力構(gòu)建:
分階段逐步構(gòu)建可觀測能力

1、階段一:建立從業(yè)務(wù)、應(yīng)用與基礎(chǔ)架構(gòu)視角的告警維度的可觀測能力,并提供告警會診機制,關(guān)注復(fù)雜應(yīng)用架構(gòu)下的運行觀測和問題發(fā)現(xiàn)能力,并提供線上協(xié)調(diào)各領(lǐng)域?qū)<疫M行高效會診服務(wù);2、階段二:建立從業(yè)務(wù)、應(yīng)用與基礎(chǔ)架構(gòu)視角的主動發(fā)現(xiàn)可觀測能力,擴展疊加日志、鏈路等數(shù)據(jù),從告警感知轉(zhuǎn)變?yōu)橹鲃影l(fā)現(xiàn)的可觀測能力,并聯(lián)動自動化操作,實現(xiàn)應(yīng)急處置,關(guān)注復(fù)雜應(yīng)用架構(gòu)下向故障定位和排障處置進行衍生,實現(xiàn)左移;3、階段三:通過積累的數(shù)據(jù),基于算法能力形成動態(tài)閾值,容量預(yù)測,智能洞察、方案建議等主動預(yù)防可觀測能力,關(guān)注復(fù)雜應(yīng)用架構(gòu)下向事后處置往事前預(yù)防進行變革,保證服務(wù)體驗。可觀測的建設(shè)并非一蹴而就,通過分階段逐步深入實施,能夠最大程度保障落地效果和可觀測服務(wù)體驗。
基于平臺運維模式打造可觀測工具底座
與此同時,由于越來越多企業(yè)底層IT運維工具和體系呈現(xiàn)出“分割”和“并列”的趨勢,彼此之間的弱連接,極大限制了可觀測性實現(xiàn)的聯(lián)動性、靈活性和擴展性,擁有集成平臺和產(chǎn)品對于支持可觀測性的數(shù)據(jù)資源整合和價值場景服務(wù)供給起到了至關(guān)重要的作用。從2016年起,廣通優(yōu)云便開始摸索,希望通過一種形式實現(xiàn)數(shù)據(jù)、資源和場景的全域打通,最終,我們創(chuàng)新在業(yè)內(nèi)提出的“平臺運維模式”通過提供可觀測能力的工具底座,整體從建設(shè)能力+服務(wù)場景側(cè),為可觀測落地提供堅實保障,是實現(xiàn)可觀測性的最優(yōu)解。整體從可觀測性建設(shè)能力層與服務(wù)場景層進行價值提供:1、可觀測性能力層:優(yōu)云通過平臺化理念,構(gòu)建統(tǒng)一采控、數(shù)據(jù)管理和指標體系模式、業(yè)務(wù)服務(wù)(監(jiān)、管、控、配、析)底座,實現(xiàn)對多系統(tǒng)、多工具、異構(gòu)資源的集中納管和能力補齊,實現(xiàn)多種日志、鏈路、指標等數(shù)據(jù)的整合和治理,實現(xiàn)可觀測性在運行觀測、問題發(fā)現(xiàn)、故障定位和排障處置端到端過程的無縫聯(lián)動能力;2、可觀測性場景層:基于優(yōu)云底座平臺之上,以服務(wù)共享模式,不斷延伸可觀測的生態(tài)運維場景,實現(xiàn)從業(yè)務(wù)、應(yīng)用、基礎(chǔ)架構(gòu)視角的告警可觀測場景、主動發(fā)現(xiàn)可觀測場景和主動預(yù)防可觀測場景。
05 廣通優(yōu)云可觀測性實踐成果
構(gòu)建多層次視角的可觀測體系
某國有大行基于優(yōu)云運維平臺,自動采集/接入應(yīng)用調(diào)用鏈路信息、交易鏈路信息、日志事件、應(yīng)用實例運行指標等觀測數(shù)據(jù),構(gòu)建多層次視角的可觀測體系,動態(tài)橫向鏈路導航實現(xiàn)監(jiān)測鏈路調(diào)用監(jiān)控與追蹤,靜態(tài)縱向應(yīng)用地圖導航應(yīng)用全貌,保障業(yè)務(wù)的安全、穩(wěn)定運行,使用應(yīng)用監(jiān)控實現(xiàn)業(yè)務(wù)指標監(jiān)控、應(yīng)用指標監(jiān)控、全鏈路追蹤、應(yīng)用拓撲分析、 指標閾值告警,實現(xiàn)了1分鐘發(fā)現(xiàn)、3分鐘定位、5分鐘解決的業(yè)務(wù)支撐目標,幫助發(fā)現(xiàn)應(yīng)用性能瓶頸,改善服務(wù)效率,提升應(yīng)用體驗,極大提升運維效率。

企業(yè)級應(yīng)用墻:一圖在手,盡在掌握
通過對應(yīng)用進行精準“畫像”,從應(yīng)用中提取各項關(guān)鍵屬性、運行指標,對各指標進行聚合分析,并根據(jù)不同人員按需配置,支持多維度查看,應(yīng)用基本信息配置及呈現(xiàn)、指標呈現(xiàn)(可自定義擴展需顯示的指標)、評價信息配置及呈現(xiàn)、應(yīng)用軌跡查看(可快速鏈接到各流程工單系統(tǒng))、應(yīng)用運維操作等。

由此,運維人員可以在管理時更清晰、準確、快速地獲取到應(yīng)用的“病根”,并通過引導式運維快速、有效解決問題的目的。以業(yè)務(wù)/應(yīng)用與基礎(chǔ)架構(gòu)圖譜視角,全景展示運行狀態(tài)。

針對業(yè)務(wù)應(yīng)用的某一個異常節(jié)點,進行下鉆,可以查看以應(yīng)用為視角的架構(gòu)拓撲,還可以查看以系統(tǒng)視角的架構(gòu)拓撲,根據(jù)業(yè)務(wù)維度,想你所想,繪你所繪,讓服務(wù)架構(gòu)拓撲清晰可見,一目了然,秒解微服務(wù)繁雜且架構(gòu)梳理無從下手的痛點,其中,基于平臺化能力,無縫聯(lián)動資產(chǎn)配置與知識庫、自動化操作、工作流引擎等平臺能力,實現(xiàn)應(yīng)用資源數(shù)據(jù)為軸,縱向貫穿應(yīng)用、資源之間的關(guān)系,建立應(yīng)用資源架構(gòu)關(guān)系地圖,分層診斷故障根源節(jié)點,并實現(xiàn)應(yīng)急處置和閉環(huán)管控能力。

通過應(yīng)用拓撲的訪問關(guān)系和性能指標,查看最近應(yīng)用節(jié)點是否存在性能瓶頸和應(yīng)用錯誤,指標下鉆定位到具體的耗時或應(yīng)用錯誤鏈路。通過鏈路分析,探測到是哪個應(yīng)用實例、哪臺主機節(jié)點執(zhí)行哪段代碼產(chǎn)生的異常,再結(jié)合具體環(huán)節(jié)信息,展開環(huán)節(jié)所屬進程資源信息、鏈路訪問產(chǎn)生的應(yīng)用日志、錯誤堆棧信息、數(shù)據(jù)庫訪問詳情以及當前進程實例運行指標的趨勢,分析定位到根因。從邁入云原生時代起,技術(shù)更新迭代的速度明顯增快。廣通優(yōu)云產(chǎn)品與解決方案真正實現(xiàn)了以應(yīng)用業(yè)務(wù)為中心的核心訴求,切實解決了由傳統(tǒng)“被動監(jiān)控”手段到“主動發(fā)現(xiàn)”可觀測的能力。從“監(jiān)控”到“可觀測性”,更豐富的技術(shù)、組織、內(nèi)容融入其中,建構(gòu)出對整個應(yīng)用管理更宏大的認知。而這種認知如果能夠基于統(tǒng)一可行的理念、方法論及工具產(chǎn)品,將統(tǒng)一的數(shù)據(jù)信息作為基礎(chǔ),將會大幅提高“主動探查”的能力,讓業(yè)務(wù)全面可觀測,理想終將照進現(xiàn)實。