特來電CMDB應用實踐


        配置管理數據庫(Configuration Management Database,以下簡稱CMDB)是一個老生常談的話題,不同的人有不同的見解,實際應用時,因為企業成熟度以及軟硬件規模不同,別人的成功經驗很難直接復制,因此用好了會成為整個應用系統的基石,用不好就成了雞肋。特來電雲平台在規划伊始,便意識到了CMDB的重要性,在實踐中不斷豐富完善其內容,探索出了一條行之有效的輕量級CMDB建設之路,下面筆者具體談一下應用實踐思路,希望能給感興趣的同行帶來一些共鳴。

一、整體架構

        特來電雲平台是互聯網架構的分布式應用平台,但CMDB的設計初衷卻是中心化的,這樣便於為上面的應用層提供統一的數據變更處理,保證各應用系統共享一致性的配置數據,整體架構如下所示:

        1.應用層

        特來電雲平台是CMDB支撐的上層分布式高並發高可用系統,作為一個支持“全生命周期管理”的技術服務平台,主要由三大子平台構成:開發交付平台、公共技術平台、運維管理平台,分別對應一個應用系統全生命周期中的開發時、運行時以及運維時,整體架構圖如下所示:

 

        2.管理層

        硬件資產管理主要管理物理的數據中心、應用主機,以及邏輯上划分出的服務單元、應用集群、應用節點等;軟件資產管理主要管理關鍵應用以及應用程序定義、應用程序實例(進程);應用配置管理主要管理應用運行時需要用到的各種靜態或動態參數;軟硬件資產申請主要管理各產品研發團隊發布應用時,需要用到的硬件資產,以及需要注冊的軟件資產基礎數據,通過與自動運維系統打通,申請通過后,可以進行應用主機的部署以及應用程序的初始化;數據准確性校驗一是通過初期對軟硬件資產的正確盤點,二是通過與監控系統打通,定時將收集上來的數據與CMDB存儲的基礎數據進行自動校對,必要時根據校驗的異常信息進行人工校對,從而保證CMDB基礎數據的絕對准確;數據統計分析報表主要從運營的角度對軟硬件資產及應用配置進行如數家珍的圖形化展示,以及統計應用主機利用率、分析使用成本等,為機器升降配置、擴縮容量提供有力的數據支撐。

        3.存儲層

         作為輕量級的CMDB系統,考慮到集中存儲以及數據一致性,通過關系型數據庫即可滿足應用配置以及訪問查詢需求。

二、核心模型

        傳統應用中,CMDB作為ITIL(Information Technology Infrastructure Library,信息技術基礎設施庫)關鍵模塊中的基礎,主要面向硬件資產,涉及的內容及流程模型比較重,而一些創新型的中小型互聯網公司,大部分采用的是公有雲,不需要管理自建機房,更多關注軟件資產,因此如果直接使用標准的CMDB系統,往往會感到水土不服,失敗案例比較多。通過研究業界主流做法以及結合自身實踐,特來電雲平台經過不斷探索,認為構建一個輕量級的CMDB系統,應該以關鍵應用為抓手,將雲上輕量的硬件資產以及軟件資產進行統一協調管理,核心模型如下:

 

        1.硬件資產模型

        在強調高可用的互聯網領域,建設多個數據中心(一主多從),構建多地多活應用,越來越成為主流趨勢,並且同一個數據中心的雞蛋也不是放在一個籃子里,而是通過服務單元進行Set化管理,每個籃子(Set)作為一個更細粒度的封閉部署單元,都可以對外提供同樣服務,這種多Set化方式,更加靈活的提高了應用的可用性;同時一個Set又繼續細分為多個應用集群,為了能最大化復用應用主機,每個物理的應用主機上抽象出了多個邏輯的應用節點,就像在一個機器上,部署了多個虛擬的應用容器,因此每個應用集群不是由應用主機直接構成,而是由應用節點構成。

        2.軟件資產模型

        一個復雜的業務應用平台,必定是由很多應用構成的,識別出這些具有技術及業務功能屬性的關鍵應用,就是抓住了整個應用平台的牛鼻子。關鍵應用可以按業務線進行划分,既包括可視化的系統,也包括非可視化的系統,每個系統都由一定數量的應用程序構成,每個應用程序都會有對應的實例,也就是最終運行在每個應用節點上的應用進程,每個應用進程可以通過應用主機、進程名以及部署路徑進行唯一確定。通過這種從上到下的模型抽象,為准確監控應用系統運行狀態並且及時定位應用系統運行故障,提供了深入到進程級別的有力支撐。

三、應用實踐

        特來電雲平台基於CMDB在應用層面做了大量實踐,積累了很多典型應用場景,以下概要談一下在運維方面的應用場景。

        1.監控預警

        整個監控預警系統完全架構在CMDB之上,一方面監控預警的對象來自於CMDB中的基礎數據,另一方面監控收集上來的基礎數據,要定時與CMDB中的基礎數據進行校對,如果有異常時,會通過預警通知運維人員,以保證CMDB數據的絕對准確。

        2.應用拓撲大屏

        應用拓撲大屏是對CMDB系統的實時展現,可以全方位查看整個系統的運行狀態,同時與預警系統打通,當有預警發生時,會將對應應用節點標紅,點擊該節點,可以查看預警信息,並進一步聯查全鏈路信息,直至鑽取到存儲在大數據系統中的異常信息,實現了多個系統數據聯動。

        3. 智能運維

        智能運維是目前運維界的主流發展趨勢,目的是通過機器學習的方式來進一步解決自動化運維所未能解決的問題,提高系統的預判能力、穩定性、降低IT成本,並提高企業的產品競爭力。特來電雲平台在系統智能運維方面進行了探索性嘗試,目前已經初見成效。當有預警發生時,通過計算預警攜帶的CMDB信息,一方面通過自動運維進行場景化處理,比如回收Web站點應用程序池、重啟應用程序、轉儲應用日志等,通過這種點殺方式,防止預警事件進一步惡化為系統故障,另一方面利用機器學習算法,對預警發生時的數據進行決策分析,嘗試找到預警發生的根因,以期后面從源頭上切斷預警發生的條件。

四、總結

       基於公有雲的CMDB建設需要采用集中化的輕量級解決方案,以業務線的關鍵應用為抓手,打通業務系統與CMDB之間的數據通道,讓數據流動起來,最大化發揮CMDB的價值;同時要保證CMDB基礎數據的絕對准確,為上層應用提供一致性的數據支撐。

五、特來電雲計算與大數據微信公眾號

1.微信公眾號名稱:特來電雲計算與大數據

 2.二維碼:

 

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM