文/楊秀云 郭磊 劉露 王玉軍
云計算數據中心移動運維管理系統的設計與實現
文/楊秀云 郭磊 劉露 王玉軍
隨著國內信息化的發展,云計算數據中心的應用越來越廣泛,承載的業務越來越多。不能將問題盡可能防患于未然,或發生警報不能及時解決,可能會造成業務中斷,甚至造成一些不可挽回的損失。但運維管理云計算數據中心的管理工具種類很多,每種管理工具常用功能相對單一,查看比較分散,消息通知不夠主動。將云計算數據中心各種管理工具的常用功能進行系統整合,及時將經常發生的警報消息推送給運維人員和領導,達到隨時隨地運維管理云計算數據中心的目的,是本系統主要研究內容。
云計算數據中心 常規巡檢 消息推送 閉環管理 漏警 移動運維
目前云計算數據中心的管理工具很多,如云計算管理平臺、基礎設施監控軟件、虛擬化監控軟件、殺毒監控軟件、網絡資源監控軟件、數據備份軟件等,但應用側重點不同,監控管理比較分散,并且發生警報后消息提醒不夠主動,一般只能人工主動打開管理工具查看,如果運維人員查看不夠及時,并不能在第一時間內得到警報。針對目前的云計算數據中心運維管理,本系統主要研究內容是如何將各管理工具的常用功能進行系統整合,警報發生后消息推送主動、及時、準確,并達到運維人員攜帶一款普通Android手機,能在第一時間內接收警報,完成故障診斷維修和常規巡檢等工作目的。消息推送給運維人員的同時,領導也收到消息,領導及時掌握云計算數據中心運行現狀,也對運維人員的工作起到監督與指導的作用。本系統還對系統化運維管理云計算數據中心做了一些功能補充,及無縫對接。
本文設計與實現的云計算數據中心移動運維管理系統的體系結構如圖所示。主要分后臺監控管理平臺(以下簡稱后臺)、移動運維手機終端(以下簡稱手持終端)和資源監控客戶端(以下簡稱客戶端)三大組件。
圖1中體現了數據的基本走向。資源監控客戶端定時向后臺監控管理平臺的數據層輸送數據,移動運維手機終端與后臺監控管理平臺數據共享,數據雙向傳輸。

圖1:系統體系結構圖
手持終端與后臺采用REST FUL接口,兩端的數據互通共享。
客戶端主要功能是定時探測虛擬主機的CPU、內存和磁盤容量及當前使用情況,以自定義協議的形式周期性發送給后臺的資源監控服務端(以下簡稱服務端)。
該軟件主要設計了IT設備運行狀態、在線主機、在線運維、常規巡檢、消息提醒、漏警通報、網絡工具、領導審批和資源分配等9種功能,由領導和運維人員兩種角色。角色不同,權限不同。領導角色,具有領導審批權限,和查看所有功能數據的權限;運維人員具有除領導審批權限的其他功能,但只能查看自己的數據。
IT設備包括服務器、存儲設備、備份一體機、空調、UPS供電設備等,設備的運行狀態描述了服務器的內存、CPU已用容量等,存儲設備和備份一體機的存儲使用量,空調、UPS供電設備的運行狀態。在線主機主要描述的虛擬主機的CPU、內存、磁盤使用情況,是否在線等狀態。IT設備運行狀態和在線主機的數據來自調用接口抽取的后臺對應功能的數據,隨查詢隨調取。
本軟件設計了自身的SQLite數據庫,主要保存在線運維和常規巡檢記錄。在線運維主要是根據接收的警報消息內容,記錄處理過程,也可以現場實物拍照,圖片與文字結合描述,保存到本地庫并上傳給后臺形成故障維修記錄,以供日后查閱統計。常規巡檢主要是記錄巡檢的設備對象、圖文內容、參與人員、時間等保存到本地庫并上傳給后臺形成常規巡檢記錄,如機房溫濕度、空調保養維護、IT設備的內存、CPU、磁盤使用情況等當前運行狀態。
消息提醒分三種,第一是主機資源使用情況的越閥警報,第二是網絡故障警報,第三是定期常規巡檢的內容周期性的提醒,類似手機日歷的活動提醒功能,都是后臺消息推送的。
網絡工具使用了PING技術和Telnet探測技術,方便現場網絡故障排查。
漏警是指消息推送后,24小時內后臺沒有收到運維人員的手持終端上傳的處理記錄,視為漏警。漏警通報的數據來源于后臺統計。
在運維人員資源分配時,首先接口調用后臺數據庫中當前的IT設備內存和存儲使用率,根據資源使用率最小優先使用的原則,推薦出虛擬主機優先運行的物理主機及虛擬主機的操作系統和數據磁盤掛載的存儲位置,并檢索目前的IP資源占用情況,自動及時推送出當前虛擬主機即將使用的局域網IP地址和互聯網IP地址。運維人員確認后調用接口更改后臺的資源分配狀態。
設計了一個線程Thread定時利用IP掃描技術和Telnet探測技術診斷云計算數據中心IT設備及各主機的網絡及服務端口暢通情況。一旦檢測到故障,立即觸發消息推送模塊,將消息及時推送到手持終端。
定時巡檢監控設備時,使用了類似內存緩存Cache技術,將所有監控設備對象的IP、端口信息緩存在Cache中,而不是直接從數據庫中獲取,這種方式主要優點是獲取設備對象速度快,又減少數據庫壓力。Cache的元素是新監控設備Device對象保存數據庫時裝入。
資源監控服務端,設計了一個線程Thread監聽約定的服務器端口,7X24小時監聽資源監控客戶端傳送的心跳包。接收到心跳包,建立一個子線程,解析自定義協議內容,根據系統預先設置的主機內存、CPU、磁盤等資源使用率的警報閥門,進行比對。資源使用率一旦超過預先設置值,立即觸發消息推送模塊,將消息及時推送給運維人員和領導。客戶端定時獲取主機的內存、CPU、磁盤容量及可用空間等信息封裝成自定義協議,建立TCP Socket套接字傳送給資源監控服務端。
資源管理和用戶服務功能是對云計算數據中心管理平臺的補充及無縫對接,以便網上辦公。資源管理設計了一個基本工作流程,用戶資源申請或資源變更→用戶所在部門的領導審批→數據中心部門領導審批→(或更高領導審批→)運維人員資源分配,箭頭走向是在審批通過的情況下進行,否則終止。資源管理的資源分配時使用了資源使用率最小優先使用的原則,這一原則與VMware中的DRS負載均衡原理相符合,所以資源管理中的虛擬主機的記錄信息與實際分布運行情況基本一致。
運維管理中常規巡檢和故障維修記錄的數據來源于手持終端的上報,后臺接收到運維人員上傳的記錄,立即消息推送通知更改領導的手持終端中對應記錄狀態,形成閉環管理。
警報閥門設置了主機的CPU、內存、存儲的使用情況警報,超過80%的黃色警報、超過90%的紅色警報。巡檢周期設置IT設備、空調和UPS供電設備的周期性巡檢及維護保養的內容,以供預期消息推送給運維人員和領導。
漏警通報,設計了一個線程,每天定時執行一次,比對消息推送內容與上報的記錄是否對應,如果比對出消息推送后12小時沒有得到對應的上報記錄,則產生一條漏警通報記錄。
云計算數據中心常發生的警報由CPU、內存、磁盤等資源使用情況警報,網絡故障警報、服務堵塞警報等,系統檢測到警報發生,消息推送給對應的運維人員和領導的手持終端,運維人員和領導幾乎同時接收到消息通知,消息通知的形式類似QQ或微信,聲音+內容,在手機通知欄呈現。
后臺的資源監控服務端獲得的CPU、內存和磁盤資源使用情況來自客戶端提取主機的資源數據的定時上報,與警報閥門比對,一旦高于閥門,發出黃色或紅色警報,則消息推送給運維人員和領導。
網絡故障警報、服務堵塞警報是由后臺的網絡監控模塊周期性探測設備的網絡暢通情況產生,一旦探測網絡故障,發出警報,消息推送給手持終端。
云計算數據中心常規巡檢的IT設備具有周期性特點,本系統將常規巡檢的設備對象及維護保養的內容進行周期設置。后臺設計了一個線程,每晚凌晨檢測是否具有一天間隔時間的常規巡檢內容,一旦檢測到,則在當天上午8點將消息推送給對應運維人員的手持終端。
后臺監控管理平臺部署在云計算數據中心的虛擬主機的Tomcat上,資源監控客戶端是直接放在被監控的設備對象的文件夾中,配置后臺所在的虛機的IP地址后,雙擊運行即可。移動運維手機終端安裝在Android操作系統的手機上。
搭建一個測試環境。三臺測試虛機A、B、C,一部安裝手持終端軟件的Android手機D(運維人員)、Android手機E(領導),并雙擊運行軟件,啟動部署后臺的Tomcat。分別在虛機A、B、C及Android手機D、E的瀏覽器上訪問后臺,測試是否能正常訪問。在后臺的設置主機資源使用情況警報,如CPU、內存和磁盤使用情況超過80%的黃色警報、超過90%的紅色警報等。
利用某些工具將虛擬主機A的CPU使用率、虛擬主機B的內存使用率、虛擬主機C的磁盤使用率分別超過黃色警報80%,在第一時間內查看Android手機D、E是否接收到消息通知,如果收到消息通知則說明警報成功傳送,運維人員根據警報內容查看,實物拍照及記錄上傳,登錄后臺監控管理平臺,在故障維修記錄中是否能查看到,并查看Android手機E的在線運維相關記錄是否是已完成狀態。
提出了一種移動運維云計算數據中心的系統設計與實現。系統以如何給運維人員帶來工作方便為設計主線,本系統設計了三條消息推送線路,實現了原定的方便、實用、安全、可靠的設計目標。云計算數據中心移動運維,不拘于時間和地點的限制,運維人員攜帶一款普通Android手機,可以隨時隨地進行常規巡檢及故障診斷維修工作,領導也可以隨時獲得云計算數據中心運行現狀及運維人員工作進度。
[1]黃志濤.基于云計算平臺的運維管理探究[J].數字技術與應用,2016(06):89-89.
[2]牛曉玲.云計算運維管理系統的框架研究[J].電信網技術,2015(02):5-8.
[3]李瑞,軍呂,江智霆.現代數據中心運維管理系統規劃與設計[J].科技創新導報,2015,12(09):10-10.
[4]焦紅煒.云計算數據中心運維管控研究[J].信息技術與標準化,2015(12).
作者單位 泰山醫學院現代教育技術中心 山東省泰安市271016