SREWorks 數智服務嘗鮮,你的數據準備好了嗎?

什麼是數智服務?

SREWorks 是一款基於「數據化、智慧化」理念構築的雲原生運維平台:以「數智」思想為內核,圍繞應用的交付、監測、管理、控制、運營、服務六部分,解決運維的「品質、成本、效率、安全」相關需求。

在 SREWorks 的開源社群以及各類諮詢中,很多用戶對其中的數智慧力表現出濃厚的興趣。但在目前的開源版本中,SREWorks 是圍繞企業應用,提供端到端的完整數智慧力,用戶需要將業務應用遷入 SREWorks 雲原生體系內,才能進一步體驗數智化能力。

因此,為了能讓用戶快速體驗 SREWorks 的數智慧力,領略數智化運維的魅力,SREWorks 團隊探索出了一個輕量化的數智服務方案,希望能為用戶解決比如像熱點機器等一些常見的運維痛點問題。

什麼是熱點機器

通常在一個集群中,小部分機器的 CPU 或者記憶體等指標過高,偏離了合理範圍,表現為當前集群在資源層面出現機器負載不均的現象,我們可以認為集群中存在熱點機器。在分散式系統里,尤其對於有狀態的業務集群,熱點機器的存在不僅會影響集群的穩定性,而且還會成為集群性能提升的瓶頸。也就是說,熱點機器是集群穩定性和集群水位提升的短板。

以實時計算 Flink 集群的 CPU 資源來看,如下圖所示。在集群調度層面所有機器的 CPU 資源分配水位是非常平均的,近乎持平。但在實際的運行過程中,由於調度層面不感知資源的物理使用,使得機器的 CPU 資源使用水位參差不齊,導致部分機器在某一維度的資源快速達到性能瓶頸,進而形成熱點機器。

為了提高業務集群的穩定性,需要找到集群中的這些熱點機器,進行熱點分析並解決。但是,尋找熱點機器也不僅僅依賴 CPU 指標這一項,記憶體、吞吐、磁碟等指標也都是判定標準,這麼多指標讓集群中的機器「橫看成嶺側成峰,遠近高低各不同」,使得熱點機器的定位和分析也變的棘手。於是 SREWorks 數智服務來了,我們以阿里雲日誌服務(SLS)智慧運維微應用的形式對外開放,這次首先推出的【機器畫像】功能就是要幫助用戶更好的解決熱點機器的發現和分析問題。

目前 SREWorks 數智服務已完成阿里雲核心大數據產品的指標數據接入,用戶也可以創建自己的服務實例,按照應用的使用規範,接入指標數據。

機器畫像

聚類分析是機器畫像場景的核心功能,基於演算法團隊的支援,將 SREWorks 尚未開源的演算法:多維度聚類,提前開放出來。同時根據指標數據進行演算法的自適應優化,用戶可以不需要感知複雜的演算法參數,得到準確的聚類分析結果。聚類分析可以支援超大規模集群(萬級別)的機器分析,主要包括單指標維度的機器熱點分析和多指標維度的機器聚類分析。

單指標維度的機器熱點分析,通過直方圖的形式,可以幫助用戶快速感知集群的機器分布概況,對集群的機器水位分布有一個整體認識。如下圖左側直方圖所示,集群的用戶 CPU 使用率整體維持在一個中低區間(<50%)水平,只有 1% 左右的機器 CPU 使用率超過 80%。

多指標維度的機器聚類分析,不僅內置了十多個典型的指標場景,用戶可以快速進行對比分析;同時也支援自定義指標選擇,用戶可以按需選擇合適的指標,進行聚類分析。

我們將多指標維度的聚類結果進行降維,把所有機器放到二維平面,即下圖左側的機器聚類分布散點圖,通過該散點圖,用戶可以直觀看到集群機器的聚類分組以及離群機器。

中間的雷達圖則可以幫助用戶進行各個分組(以及離群機器)之間的聚類指標值的對比,用戶可以很容易看出各分組間不同指標的差異,從另一層面來講,這也很好的解釋了分組結果的依據。

離群機器指標統計表和聚類機器指標統計表則按照單機將具體的指標值進行匯總統計(包括像機器指標當前值、機器所屬分組同類平均值、機器所屬分組同類最大和最小值、機器所屬分組同類中位值等),展示給用戶,為用戶進一步進行熱點機器分析提供數據支援。

此外,機器畫像場景還包含集群和單機維度的指標匯總和趨勢看板,包括 CPU 核數、記憶體總量、存儲總量、CPU 負載、存儲使用率、記憶體使用率以及流量等。

數據接入

最後,我們來看下如何進行數智服務的數據接入以及如何基於數據規範進行數據存儲。

用戶需要擁有阿里雲帳號,並開通了日誌服務(SLS),在日誌應用模組的智慧運維下找到 SREWorks 微應用,創建服務實例。

服務實例創建完成後,可以在實例的數據規範頁查看數據規範定義。數據指標主要分成四大類:CPU、MEM、DISK 和 NET,每個分類都定義了一些常用指標,用戶可以按需接入相對應的指標數據。有關具體的數據接入方案可以查閱 SLS 用戶手冊時序存儲數據接入說明或者實時計算 Flink 作業開發(SLS 結果表)相關內容。

數智服務的後端存儲依賴 SLS 的時序存儲(Metricstore,兼容 Prometheus 數據),用戶在創建數智服務實例後,系統會在關聯的 SLS Project 項目下自動創建默認名稱為 sw_node_metrics 時序庫,後續的指標數據都需要同步到該時序庫。

數據接入完成後,用戶就可以藉助機器畫像場景的能力,進行機器的熱點分析和聚類分析等。

指標格式示例:

__labels__:cluster#$#xyz|hostname#$#sreworks-host-a__time_nano__:1668646740000000__value__:96__name__:cpu_count  

複製程式碼

數據鏈路示例:

總結

以上就是 SREWorks 數智服務的機器畫像場景的主要功能,相較於 SREWorks 提供的端到端的數智慧力解決方案,基於 SLS 的 SREWorks 數智服務微應用以一種輕量化、全託管的方式,將 SREWorks 的數智慧力進行對外輸出,為用戶提供更低的接入使用門檻。當前僅開放機器畫像場景,後續會提供更多的運維場景的數智分析能力,包括像根因分析、智慧 QA 生成等場景。


SREWorks 開源地址:

//github.com/alibaba/sreworks

SREWorks 數智服務(日誌服務 SLS 微應用) 地址:

//sls.console.aliyun.com/lognext/app/sre