基於Elasticsearch生長的SREWorks數據化運維體系

開源Elasticsearch是一個基於Lucene的實時分散式的搜索與分析引擎,是遵從Apache開源條款的一款開源產品,是當前主流的企業級搜索引擎。作為一款基於RESTful API的分散式服務,Elasticsearch可以快速地、近乎於准實時地存儲、查詢和分析超大數據集,通常被用來作為構建複雜查詢特性和需求強大應用的基礎引擎。

2017年,阿里雲攜手Elastic合作推出了阿里雲Elasticsearch服務,在100%兼容開源功能的同時,支援開箱即用、按需付費。通過 Elastic 創新的檢索技術與阿里雲自研的雲原生高性能內核、達摩院 NLP 分詞與向量檢索等能力,幫助企業客戶提升業務成效,並節約費用支出。在切實提高企業應用程式性能的同時,提升業務的敏捷性和智慧化,縮短解決問題所需時間,使客戶可以專註於自身業務創新。

基於”源於開源,又不止於開源”的產品理念,阿里雲Elasticsearch持續在包含智慧運維在內的可觀測場景進行雲原生引擎能力升級,作為業內首個Serverless Elasticsearch雲服務,雲上日誌增強引擎可提供基於讀寫分離架構的Indexing Service寫入加速服務、Openstore海量存儲服務,從而實現Elasticsearch寫入及存儲Serverless,為用戶帶來更低成本、更高性能、更簡單易用的全觀測場景能力。

ELK作為業界處理與分析日誌首選的解決方案,由搜索引擎Elasticsearch、採集與解析工具 Logstash、輕量級採集組件Beats、可視化分析工具Kibana等工具組成,形成了一整套生態矩陣。目前阿里雲已經成功將全套ELK搬到了雲上為用戶提供服務,可以被廣泛應用於實時日誌處理、全文搜索和數據分析等領域。SREWorks正是基於以Elasticsearch為主的生態矩陣,構建了一套應用全觀測數據化運維最佳實踐。

1. 數據化運維體系是什麼

數據化運維體系,是一套把所有系統的運維數據採集起來、真正打通,深度挖掘這些數據的價值,通過數據驅動運維並為運維提供數據決策,同時能將生產系統進行「運維量化管理」的數據化運維業務模型。基於該模型建立標準化運維數倉,建設數據運維平台,在平台中規範運維數據的採集,存儲,計算以及分析,並提供一系列數據化服務,供上層運維場景使用。

2. SREWorks數據化運維平台

SREWorks數據化運維平台包含一個核心和多個數據服務,一個核心即運維數據倉庫,提供標準運維數據模型;多個數據服務即圍繞運維數據的採集、存儲、計算以及分析的數據化鏈路,提供的規範化數據服務,支撐應用的運維量化。

運維數倉

基於開源Elasticsearch建設標準化運維數倉,抓住數據化運維本質,抽象三大數據主題和九個數據域,內置涵蓋雲原生數據運維場景的數據實體和數據模型。數倉具備靈活的用戶自定義實體/模型能力,充分滿足用戶的個性化需求。

數倉數據後端採用Elasticsearch存儲,其分散式索引架構、多副本、索引生命周期管理以及數據冷熱存儲分離等特性,很好的滿足了數倉的穩定性和動態性基本特性。同時可以對接多種數據處理工具(Logstash、Spark、Flink、APM Server),最終數據落地Elasticsearch,支撐起整個運維數倉的存儲和檢索能力。


數據採集服務

集成metricbeat、filebeat、skywalking等數據採集agent,以全託管方式,進行可觀測數據採集,包括Node/Pod/Container資源/負載指標、狀態指標、運維事件、Prometheus外圍指標、服務(容器)日誌採集解析、服務追蹤調用鏈採集分析等。metricbeat支援基於標籤的服務自動發現能力,默認監聽10800埠,主動採集滿足標籤條件服務上報的業務指標數據。

作業平台採集場景服務,屬於自研數據採集服務,支援多種數據採集腳本,關聯數倉模型,通過SREWorks運維數倉託管業務的運維數據。


數據計算/分析服務

開源Apache Flink是一個⼀站式實時大數據分析平台,通過標準SQL降低業務開發門檻,提供端到端實時數據分析能力。同時內置常規數據處理UDF(閾值檢測、數據聚合、數據降取樣),支撐時序數據的流式加工處理。

作業平台數據化場景服務,覆蓋巡檢、分析、診斷等多個數據化場景,可自定義數據處理邏輯,滿足用戶個性化數據處理要求。


指標服務

** **提供指標定義和指標實例的配置與管理,已經內置基礎資源和基礎性能指標,用戶可以按需新增指標。新增指標可以關聯到採集場景服務,支援指標數據推送kafka隊列,用於進行下游數據計算消費。


數據集服務

數據集服務提供快速將運維數倉模型存儲數據表或者用戶自定義數據源表生成API的能力,用戶無需具備編碼能力,即可快速配置數據介面,實現數據的管理和消費。目前優先支援elasticsearch和mysql數據源。

3. 基於SREWorks數據化運維實踐

3.1 穩定性建設

服務鏈路全觀測建設

由於IT系統日益增加的複雜度、大量雲原生技術的採用,使得服務快速排障變得越來越難。而指標、日誌和追蹤三大可觀測性支柱,可以實現服務的白盒監控能力。

SREWorks數據平台集成metricbeat、filebeat、skywalking等數據採集agent和自研數據採集場景作業,提供全託管一站式可觀測數據採集能力,可以直接獲取運行系統的指標、日誌和調用鏈,協助問題的排查和診斷,縮短故障恢復時長(TTR)。


健康管理服務建設

為了幫助用戶更好的感知系統運行狀態,實現系統的監控管理,結合阿里Emon團隊的智慧檢測服務和自研作業場景服務,構築健康管理服務。包括事件採集管理、風險巡檢、指標告警檢測、異常診斷場景作業,幫助用戶識別風險、分析告警、進行異常診斷和自愈以及故障管理。

建設規範化健康管理平台,能夠降低或者消除系統隱患,盡最大可能將潛在故障扼殺在萌芽狀態。一旦故障發生及時通知關聯人員,進一步提升應對效率,確保行動的有效性。

3.2 成本建設

    當前雲原生服務成為雲計算主流的服務形態,但由於雲原生化的應用程式及其資源需求常常是動態變化,這也導致雲成本的計算複雜性。為此,SREWorks內置一套完整的成本管理解決方案,包含資源消耗計量計費的可視化、資源使用明細分析,用於輔助用戶優化和**治理**雲資源成本。

SREWorks系統設置下的成本定價模型,重點從資源層面(CPU、記憶體、存儲)進行成本核算。平台會自動按照應用粒度,每天進行應用資源用量和成本計費匯總,匯總數據自動同步至數據倉庫**應用成本模型(APP_COST)**存儲。

3.3 效率建設

    運維效率即運維活動的效率,代表了運維的平台化能力,包括自動化運維操作和自動化的構建部署等,而人效比是最能直接體現運維效率,衡量人力資源價值的指標。      

3.4 運營中心

     運營中心從品質、成本、效率三個維度,提供應用的實時健康分、健康實例統計、應用可用率、應用成本佔比、資源分配、運維人效、運維操作統計等關鍵數據看板,致力於保證用戶獲取準確可靠的應用運行狀況、健康趨勢、成本資源水位以及人力消耗,從而作出穩定性保障、預算準備、資源擴容等運維決策。

4. 結語

隨著阿里巴巴雲原生大數據運維平台SREWorks的開源,我們得以將其中的數據化運維思想和運維實踐分享給大家,拋磚引玉,希望能給大家帶來不一樣的思想碰撞。同時歡迎大家持續關注我們的開源數據化平台,期待與您進行溝通交流,一起推動雲原生數據化運維的發展建設。

項目地址://github.com/alibaba/sreworks

如需免費試用了解阿里雲ES請戳 阿里雲Elasticsearch

Tags: