
論大數據對運維的意義
從三個層面論述大數據對運維的意義:
1、工程數據,譬如工單數量,SLA 可用性,基礎資源,故障率,報警統計
2、業務數據,譬如業務 DashBoard,Trace 調用鏈,業務拓撲切換,業務指標,業務基準數據,業務日志挖掘
3、數據可視化
當然,這篇文章談的是運維都有哪些數據,哪些指標,以及數據呈現。并沒有談及如何和大數據相關的架構做整合,從而能讓這些數據真的變得活起來。
上面的文字算引子,在步入正式的探討前,有一點我覺得值得強調:
雖然這里講的是如何將大數據思維/架構應用于運維,平臺化運維工作,但是和大數據本質上沒有關系,我們只是將大數據處理的方式和思想應用在運維工作上。所以,即使你現在所在的公司沒有數據團隊支撐,也是完全可以通過現有團隊完成這件事情的。
1 運維監控現狀
很多公司的運維的監控具有如下特質:
只能監控基礎運維層次,通過 zabbit 等工具提供服務器,CPU,內存等相關的監控。這部分重要,但確實不是運維的核心。
對業務的監控是最復雜的,而現在很多公司的要么還處于 Shell 腳本的刀耕火種階段,要么開發能力較強,但是還是東一榔頭西一棒子,不同的業務需要不同的監控系統,人人都可以根據的自己的想法開發一個監控的工具也好,系統也好,平臺也好??傊潜容^凌亂的。
使用第三方的監控平臺。這個似乎在 Rails/NodeJS/Pythone 相關語系開發的產品中比較常見。我不做過多評價,使用后冷暖自知。
當然也有抽象得很好的,比如點評網的運維監控據說就做得相當好,運維很閑,天天沒事就根據自己的監控找開發的茬,讓開發持續改進。不過他們的指導思想主要有兩個:
運維自動化。怎么能夠實現這個目標就怎么搞,這嚴重依賴于搞的人的規劃能力和經驗。
抽象化,根據實際面臨的問題做出抽象,得到對應的系統,比如需要發布,于是又發布系統,需要管理配置文件,所以有配管系統,需要日志分析所以有了有日志分析系統。然而這樣是比較零散的。
有點扯遠,我們還是 focus 在監控上。
如果以大數據的思維去思考,我們應該如何做好監控這件事情?
2 羅列出你的數據源
所有的數據源都有一個共性,就是日志。無論文本的也好,二進制的也好。所以日志是整個信息的源頭。日志包含的信息足以讓我們追查到下面幾件事情:
系統健康狀況監控
查找故障根源
系統瓶頸診斷和調優
追蹤安全相關問題
從日志我們可以挖掘出什么?
我覺得抽象起來就一個:指標。
指標可以再進行分類:
業務層面,如團購業務每秒訪問數,團購券每秒驗券數,每分鐘支付、創建訂單等
應用層面,每個應用的錯誤數,調用過程,訪問的平均耗時,最大耗時,95線等
系統資源層面,如 cpu、內存、swap、磁盤、load、主進程存活等
網絡層面,如丟包、ping 存活、流量、tcp 連接數等
每個分類里的每個小點其實都是一個指標。
3 如何統一實現
千萬不要針對具體問題進行解決,大數據架構上的一個思維就是:我能夠提供一個平臺讓大家方便解決這些問題么? 而不是,這個問題我能解決么?
先來看看架構圖:
因為目前我負責應用層的研發,業務還比較少,主要就需要監控三個系統:
1、推薦
2、搜索
3、統一查詢引擎
所以監控的架構設計略簡單些。如果你希望進行日志存儲以及事后批量分析,則可以采用淘寶的這套架構方式:
稍微說明下,日志收集 Agent 可以使用 Flume,鷹眼 Storm 集群,其實就是 Storm 集群,當然有可能是淘寶內部 Java 版的,Storm(或第一幅圖的 SparkStreaming)做兩件事情。
將日志過濾,格式化,或存儲起來
進行實時計算,將指標數據存儲到 HBase 里去
到目前為止,我們沒有做任何的開發,全部使用大數據里通用的一些組件。至于這些組件需要多少服務器,就看對應的日志量規模了,三五臺到幾百臺都是可以的。
需要開發的地方只有兩個點,有一個是一次性的,有一個則是長期。
先說說一次性的,其實就是大盤展示系統。這個就是從 HBase 里取出數據做展示。這個貌似也有開源的一套,ELK。不過底層不是用的 HBase 存儲,而是 ES。這里就不詳細討論。
長期的則是 SparkStreaming(淘寶是使用 Storm,我建議用 SparkStreaming,因為 SparkStreaming 可以按時間窗口,也可以按量統一做計算),這里你需要定義日志的處理邏輯,生成我上面提到的各項指標。
這里有一個什么好處呢,就是平臺化了,對新的監控需求響應更快了,開發到上線可能只要幾個小時的功夫。如果某個系統某天需要一個新的監控指標,我們只要開發個 SparkStreaming 程序,丟到平臺里去,這事就算完了。
第一幅圖的平臺我是已經實現了的。我目前在 SparkStreaming 上只做了三個方面比較基礎的監控,不過應該夠用了。
狀態碼大盤。HTTP 響應碼的 URL(去掉 query 參數)排行榜。比如你打開頁面就可以看到發生500錯誤的 top 100 的 URL,以及該 URL 所歸屬的系統。
響應耗時大盤。URL 請求耗時排行榜。比如你打開頁面就可以看到5分鐘內平均響應耗時 top 100 的 URL(去掉 query 參數)。
還有就是 Trace 系統。類似 Google 的 Dapper,淘寶的 EagleEye。給出一個唯一的 UUID,可以追蹤到特定一個 Request 的請求鏈路。每個依賴服務的響應情況,比如響應時間。對于一個由幾個甚至幾百個服務組成的大系統,意義非常大,可以方便的定位出到底是那個系統的哪個 API 的問題。這個最大的難點是需要統一底層的 RPC/HTTP 調用框架,進行埋點。因為我使用的是自研的 ServiceFramework 框架,通訊埋點就比較簡單。如果是在一個業務線復雜,各個系統使用不同技術開發,想要做這塊就要做好心理準備了。
現在,如果你想要監控一個系統是不是存活,你不在需要取寫腳本去找他的 pid 看進程是不是存在,系統發現在一定的周期內沒有日志,就可以認為它死了。而系統如果有異常,比如有大量的慢查詢,大盤一定能展示出來。
描述到這,我們可以看到,這套架構的優勢在哪:
基本上沒有需要自己開發的系統。從日志收集,到日志存儲,到結果存儲等,統統都是現成的組件。
可擴展性好。每個組件都是集群模式的,沒有單點故障。每個組件都是可水平擴展的,日志量大了,加機器就好。
開發更集中了。你只要關注日志實際的分析處理,提煉指標即可。
4 大數據思維
對于運維的監控,利用大數據思維,需要分三步走:
1、找到數據
2、分析定義從數據里中我能得到什么
3、從大數據平臺中挑選你要的組件完成搭積木式開發
所有系統最可靠的就是日志輸出,系統是不是正常,發生了什么情況,我們以前是出了問題去查日志,或者自己寫個腳本定時去分析?,F在這些事情都可以整合到一個已有的平臺上,我們唯一要做的就是 定義處理日志的的邏輯 。
這里有幾點注意的:
如果你擁有復雜的產品線,那么日志格式會是一個很痛苦的事情。以為這中間 Storm(或者 SparkStreaming)的處理環節你需要做大量的兼容適配。我個人的意見是,第一,沒有其他更好的辦理,去兼容適配吧,第二,推動大家統一日志格式。兩件事情一起做。我一個月做不完,那我用兩年時間行么?總有一天大家都會有統一的日志格式的。
如果你的研發能力有富余,或者有大數據團隊支撐,那么可以將進入到 SparkStreaming 中的數據存儲起來,然后通過 SparkSQL 等做即席查詢。這樣,有的時候原先沒有考慮的指標,你可以直接基于日志做多維度分析。分析完了,你覺得好了,需要固化下來,那再去更新你的 SparkStreaming 程序。
數據分析咨詢請掃描二維碼
若不方便掃碼,搜微信號:CDAshujufenxi
CDA數據分析師證書考試體系(更新于2025年05月22日)
2025-05-26解碼數據基因:從數字敏感度到邏輯思維 每當看到超市貨架上商品的排列變化,你是否會聯想到背后的銷售數據波動?三年前在零售行 ...
2025-05-23在本文中,我們將探討 AI 為何能夠加速數據分析、如何在每個步驟中實現數據分析自動化以及使用哪些工具。 數據分析中的AI是什么 ...
2025-05-20當數據遇見人生:我的第一個分析項目 記得三年前接手第一個數據分析項目時,我面對Excel里密密麻麻的銷售數據手足無措。那些跳動 ...
2025-05-20在數字化運營的時代,企業每天都在產生海量數據:用戶點擊行為、商品銷售記錄、廣告投放反饋…… 這些數據就像散落的拼圖,而相 ...
2025-05-19在當今數字化營銷時代,小紅書作為國內領先的社交電商平臺,其銷售數據蘊含著巨大的商業價值。通過對小紅書銷售數據的深入分析, ...
2025-05-16Excel作為最常用的數據分析工具,有沒有什么工具可以幫助我們快速地使用excel表格,只要輕松幾步甚至輸入幾項指令就能搞定呢? ...
2025-05-15數據,如同無形的燃料,驅動著現代社會的運轉。從全球互聯網用戶每天產生的2.5億TB數據,到制造業的傳感器、金融交易 ...
2025-05-15大數據是什么_數據分析師培訓 其實,現在的大數據指的并不僅僅是海量數據,更準確而言是對大數據分析的方法。傳統的數 ...
2025-05-14CDA持證人簡介: 萬木,CDA L1持證人,某電商中廠BI工程師 ,5年數據經驗1年BI內訓師,高級數據分析師,擁有豐富的行業經驗。 ...
2025-05-13CDA持證人簡介: 王明月 ,CDA 數據分析師二級持證人,2年數據產品工作經驗,管理學博士在讀。 學習入口:https://edu.cda.cn/g ...
2025-05-12CDA持證人簡介: 楊貞璽 ,CDA一級持證人,鄭州大學情報學碩士研究生,某上市公司數據分析師。 學習入口:https://edu.cda.cn/g ...
2025-05-09CDA持證人簡介 程靖 CDA會員大咖,暢銷書《小白學產品》作者,13年頂級互聯網公司產品經理相關經驗,曾在百度、美團、阿里等 ...
2025-05-07相信很多做數據分析的小伙伴,都接到過一些高階的數據分析需求,實現的過程需要用到一些數據獲取,數據清洗轉換,建模方法等,這 ...
2025-05-06以下的文章內容來源于劉靜老師的專欄,如果您想閱讀專欄《10大業務分析模型突破業務瓶頸》,點擊下方鏈接 https://edu.cda.cn/g ...
2025-04-30CDA持證人簡介: 邱立峰 CDA 數據分析師二級持證人,數字化轉型專家,數據治理專家,高級數據分析師,擁有豐富的行業經驗。 ...
2025-04-29CDA持證人簡介: 程靖 CDA會員大咖,暢銷書《小白學產品》作者,13年頂級互聯網公司產品經理相關經驗,曾在百度,美團,阿里等 ...
2025-04-28CDA持證人簡介: 居瑜 ,CDA一級持證人國企財務經理,13年財務管理運營經驗,在數據分析就業和實踐經驗方面有著豐富的積累和經 ...
2025-04-27數據分析在當今信息時代發揮著重要作用。單因素方差分析(One-Way ANOVA)是一種關鍵的統計方法,用于比較三個或更多獨立樣本組 ...
2025-04-25CDA持證人簡介: 居瑜 ,CDA一級持證人國企財務經理,13年財務管理運營經驗,在數據分析就業和實踐經驗方面有著豐富的積累和經 ...
2025-04-25