運維監控大數據的提取與分析

本文內容整理來自【敏捷運維大講堂】蔣君偉老師的線上直播分享。分別從以下3個維度來分享:1、云時代監控分析的窘境;2、使用標簽標記監控數據的維度;3、監控數據應用場景。

云時代監控分析的窘境

在虛擬化與容器技術廣泛應用的情況下,運維對象大規模地增長,監控平臺每天存儲的指標都以億計,所以監控數據如今已經成了大數據。傳統的監控工具在這種場景下,對于數據的提取分析,已經力不從心,反而成為了運維的負擔。

我們用一個典型的互聯網檔案分析應用舉例說明:

1.png

這個應用支持容災與負載均衡,它部署在三個數據中心,并同時提供服務;

應用按微服務思想設計,內部劃分為多個技術組件,包括APIGateway、檔案、登記、通知、支付及一些數據庫服務

技術組件可彈性擴縮容

這樣的應用目前很常見,它有這樣一些特征:

變:架構變、實例變

由于研發每周都在迭代,可能隨時都加增加新的技術組件種類,如增加一個MongoDB作為文檔類數據存儲;同時由于彈性擴縮容,每個技術組件的實例時刻也在變,比如下圖,就減少了一個檔案服務,增加了一個支付服務:

2.png

這給監控帶來了難題:如何監控經常變化的目標? 答案是:監控配置自動化,隨基礎架構擴展,并標記監控目標。

在Zabbix與UYUN Monitor產品中,都可以使用自動部署與發現來實現自動擴展監控。Zabbix主要使用標記與自動分組的方式,而Monitor則使用標簽的方式:

3.png

多:種類多、實例多

一個公司可能存在30多個這樣的集群應用,它使用上百種技術組件,數千個虛擬機或容器實例。如此大的規模,帶來了巨大的監控復雜度,新的難題是:我們變得更難預測的故障診斷場景!

我們舉幾個具體的場景來說明這點:

場景1:我想要知道所有的檔案查詢次數

檔案查詢次數是衡量整個應用業務量的一個重要指標,這個場景的難點是檔案服務是多實例的,并且分布在多個數據中心。針對這個場景,我們的解題思路是:合計所有數據中心的所有檔案服務的查詢API調用次數,即下圖中所有紅色部份:

4.png

使用Zabbix時,可以按如下步驟:

創建一個檔案服務group,包含所有數據中心的所有檔案服務

創建一個item,使用匯聚 groupfunc 合計 group 內的所有查詢API調用次數

使用UYUM Monitor時,則配置如下字符串即可:

m=sum:查詢API調用次數{技術組件=檔案服務}

實現效果:

5.png

場景2:我想知道APIGateway TCP連接數三個中心的各自占比

通過連接數占比,我們可以分析出各個數據中心的負載是否均衡。其解題思路是:獨立合計每個數據中心的APIGateway TCP連接數,即如下紅色部份:

6.png

使用Zabbix時,可以按如下步驟配置:

創建三個數據中心APIGateway group g1. 杭州東 APIGateway group g2. 杭州西 APIGateway group g3. 寧波 APIGateway group

創建對應item 分別統計其TCP連接數合計

使用UYUM Monitor時,還是配置如下字符串即可:

m=sum:TCP連接數{數據中心=*,技術組件=APIGateway}

實現效果:

7.png

場景3:我想知道各種服務的主機CPU平均利用率趨勢

通過將一些技術組件的CPU利用率在一個趨勢圖中顯示,我們可以利用指標間的正相關性,來分析組件間的影響,比如檔案服務的CPU利用率升高時,提供其數據的Redis服務CPU使用率也在升高。其解題思路為:分別為每種服務求得其主機CPU平均利用率,并在一個趨勢圖中展示。

使用Zabbix時,可以按如下步驟配置:

創建各個技術組件對應的group,包含:是APIGateway、檔案、登記、通知、支付、MySQL等等

創建對應item 分別統計其主機CPU利用率平均值

而使用UYUM Monitor時,依然是配置如下字符串:

起始時間=30分鐘前&m=avg:主機CPU利用率{技術組件=*}

實現效果:

8.png

使用標簽標記監控數據的維度

我們可以看出,Zabbix與Monitor針對一些數據的提取方式是不一樣的。Zabbix更多的是使用Group分組的方式,來梳理某些維度同類型的信息,這種方式是我們過去慣用的,組織一棵樹來抽象世界。

但是,世界其實是平的,各種事物實際上是平等存在的,只是它們有著各自的特性而已。所以,我們所需要的只是按需用這些特性標簽來提取它們。舉例來說,下圖就可以看到兩個主機的各種標簽:

9.png

使用UYUN Monitor時,可以按很多種不同的方式來建立標簽,包括:

1、安裝代理時指定

2、查看主機信息時指定

10.png

11.png

3、以及通過自定義腳本推送指標時指定 推送到本機代理:

12.png

在為監控對象建立好這些標簽后,我們就可以充分使用標簽帶來的便利,隨需查詢,不預設場景。

監控數據應用場景

新一代的監控系統,其本質實際上是一個監控大數據收集與分析平臺,它不限定監控底層的數據來源以便全面覆蓋運維對象,通過海量存儲與靈活的數據提取能力,為上層的各種運維場景,提供如大屏可視化、報警、分析報表等功能。

13.png

UYUN Monitor 也提供了多種上層的運維分析功能,包括:

1、個性豐富的儀表盤,能靈活提取各類監控數據按多種方式展現

14.png

2、指標的閾值檢查策略,能對集群指標進行綜合匯聚與告警

15.png

3、第三方數據查詢OpenAPI,提供數據的二次消費入口

16.png

可以看出,面對云時代,我們對監控系統的要求已經產生了變化,監控系統實際上已經轉變 為一個監控大數據收集與分析平臺,它不限定監控底層的數據來源以便全面覆蓋運維對象, 通過海量存儲與靈活的數據提取能力,為上層的各種運維場景,提供如大屏可視化、報警、 分析報表等功能。

本次主題《監控大數據的提取與分析》的分享希望對大家有所幫助,優云敏捷運維大講堂面向運維領域的技術分享、最佳實踐將不定期與大家見面,敬請期待。

講師介紹

蔣君偉

?  IT運維領域資深專家,優云軟件產品總監,擁有10年運維實戰經驗

?  先后研發了網絡管理、系統管理、CMDB、ITSM等產品,并成功建設了多個全國性的網絡運維管理項目

優云全線產品免費試用:https://www.uyun.cn

原創文章,作者:uyunops,如若轉載,請注明出處:http://www.www58058.com/65931

(0)
uyunopsuyunops
上一篇 2017-01-08
下一篇 2017-01-09

相關推薦

  • 2017全球運維技術大會第二屆12大技術專場等你來!

    去年9月,InfoQ在北京主辦了第二屆CNUTCon全球容器技術大會,大會邀請了來自Netflix、CoreOS、Docker公司、Mesosphere、阿里巴巴、騰訊、百度、京東、攜程、搜狗等公司的技術負責人,共同探討容器相關的應用場景、技術方案以及架構演進,得到了社區的一致好評。 到今年,CNUTCon已經是第三年了,前兩年我們的方向是容器,隨著技術的發…

    2017-06-20
  • 推薦-File System manager

    文件系統(File system) :     文件系統概要    文件系統的分類    文件系統的管理工具             mkfs btrfs ext xfs&nbsp…

    Linux干貨 2016-03-26
  • corosync + pacemaker搭建高可用mysql

    一、實驗圖     二、環境準備  1)確保時間同步 [root@SQL1 ~]# crontab -e  */5 * * * * /usr/sbin/ntpdate 172.16.2.15 [root@SQL2 ~]#…

    Linux干貨 2015-06-30
  • 推薦-LVS專題: LVS+Keepalived并使用DNS輪詢實現Director的高可用和負載均衡

    LVS專題: LVS+Keepalived并使用DNS輪詢實現Director的高可用和負載均衡 前言 什么是KeepAlived 實驗介紹 實驗拓撲 實驗環境 實驗步驟 配置KeepAlived(1) 實現Director 的VIP互為主從 測試 配置LVS 配置KeepAlived(2) 測試LVS 配置RS的IP和web服務 配置DNS 最終測試 總結…

    Linux干貨 2016-04-09
  • Bash學習基礎知識一“命令”

    Bash 學習基礎知識 目錄 一、Shell是個啥? 二、BASH的命令     2.1 命令的語法格式     2.2 什么是命令     2.4 命令的類型     …

    Linux干貨 2015-04-03
  • 分布式系統的事務處理

    當我們在生產線上用一臺服務器來提供數據服務的時候,我會遇到如下的兩個問題: 1)一臺服務器的性能不足以提供足夠的能力服務于所有的網絡請求。 2)我們總是害怕我們的這臺服務器停機,造成服務不可用或是數據丟失。 于是我們不得不對我們的服務器進行擴展,加入更多的機器來分擔性能上的問題,以及來解決單點故障問題。 通常,我們會通過兩種手段來擴展我們的數據服務: 1)數…

    Linux干貨 2016-08-15
欧美性久久久久