一個完善的基礎資源資料庫是我們構建運維自動化上層應用的基礎,所以構建CMDB系統成了有想法在DevOps運維自動化領域有所發展的企業離不開的重要一環,但受制於每家企業不同的內外部環境、資源配置以及管理方式各不相同,開發一套相對通用的CMDB系統就變得非常困難,這也是為什麼現在市面上開源的CMDB系統很多,但使用都不是很廣泛的主要原因
近段時間偶然發現了一款開源的CMDB系統,構建足夠靈活,功能相對完善,使用體驗也不錯,於是深入研究,瞭解了其設計思路,更是受益頗多。我們自己也有構建基礎資源資料庫,目前已成功管理了生產環境所有的資源,更是成為團隊小夥伴每天必用的趁手工具,落地效果還不錯,這篇文章我就結合自己構建CMDB的經驗來介紹下這個開源的CMDB系統:維易CMDB,同時推薦給大家
系統介紹
模型
一個完善的CMDB需要管理企業內的所有資源,不僅是伺服器,不僅是資料庫,而是所有對我們重要的資源,不僅有硬體,還包括軟體,這些資源每個企業可能都不一樣,那麼要構建相對通用的CMDB,支援自定義資源模型就成了必須的
維易CMDB支援自定義資源分組,例如伺服器、資料庫等等,支援自定義資源型別,例如物理機、MySQL等等,支援自定義資源屬性,例如伺服器名稱、內網IP等等,支援自定義資源模型與模型之間的關聯,例如網路卡關聯到伺服器、伺服器關聯到應用、應用關聯到產品等等,支援為模型新增自定義的觸發器,例如模型資料變化自動通知、自動呼叫WebHook實現更靈活的控制等等,支援屬性的自動發現採集更新,例如雲上資源自動同步、自定義發現外掛等等,支援關係的自動發現更新,例如網路卡自動與主機關聯關係、nginx直接與伺服器關聯關係等等。這一段我連續說了好幾個支援、自定義,足以看出它的靈活以及強大
關係
模型與模型之間的關聯關係可以自定義,模型與模型之間的關係還能自動發現自動關聯。同時維易CMDB還會根據模型的關聯關係自動生成業務關係拓撲,業務關係、資源關聯清晰明瞭
根據業務關係拓撲使用者也可以根據自己的業務需要或查詢習慣自定義服務樹,根據服務樹來查詢資源或許更符合我們的使用習慣
查詢
足夠靈活的配置讓我們能夠管理所有你想要管理的資源。當然資源管理只是構建CMDB的第一步,更為重要的是要CMDB為我們提供準確的資料,為上層業務服務,這就對於資料的查詢和應用顯得尤為重要,維易CMDB的查詢語法非常靈活,支援多種資源多種屬性多種關係的組合查詢,可以清晰準確的定位目標資源,同時也有完善的API提供,方便與其他系統整合
許可權
除了靈活的模型定義,清晰的資源關係,強大的資料查詢,資料的許可權控制也非常的重要,維易CMDB的許可權控制也非常靈活,許可權控制點很多,所有能看到點選單,所有自定義的模型都有許可權控制,許可權控制粒度比較細,控制到了物件級別,甚至還能針對模型的欄位來進行許可權控制
比較有意思的是還支援透過觸發器來實現動態授權,支援對資源進行批次授權和許可權回收
審計
僅僅有授權還不夠,配合上操作審計才完整,維易CMDB有著非常完善的審計機制,所有的資料變化都能在審計日誌中記錄,許可權最小化,操作有記錄,全面保障系統安全
大盤
Dashboard不僅能夠全面的反映當前資源的使用情況,老闆也是非常的喜歡,維易CMDB不僅有大盤,還支援自定義,自定義圖表型別,自定義圖表樣式,根據自定義條件實時計算展示的資料,不僅能夠做到好看,更能做到有用
個人看法
透過我自己簡單的試用和潛伏社群對開發團隊的瞭解,分享一點我自己不成熟的看法,一家之言,各位看個熱鬧就好
優勢:
-
系統很強大,設計很巧妙,如果使用得當應該能滿足很多企業的基本使用需求
-
系統有很多值得借鑑的地方,例如自定義模型、強大的查詢語法和許可權設計等等,值得認真推敲學習
-
社群比較活躍,尤其是微信群幾乎是有問必答,雖然公眾號文章閱讀量跟我一樣少的可憐,但文章內容質量不錯
-
開源,這個無需多說,向開源致敬
提升:
-
配置較為複雜,想要做通用,適應更多的場景,複雜似乎是沒有辦法的事情,但這對新手和非技術人員很不友好,其實大部分企業對資源都是一樣的,如果能內建更多的模型或者有模型市場之類的可以直接使用,那就會簡單很多
-
體驗可以更好,配置太複雜了,能否可以從使用體驗上做減法,例如新增預設角色,降低授權難度,例如最佳化服務樹,基於服務樹進行授權管理等等
總結一下就是系統很棒,值得好好學習,如果你是專業的技術人員,那這個系統使用起來應該難度不大,同時也能真的解決問題,如果你非技術那使用起來就有一定難度了,不過好在社群活躍,支援到位,多問問問題不大
線上體驗
最後附上專案Github地址:https://github.com/veops/cmdb
官方還提供有線上Demo可以體驗,README有地址和賬號密碼,如果想要進社群微信群也可以直接私信我
覺得不錯的話請不要吝惜star,好專案值得被更多的人發現,真誠的希望維易CMDB發展的越來越好,造福更多的運維同行