經(jīng)過多年在混合云環(huán)境下的耕耘,云杉網(wǎng)絡(luò)自主研發(fā)的DeepFlow可觀測性平臺得到了多家企業(yè)客戶的認(rèn)可,并在金融、電信、能源等行業(yè)得到了廣泛的應(yīng)用。今天正式宣布開源DeepFlow核心的可觀測性數(shù)據(jù)流引擎,希望將高度自動化的可觀測性能力、自動追蹤和自動標(biāo)簽?zāi)芰﹂_放到整個行業(yè),幫助企業(yè)客戶優(yōu)化云原生運(yùn)維工作運(yùn)行的效率、穩(wěn)定性和計算成本。
一、為什么需要可觀測性?
大量云原生技術(shù)的采用,導(dǎo)致IT系統(tǒng)越來越復(fù)雜,快速排障變得越來越難。傳統(tǒng)的應(yīng)用監(jiān)控(APM)和網(wǎng)絡(luò)監(jiān)控(NPM)工具,可以發(fā)現(xiàn)某個函數(shù)調(diào)用失敗或者某個鏈路性能下降,卻難以在復(fù)雜的云環(huán)境下找到故障發(fā)生的根本原因。Epsagon 的一項調(diào)查表明,應(yīng)用開發(fā)者有高達(dá)30%的時間花在可觀測性能力建設(shè)上,另有 20% 的時間花在代碼 Debug 上,而 Debug 花費的大部分時間又恰好是可觀測性建設(shè)不足導(dǎo)致。
可觀測性建設(shè)的難點包括兩個方面:
埋點插碼難
開發(fā)者需要考慮為每一種語言、每一種框架進(jìn)行埋點和插碼。一些公司的業(yè)務(wù)開發(fā)團(tuán)隊很幸運(yùn),會有類似 IDP(Internal Developer Platform)的團(tuán)隊負(fù)責(zé)整個公司的可觀測性能力建設(shè),提供埋點和插碼的 SDK。但大部分語言缺乏類似 JVM 的字節(jié)碼注入機(jī)制,IDP 團(tuán)隊每一次的 SDK 升級都需要業(yè)務(wù)開發(fā)團(tuán)隊同步發(fā)版、上線。
開發(fā)者需要考慮在微服務(wù)之間如何傳遞追蹤上下文。同樣需要為每一種語言、每一種框架進(jìn)行埋點和插碼,另一方面像 MQTT 3.X、MySQL、Redis 等缺乏 Header Option 字段的協(xié)議經(jīng)常成為追蹤的噩夢。
開發(fā)者需要為每一個指標(biāo)、追蹤、日志數(shù)據(jù)注入大量的屬性標(biāo)簽,以便于后續(xù)能夠?qū)τ^測數(shù)據(jù)進(jìn)行靈活的過濾、分組及關(guān)聯(lián)。然而這些標(biāo)簽已經(jīng)存在于 K8s apiserver、服務(wù)注冊中心、應(yīng)用協(xié)議 Header 中,開發(fā)者不得不重復(fù)這份工作將他們搬遷到觀測數(shù)據(jù)中。平臺運(yùn)維難
開發(fā)者需要考慮如何避免指標(biāo)數(shù)據(jù)中攜帶高基標(biāo)簽,有些時候因為后端 TSDB(Time Series Database)性能的不足,無奈將高基 Tag 字段轉(zhuǎn)換為 Metrics,甚至丟棄;限制觀測數(shù)據(jù)的猖獗增長,在復(fù)雜的采樣策略之間權(quán)衡選擇以降低數(shù)據(jù)量,但通常會在某次問題排查時發(fā)現(xiàn)數(shù)據(jù)不全而無法進(jìn)行;維護(hù)復(fù)雜的可觀測平臺,他們通常有著負(fù)載均衡、消息隊列依賴。隨著復(fù)雜度的增長,可觀測性平臺本身的可觀測性能力同樣也成為問題。
二、DeepFlow可觀測性平臺
云杉網(wǎng)絡(luò)在SDN及云網(wǎng)絡(luò)領(lǐng)域深耕近十年,逐步從SDN核心技術(shù)走向IT系統(tǒng)的自動化和可觀測性,率先推出了DeepFlow云原生可觀測性平臺,面向混合云、容器、微服務(wù)的全棧虛擬化環(huán)境,實現(xiàn)對網(wǎng)絡(luò)、系統(tǒng)、應(yīng)用的全棧指標(biāo)和全鏈路追蹤,結(jié)合云資源知識圖譜實現(xiàn)100+維度指標(biāo)數(shù)據(jù)的動態(tài)標(biāo)注,擁有零侵?jǐn)_部署的特性。獲得眾多大型銀行的青睞和認(rèn)可,成為商用的云原生監(jiān)控產(chǎn)品,并在近百家重點行業(yè)的企業(yè)云數(shù)據(jù)中心得到廣泛應(yīng)用。
隨著云時代為了讓業(yè)務(wù)運(yùn)行更加穩(wěn)定、業(yè)務(wù)創(chuàng)新更加高效,開發(fā)、運(yùn)維、SRE團(tuán)隊對可觀測性的需求空前高漲,但不同的團(tuán)隊所選擇的可觀測性方案和實踐路徑又各有不同,從應(yīng)用開發(fā)團(tuán)隊看來可觀測性建設(shè)已成為一項必要工作。
為幫助大家有效應(yīng)對以上困境,正式將DeepFlow核心的可觀測性數(shù)據(jù)流引擎開源,這一個為云原生應(yīng)用開發(fā)者建設(shè)可觀測性能力而量身打造的全棧、全鏈路、高性能數(shù)據(jù)引擎,能夠顯著降低開發(fā)者的埋點、插碼、維護(hù)負(fù)擔(dān),通過 AutoTagging 機(jī)制打破數(shù)據(jù)孤島,解鎖數(shù)據(jù)下鉆能力;基于創(chuàng)新的高性能 SmartEncoding 機(jī)制告別高基煩惱和資源焦慮;利用DeepFlow的可編程能力和開放接口,開發(fā)者可以快速將其融入到自己的可觀測性技術(shù)棧中。
三、開源的DeepFlow(原名:MetaFlow)有什么優(yōu)勢?
全棧
DeepFlow開源版使用 AF_PACKET、BPF、eBPF 技術(shù)實現(xiàn)的 AutoMetrics 機(jī)制,可以自動采集任何應(yīng)用的 RED性能指標(biāo),精細(xì)至每一次應(yīng)用調(diào)用,覆蓋從應(yīng)用到基礎(chǔ)設(shè)施的所有軟件技術(shù)棧。在云原生環(huán)境中,DeepFlow開源版 的 AutoTagging 機(jī)制自動發(fā)現(xiàn)服務(wù)、實例、API的屬性信息,自動為每個觀測數(shù)據(jù)注入豐富的標(biāo)簽,從而消除數(shù)據(jù)孤島,并釋放數(shù)據(jù)的下鉆能力。
全鏈路
DeepFlow開源版使用 eBPF 技術(shù)創(chuàng)新的實現(xiàn)了 AutoTracing 機(jī)制,在云原生環(huán)境中自動追蹤任意微服務(wù)、基礎(chǔ)設(shè)施服務(wù)的分布式調(diào)用鏈。在此基礎(chǔ)上,通過與 OpenTelemetry 的數(shù)據(jù)集成,將 eBPF Event 與 OTel Span 自動關(guān)聯(lián),實現(xiàn)完整的全棧、全鏈路追蹤,讓追蹤無盲點。
高性能
DeepFlow開源版創(chuàng)新的 SmartEncoding 標(biāo)簽注入機(jī)制,能夠?qū)?biāo)簽數(shù)據(jù)的存儲性能提升 10 倍,從此告別高基標(biāo)簽和數(shù)據(jù)采樣焦慮。使用 Rust 實現(xiàn) Agent,擁有極致處理性能的同時保證內(nèi)存安全。使用 Golang 實現(xiàn) Server,重寫了 Golang 的 map、pool 基礎(chǔ)庫,數(shù)據(jù)查詢和內(nèi)存申請均有近10倍的性能提升。
可編程
DeepFlow開源版目前支持了對 HTTP、HTTPS、Dubbo、MySQL、Redis、Kafka、MQTT、DNS協(xié)議的解析,并將保持迭代增加更多的應(yīng)用協(xié)議支持。除此之外,DeepFlow開源版計劃基于 WASM技術(shù)提供了可編程接口,讓開發(fā)者可以快速具備對私有協(xié)議的解析能力,并可用于構(gòu)建特定場景的業(yè)務(wù)分析能力,例如 5GC 信令分析、金融交易分析、車機(jī)通信分析等。
開放接口
DeepFlow開源版支持接收廣泛的可觀測數(shù)據(jù)源,并利用 AutoTagging 和 SmartEncoding 提供高性能、統(tǒng)一的標(biāo)簽注入能力。支持插件式的數(shù)據(jù)庫接口,開發(fā)者可自由增加和替換最合適的數(shù)據(jù)庫。向上為所有觀測數(shù)據(jù)提供統(tǒng)一的標(biāo)準(zhǔn) SQL 查詢能力,便于使用者快速集成到自己的可觀測性平臺中,也提供了在此基礎(chǔ)上繼續(xù)開發(fā)方言 QL 的可能性。
易于維護(hù)
DeepFlow開源版僅由 Agent、Server 兩個組件構(gòu)成,將復(fù)雜度隱藏在進(jìn)程內(nèi)部,將維護(hù)難度降低至極致。DeepFlow Server 集群可對多資源池、異構(gòu)資源池、跨 Region/AZ 資源池中的 Agent 進(jìn)行統(tǒng)一管理,且無需依賴任何外部組件即可實現(xiàn)水平擴(kuò)展與負(fù)載均衡。
四、為什么要開源?
建設(shè)可觀測性已經(jīng)成為云原生應(yīng)用開發(fā)者的必要工作,然而現(xiàn)有的解決方案正悄無聲息的消耗著開發(fā)者越來越多的時間。開發(fā)者需要考慮如何為新的框架插入追蹤代碼?如何為新的語言增加打樁點?如何為每條日志和指標(biāo)注入上百個標(biāo)簽?如何維護(hù)越來越復(fù)雜的可觀測性數(shù)據(jù)平臺?這些工作嚴(yán)重擠占了業(yè)務(wù)開發(fā)工作的時間。
開源DeepFlow是云杉網(wǎng)絡(luò)送給新時代開發(fā)人員、運(yùn)維人員的一份禮物。希望開發(fā)人員能有更多的時間聚焦在業(yè)務(wù)上,將可觀測性更多的交給自動化的 DeepFlow,讓自己的代碼更清晰整潔。通過DeepFlow,希望讓觀測更自動,讓開發(fā)者更自由。
五、擁抱DeepFlow!
你是否正在規(guī)劃或者實施云原生可觀測性、提升網(wǎng)絡(luò)故障定位效率的項目?
你是否正在頭痛數(shù)據(jù)孤島、資源開銷的問題?Metrics、Tracing、Logging三類數(shù)據(jù)無法關(guān)聯(lián)、無法流通,使用困難?
你是否正在經(jīng)歷追蹤和日志數(shù)據(jù)體量大,經(jīng)常需要削足適履,做采樣抹掉高基數(shù)字段?
非常歡迎你通過 GitHub/微信 的方式聯(lián)系我們體驗DeepFlow。
免責(zé)聲明:市場有風(fēng)險,選擇需謹(jǐn)慎!此文僅供參考,不作買賣依據(jù)。
標(biāo)簽:
- 云杉網(wǎng)絡(luò)DeepFlow核心的可觀測性數(shù)據(jù)流引擎正式開源
- 交付速度堪比直線加速!智己L7成35萬+累計交付最快破千車型
- 以科技創(chuàng)新為根本,紫建電子引領(lǐng)行業(yè)高質(zhì)量發(fā)展
- 倍思65W氮化鎵充電器:用美學(xué)設(shè)計和高實用性征服消費者
- 千億級產(chǎn)業(yè)集群+億級出貨量 BOE(京東方)持續(xù)加大柔性O(shè)LED產(chǎn)業(yè)布局
- 打響營銷升級之戰(zhàn),大腦袋傳媒幫企業(yè)做好品牌傳播
- 什么是6P全自動循環(huán)洗地?XWOW曉舞R2新品上市
- 勤哲Excel服務(wù)器無代碼實現(xiàn)養(yǎng)雞場報表統(tǒng)計管理系統(tǒng)
- 保險公司拖賠或拒賠怎么辦?法保咨詢來教你!
- 泉意品牌背后致勝的王牌究竟是什么?