翻譯 Skywalking 可擴展的觀測

Skywalking 可擴展的觀測

原文地址

http://skywalking.apache.org/blog/2020-08-11-observability-at-scale/

SkyWalking不斷發(fā)展以解決觀測的可擴展性問題秽褒,并從純跟蹤系統(tǒng)發(fā)展為功能豐富的觀測平臺廉油,該平臺現(xiàn)已用于分析每天收集數(shù)百億次跟蹤的大型系統(tǒng)。

SkyWalking解愤,Apache的頂級項目,是用來解決21世紀那些增長迅速城侧、分布式蹦误、異構(gòu)化系統(tǒng)的問題的開源APM和觀測分析平臺。為了解決當前系統(tǒng)管理員碰到的問題:在大量相互依賴的服務中識別和定位針胚嘲,在多語言應用程序之間獲取“Apples to Apples”指標作儿,以及獲得完整而有意義的性能視圖。

譯者注:apples to apples 意思是有意義地比較慢逾,比如將HBase和Sqllite進行比較立倍,幾乎沒有意義

SkyWalking是一個整體平臺,可以觀察網(wǎng)格上或網(wǎng)格外的微服務侣滩,并可以使用輕量級負載提供一致的監(jiān)視口注。

設計可擴展

當SkyWalking于2015年首次初始化時,其主要用例是監(jiān)視中國頂尖電信公司君珠,中國聯(lián)通和中國移動的第一代分布式核心系統(tǒng)寝志。 在2013-2014年間,電信公司計劃用分布式系統(tǒng)替換其舊的傳統(tǒng)單體應用程序策添。 從第一天起材部,支持超大型分布式系統(tǒng)和可擴展性便是高優(yōu)先級的設計目標。 那么唯竹,可擴展設計中的核心是什么乐导?

推還是拉

推模型或者拉模型跟數(shù)據(jù)流相關(guān)。如果agent收集數(shù)據(jù)并且將數(shù)據(jù)推送到后端進行后續(xù)分析處理浸颓,我們叫做推模型物臂。關(guān)于推模型和拉模型的爭論已經(jīng)持續(xù)了很長時間。對觀測系統(tǒng)來說产上,重要的是最小化agent的消耗棵磷,可適配不同類型的觀測數(shù)據(jù)。

收集數(shù)據(jù)后晋涣,Agent會在短時間內(nèi)將數(shù)據(jù)發(fā)送出去仪媒。這樣,我們就不必擔心本地緩存過載谢鹊。一種典型的情況是Endpoint(HTTP的URI算吩,gRPC的服務)的metrics留凭。任何服務都可以輕松擁有數(shù)百個甚至數(shù)千個Endpoint。 APM系統(tǒng)必須具有這些指標分析功能赌莺。

此外冰抢,metrics并不是觀測領域中唯一的事物。 跟蹤和日志也很重要艘狭。 SkyWalking旨在在生產(chǎn)環(huán)境中提供100%的采樣率跟蹤功能挎扰。 顯然,推送模式是唯一的解決方案巢音。

同時遵倦,本機使用推模式并不意味著SkyWalking不能進行數(shù)據(jù)提取。 在最新的8.x版本中官撼,SkyWalking支持從Prometheus儀表支持的服務中獲取數(shù)據(jù)梧躺,以減少最終用戶的非重復工程。 同樣傲绣,拉模式在基于MQ的傳輸中很流行掠哥,通常作為Kafka consumer。 SkyWalking agent 使用推模式秃诵,而OAP服務器使用拉模式续搀。

結(jié)論:推模式是原生方式,但是拉模式在某些特殊情況下也適用菠净。

譯者注:推拉模型還跟您的網(wǎng)絡規(guī)劃息息相關(guān)禁舷,如果您的Skywalking服務器沒有和服務面對面網(wǎng)絡打通,那么拉模型幾乎不可能實現(xiàn)

監(jiān)控指標分析不僅僅只是數(shù)學計算

度量標準依賴于數(shù)學理論和計算毅往。 百分位數(shù)是識別長尾問題的好方法牵咙,合理的平均響應時間和成功率是良好的SLO。 但是攀唯,這些還不是全部洁桌。 分布式跟蹤不僅提供具有詳細信息的跟蹤,而且還提供可以分析的高價值指標侯嘀。

Ops和SRE團隊需要提供服務拓撲圖另凌,以用于NOC儀表板和確認系統(tǒng)數(shù)據(jù)流。 SkyWalking使用STAM(流拓撲分析方法)從跟蹤分析拓撲残拐,或者在服務網(wǎng)格環(huán)境中基于ALS(Envoy 訪問日志服務)進行分析。 無法從簡單的指標SDK提取節(jié)點(服務)和線路(服務關(guān)系)的拓撲和指標

img

與解決Endpoint metics收集的限制一樣碟嘴,SkyWalking也需要從跟蹤數(shù)據(jù)中進行端點依賴關(guān)系分析溪食。 端點依賴性分析提供了更重要和更具體的信息,包括上游和下游娜扇。 這些依賴關(guān)系和度量標準可幫助開發(fā)人員團隊將性能問題的邊界定位到特定的代碼塊错沃。

img

預計算還是查詢階段計算栅组?

查詢階段計算更加靈活。在分析階段進行預計算枢析,提供了更好更穩(wěn)定的性能玉掸。再次申明一下設計原則:Skywalking面向大型分布式系統(tǒng)。查詢階段的計算范圍非常有限醒叁,并且大多數(shù)指標計算都需要預先定義和預先計算司浪。 支持大型數(shù)據(jù)集的關(guān)鍵是在設計級別縮小數(shù)據(jù)集的大小。 預先計算允許將原始數(shù)據(jù)合并到下游的匯總結(jié)果中把沼,以用于查詢甚至進行警報檢查啊易。

指標的TTL是另一個重要的業(yè)務推動因素。 由于預計算可以使查詢提供近乎線性的性能饮睬,并且使用類似的查詢基礎結(jié)構(gòu)租谈,組織可以提供更高的TTL,從而提供了擴展的性能可視性捆愁。

說到警報割去,查詢階段的計算也意味著警報查詢需要基于查詢引擎。 但是在這種情況下昼丑,當數(shù)據(jù)集增加時呻逆,查詢性能可能會不一致。 進行指標查詢也是一樣的(也會不一致)矾克。

今天的案例

如今页慷,SkyWalking正在監(jiān)控許多大型企業(yè)中的超大規(guī)模分布式系統(tǒng),其中包括阿里巴巴胁附,華為酒繁,騰訊,百度控妻,中國電信以及各種銀行和保險公司州袒。在線服務公司的流量比傳統(tǒng)公司(如銀行和電信供應商)更多。

SkyWalking是可觀察性平臺弓候,用于分布式系統(tǒng)的各種用例郎哭,這些用例在許多方面(注:如規(guī)模,語言等)都非常大:

  • 拉勾網(wǎng)菇存,在線求職平臺
    • SkyWalking監(jiān)控超過100個微服務夸研,500多個jvm實例
    • SkyWalking每天收集和分析四十億條跟蹤,以分析性能數(shù)據(jù)依鸥,包括30萬多個端點和依賴項的指標
    • 整個集群超過50000消息每秒
  • 永輝超市亥至,在線服務
    • SkyWalking每天使用指標來分析至少百億+(3B)跟蹤
    • SkyWalking的第二個較小的部署,每天分析2億+條跟蹤
  • 百度,互聯(lián)網(wǎng)AI公司姐扮,k8部署
    • SkyWalking每天從提供120多種服務的1,400多個Pod中收集1T +跟蹤
    • 隨著更多服務的添加絮供,規(guī)模繼續(xù)擴大
  • 貝殼找房
    • 從一開始就使用SkyWalking,并且在PMC團隊中有兩名成員茶敏。
    • 部署每天收集16+億條跟蹤
  • 阿里云霄(Ali Yunxiao)壤靶,阿里云上的DevOps服務
    • SkyWalking每天收集和分析數(shù)十億個Spans
    • SkyWalking使AliCloud的45個服務和約300個實例保持穩(wěn)定
  • 最大的企業(yè)對消費者在線零售商之一阿里巴巴天貓的一個部門,從淘寶網(wǎng)分拆出來
    • 定制版本的SkyWalking每天監(jiān)控數(shù)十億次跟蹤
    • 同時惊搏,他們正在利用SkyWalking的代理技術(shù)堆棧構(gòu)建負載測試平臺贮乳,并利用其跟蹤和上下文傳播功能

總結(jié)

SkyWalking的觀測方法遵循以下原則:

  • 理解邏輯模型:不要將可觀察性視為數(shù)學工具。
  • 首先確定依賴性胀屿,然后確定其指標塘揣。
  • 擴展應該輕松而原生地完成。
  • 保持不同體系結(jié)構(gòu)之間以及APM本身性能的一致性宿崭。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末亲铡,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子葡兑,更是在濱河造成了極大的恐慌奖蔓,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,907評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件讹堤,死亡現(xiàn)場離奇詭異吆鹤,居然都是意外死亡,警方通過查閱死者的電腦和手機洲守,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,987評論 3 395
  • 文/潘曉璐 我一進店門疑务,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人梗醇,你說我怎么就攤上這事知允。” “怎么了叙谨?”我有些...
    開封第一講書人閱讀 164,298評論 0 354
  • 文/不壞的土叔 我叫張陵温鸽,是天一觀的道長。 經(jīng)常有香客問我手负,道長涤垫,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,586評論 1 293
  • 正文 為了忘掉前任竟终,我火速辦了婚禮蝠猬,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘统捶。我一直安慰自己榆芦,他們只是感情好敦姻,可當我...
    茶點故事閱讀 67,633評論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著歧杏,像睡著了一般。 火紅的嫁衣襯著肌膚如雪迷守。 梳的紋絲不亂的頭發(fā)上犬绒,一...
    開封第一講書人閱讀 51,488評論 1 302
  • 那天,我揣著相機與錄音兑凿,去河邊找鬼凯力。 笑死,一個胖子當著我的面吹牛礼华,可吹牛的內(nèi)容都是我干的咐鹤。 我是一名探鬼主播,決...
    沈念sama閱讀 40,275評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼圣絮,長吁一口氣:“原來是場噩夢啊……” “哼祈惶!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起扮匠,我...
    開封第一講書人閱讀 39,176評論 0 276
  • 序言:老撾萬榮一對情侶失蹤捧请,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后棒搜,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體疹蛉,經(jīng)...
    沈念sama閱讀 45,619評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,819評論 3 336
  • 正文 我和宋清朗相戀三年力麸,在試婚紗的時候發(fā)現(xiàn)自己被綠了可款。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,932評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡克蚂,死狀恐怖闺鲸,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情陨舱,我是刑警寧澤翠拣,帶...
    沈念sama閱讀 35,655評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站游盲,受9級特大地震影響误墓,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜益缎,卻給世界環(huán)境...
    茶點故事閱讀 41,265評論 3 329
  • 文/蒙蒙 一谜慌、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧莺奔,春花似錦欣范、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,871評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽妨蛹。三九已至,卻和暖如春晴竞,著一層夾襖步出監(jiān)牢的瞬間蛙卤,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 32,994評論 1 269
  • 我被黑心中介騙來泰國打工噩死, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留颤难,地道東北人。 一個月前我還...
    沈念sama閱讀 48,095評論 3 370
  • 正文 我出身青樓已维,卻偏偏與公主長得像行嗤,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子垛耳,可洞房花燭夜當晚...
    茶點故事閱讀 44,884評論 2 354

推薦閱讀更多精彩內(nèi)容

  • 洞察你的服務:使用Kiali觀測你的微服務應用 微服務架構(gòu)可視化的重要性: 痛點:服務間依賴關(guān)系錯綜復雜問題排查困...
    端碗吹水閱讀 1,252評論 0 2
  • 夜鶯2517閱讀 127,720評論 1 9
  • 版本:ios 1.2.1 亮點: 1.app角標可以實時更新天氣溫度或選擇空氣質(zhì)量栅屏,建議處女座就不要選了,不然老想...
    我就是沉沉閱讀 6,896評論 1 6
  • 我是一名過去式的高三狗堂鲜,很可悲既琴,在這三年里我沒有戀愛,看著同齡的小伙伴們一對兒一對兒的泡嘴,我的心不好受甫恩。怎么說呢,高...
    小娘紙閱讀 3,388評論 4 7
  • 這些日子就像是一天一天在倒計時 一想到他走了 心里就是說不出的滋味 從幾個月前認識他開始 就意識到終究會發(fā)生的 只...
    栗子a閱讀 1,621評論 1 3