自動化運維管理平臺設計

        互聯網發展到如今,對於一般企業線上線下機器成千上萬數量級已經是司空見慣。對於運維人員來說,手動去管理那一萬臺機器,簡直就是無法完成的任務。隨之而產生的 是運維自動化,幫助運維人員管理監控那一堆跑着各種各樣服務的機器。其實,到了今天這種地步,運維自動化早就是一種家常便飯的事情。開源社區或者是商業軟件有非常多監控、運維管理平臺。但是,就像穿衣服一樣,不是任何一件衣服穿上身都合適。所以,可以根據自己的情況,量身定做合適的自動化管理平臺,應該也是一個慢慢積累過程纔對。


1、需求分析

   

   管理機器:增加刪除管理機器功能。

   運營項目:增加刪除管理項目功能。

   監控報警:對機器、項目監控報警。

   問題跟蹤:機器、項目出現問題時,提供信息協助問題追蹤。

   角色管理:對登錄自動化管理平臺用戶角色管理功能。

   其他內容:其他一些後續拓展功能。


2、框架設計

   運維自動化管理平臺總體框架如下圖,提供一個對外管理接口進行操作,包括:對象管理、目標管理、角色管理、分析問題、運行信息、其他管理等六個方面。下面將對該六個模塊簡單分析,但是不再進行詳細的圖標說明。


  

   2.1對象管理

   管理對象分組、對象個體,錄入對象詳細信息。批量發送指令管理對象,獲取對象系統常見配置信息,管理對象系統常見配置。
   

   2.2目標管理

   管理目標分組、目標個體,錄入目標服務信息。自動化上傳目標依賴文件到對象,自動化部署運行服務。包括:批量上傳、批量部署、發送管理目標服務指令。
   

   2.3角色管理

   劃分管理員、運維人員、開發人員等用戶角色,管理員負責管理自動化平臺上面用戶權限,包括:添加用戶、刪除用戶、用戶角色劃分等待。運維人員負責對象管理、目標管理、分析問題、運行信息、其他管理等等一系列模塊。開發人員主要負責目標管理與分析問題兩個模塊。


   2.4分析問題

   支持對象歷史命令顯示,對象網絡自定義資源查詢展示,對象系統日誌自定義展示,目標訪問日誌、報警日誌自定義查詢展示。


   2.5運行信息

   對目標運行狀態、對象運行狀態信息採集,對對象本身健康狀態相關指數採集。以圖形界面方式直觀展示,配置規則超出正常指標通知運維組用戶。


   2.6其他管理

   根據後期的需求添加一些插件,或者修改後臺模塊實現程序,如:報警接口、集羣管理工具、驗證管理等等。


3、數據庫設計

   爲自動化運維管理平臺創建數據庫,設計數據表。用於記錄、展示對象與目標詳細信息,完成角色管理功能。同時,也保存對象各項健康指標信息。

   3.1對象數據記錄

   對象數據表保存對象各項信息,對象組數據表保存對象組各項信息,對象各項健康指標數據表保存各項健康指標週期性實時信息,對象運行狀態數據表保存對象週期性實時運行狀態。


   3.2目標數據記錄

     目標數據表保存目標各項信息,目標組數據表保存目標組各項信息,目標運行狀態數據表保存目標週期性實時運行狀態,目標與對象關聯數據表保存目標與對象、對象組綁定信息,目標組與對象聯數據表保存目標組與對象、對象組綁定信息。


   3.3角色數據記錄

   用戶數據表保存各個用戶的基本信息,管理員數據表保存管理員用戶信息,運維數據表保存運維人員信息,開發數據表保存開發人員信息,權限用戶表保存各個角色擁有各項權限信息。


   3.4其他數據

   一些安全認證、心跳連接等其他方面的數據信息。


   

4、後臺設計

   4.1初始化對象

   自動化平臺管理對象確認,後臺同步執行對象初始化。添加配置文件,寫入對象所屬組別。數據庫添加對象信息,添加對象組信息。後臺繼續配置對象的訪問方式,SSH的無密碼登錄或者是帶密碼登錄。這裏推薦使用無密碼方式登錄,採用密鑰方式登錄,可以不再使用口令認證。把口令一直保存在自動化平臺不是一種好的習慣。當然,第一次登陸還是需要口令,無密碼登錄認證成功後就不再需要密碼,這時需要加強角色的權限管理與安全保護。
   

   4.2管理對象

   初始化對象成功,自動化平臺開始執行對象配置、對象信息獲取、對象與目標綁定、目標服務部署、目標信息獲取等操作。後臺同步平臺操作確認,通過SSH無密碼方法登錄到對象,開始執行自動化平臺下發的操作命令,並且返回操作結果。
   

   4.3運行狀態

   獲取對象運行狀態、生命健康指標、目標運行狀態,實時反饋給自動化平臺圖形化展示。以上狀態信息超出正常健康範圍,調用報警接口通知運維人員。
   

   4.4異常處理

   初始化對象、管理對象等一系列操作出現異常情況,截取異常信息上報到自動化平臺,自動化平臺展示提示出現錯誤,展示異常信息。當然,執行指令成功也提示友好確認信息反饋給用戶。


5、總結

   這一次簡單的自動化運維管理平臺設計分析過程,全部都是從零開始,後面在實現過程中把各個模塊豐富填充。當然還會遇到一些問題,也沒有把網絡安全、主機安全、安全加固等功能模塊考慮進去,也沒有使用redis緩存。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章