djangocmdb cmdb是什么

經過兩年多的努力,在 2020 年微眾銀行智能化運維建設終于取得了明顯成效,在智能監控領域的異常識別及根因定位方面發揮了巨大作用,甚至可以做到了秒級異常發現與定位 。CMDB 系統(配置管理平臺 Configuration Management Datebase)作為智能化運維體系的基石與保障,除了承擔存儲和元數據支撐以外,也為智能化運維體系的正常運作、敏捷擴展提供了有力保障 。本文將結合具體實踐,介紹微眾銀行面向智能化運維的 CMDB 系統構建歷程以及實施效果 。
前文回顧專題 | 智能時代下的運維
圖 1 微眾銀行配置模型框架
圖 2 CMDB 系統 API 接口在線調試功能
3.微服務架構下的 CMDB 3.0
隨著外圍系統對 CMDB2.0 的依賴越來越大,系統間調用關系越來越復雜,CMDB2.0 各模塊耦合高,一個服務節點同時支持規則、審計,報表、接口等功能,如果一個功能點異常可能會影響整個平臺服務 。于是,CMDB3.0 進行了微服務架構升級,把系統接口調用、web 用戶訪問,規則處理、數據處理等按功能模塊抽離成單個微服務應用,使用 Dubbo 框架進行微服務治理,另外 3.0WEB 前端是基于 VUE 自研的框架,改善了用戶體驗,提高了團隊開發協作能力,降低了開發風險 。
djangocmdb cmdb是什么


圖 3 CMDB 演進過程
圖 4 服務器生命周期狀態變更流程
2.與多個運維工具對接,促進數據消費,提高數據流動性
結合實際運維場景,與其他運維平臺聯動,數據被積極消費,在其他工具中體現 CMDB 信息的最大價值 。數據被廣泛應用才能保持鮮活的生命力 。如同池塘里的水,只有水不斷流動和交替,水質才能清澈 。基于靈活 API 服務,微眾銀行 CMDB2.0 已實現與 ITSM、監控平臺、容量平臺、應用發布平臺、基礎科技工具平臺以及智能化運維平臺等系統對接 。用一個子系統從設計態到運形態的整個生命周期為例,展示數據聯動的消費及流動過程如下 。
djangocmdb cmdb是什么


圖 5 CMDB 和各運維系統交互實現數據消費及流動
3.通過規則校驗以及人工審計確保及時發現和修復異常數據
為了保證數據準確性,通過規則校驗、系統之間的信息同步比對以及人工抽樣審核的方式的定期審計 。持續檢視和優化生命周期管理,不斷改善數據質量 。微眾銀行關鍵配置項準確率達到 99% 以上 。
表 1:CMDB 自動審計規則示例
配置項 自動審計規則 服務器
  • 主機下關聯應用實例,主機狀態不是“已分配”,服務器狀態不是“已投產”
  • 主機類別是容器母機,對應服務器類別不是容器;
  • 已分配狀態主機沒有部署應用;
業務應用
  • 業務應用狀態“已上線”所屬子系統狀態不是“已上線”;
  • 子系統狀態為“已下線”,仍部署業務應用;
【djangocmdb cmdb是什么】圖 6 CMDB 數據輔助智能監控系統故障定位、根因分析
CMDB 的構建仍是一個持續迭代優化過程,2020 年我們基于微服務構建 CMDB3.0,期望 CMDB 能夠通過開源平臺的方式提供服務,同時實現配置項自動發現,圖像化元數據關系展示以及數據異常自動化修復等方面進一步提升 。未來 CMDB 的運行效果我們會繼續分享給大家,希望大家持續我們的演進腳步 。如果希望了解我們在智能運維中使用的機器學習算法以及支持根因分析的具體方法,請參閱該系列其他文章 。
作者簡介
本文作者為微眾銀行智能運維系統高級產品經理 楊芳
延伸閱讀:

推薦閱讀