吳楷 王創


摘 要
隨著電廠信息系統規模不斷擴大,系統運行中問題出現的頻率及復雜度也相應增加。為更加高效的監控信息系統運行狀態、提升問題預警、分析、處理水平,筆者梳理重要信息系統拓撲邏輯,設計了信息系統運行參數的實時數據獲取及詳細信息分析和展示邏輯,基于市場主流參考平臺,設計并實施上線信息系統監控平臺。本文描述了信息系統監控平臺的主要技術設計方案、實現及應用效果。
關鍵詞
信息系統;監控;運維工作;技術設計方案
中圖分類號: TP399-C2 ? ? ? ? ? ? ? ? ? ? 文獻標識碼: A
DOI:10.19694/j.cnki.issn2095-2457.2020.19.082
0 背景
隨著電廠信息化建設的持續進行,信息系統的規模及內容均不斷擴大,系統運行中問題出現的頻率及復雜度也相應增加。然而,一段時期以來,由于缺乏高效和自動化的監控手段,對于重要信息系統的運行狀態的監控主要靠運維人員定期巡檢完成。人工巡檢可能出現對問題檢測的遺漏,往往是用戶告知系統出現了問題,才介入處理故障。基于這種情況,提出一套完善的解決方案以自動化的監控重要信息系統運行狀態,當出現異常時可及時通知運維人員介入處理變得十分必要。
1 系統選型
經深入調研市場上現有的監控系統,發現絕大部分監控系統是用于監控服務器硬件或網絡設備(如:CPU占用、IO吞吐量、網絡流量、風扇轉速、溫度、網絡數據包等),以信息系統為核心的監控系統可參考的非常稀少,不能完全滿足核電廠信息系統監控的多方面的需求。
最終,我們選擇在服務器系統監控平臺上有一定積累的廠商作為合作方,以項目形式開展合作。該系統監控平臺是以硬件及網絡設備監控為主體構建,在合作過程中,我方提出系統的整體設計方案、關聯邏輯及信息系統結構、數據展現、計算和告警設計方案。這些內容構成了最終成形的信息系統監控平臺的核心和基礎設計。該平臺整體底層架構穩定,上層應用層支持多樣化的數據展現,并結合我方設計方案進行了全面重構,增加了部分專用信息系統監控的功能模塊。
2 設計與實施
2.1 系統核心功能設計
設計的整體目標是:掌握信息系統的整體健康水平和變化趨勢;通過模擬用戶對信息系統的日常登錄操作的方式,進行用戶模擬監控,感知信息系統是否正常;實時監控應用所依托的各基礎資源的狀態,實時了解業務整體運行狀態;通過用戶側模擬和基礎資源兩個維度的監控,依據對具體監測點配置的健康度算法,完成對信息系統的實時監控。
2.1.1 整體展現結構設計
系統設計為通過瀏覽器界面展現納入統一監控管理的電廠信息系統的全景/分系統結構圖。
該結構圖上,系統與系統之間以線條相連,系統自身以氣泡加英文文字的形式指示系統當前的可用性情況,并可根據系統當前運行的總體情況顯示系統健康度(系統健康度規則及相關權重可后臺自定義配置)。
系統間關聯的線條可展示其互相依賴和關聯的特性,并可在后臺將這些關聯系統配置為一個整體的系統進行統一的狀態監控。
對于信息系統相關服務的詳細運行參數,提供詳細的信息展現頁面(頁面包含正常運行期間的參數信息展示及異常、告警階段的參數信息展示及日志記錄入口),可以展現當前最新狀態信息。全景/分系統結構圖界面如圖1所示。
2.1.2 監測點設計
每個監測點可以自定義設置在整體業務/信息系統中的健康分值。整體業務/信息系統的健康度為所有監測點健康度總和。監測點實時健康度的計算方式為監測點實時指標取值后結合閾值設置,判斷當前監測點是否處于告警狀態、處于何種告警狀態(紅、黃、綠三種狀態)。通過預先設置的紅、黃、綠三種狀態對應的權重,進行本監測點實時健康度計算。業務/信息系統實時健康度的計算方式為本業務下所有監測點實時健康度總和除以所有監測點設置健康度分值總和的比值,以百分比顯示。
監測點的閾值點一般為三個,代表嚴重,重要,正常。并設置當前業務點的得分占所有應得總分的百分比rate,按照如下規律進行判斷,如匹配到判斷邏輯1,則退出,不進行邏輯2和3的比較。健康度、實際取值、獲取時間,健康度通過實際取值換算得到,具體邏輯如下:
判斷邏輯1,當rate>重要閾值點,業務點為綠色,當前業務得分為所有子點的得分總和;判斷邏輯2,當重要閾值點=>rate>緊急閾值點,業務點展示黃色;判斷邏輯3,當rate<=緊急閾值點,業務點展示為紅色。
2.1.3 信息系統狀態監測
采用在監控平臺的探針服務器上部署Python腳本的方式,監控平臺服務器定期調用腳本模擬用戶對被監控信息系統的訪問操作,并根據返回的HTTP報文判斷訪問的成功與否。系統同時根據訪問時長及其他關鍵參數,按照監測點配置的分值和權重計算得出最終的健康分值。
此種方式為基于我方設計實現的監控平臺的擴展性開發,具有較為廣泛的可擴展性。目前主要監控信息系統是否可訪達以及是否可以登錄,后續還擬進一步擴展為可針對具體的業務場景監控是否可執行相應的操作,以使對信息系統的監控粒度更為具體。
如下為詳細過程:
利用Firefox瀏覽器插件進行Selenium URL腳本錄制,錄制的腳本可以導出成為Python,根據實際需求修改完善Python腳本。信息系統監控平臺的探針服務(Probe)啟動后,自動定期調用Python腳本。主要監測范圍包括:
(1)健康狀態,可告警。
(2)連接時間,為性能指標,可告警。
(3)關鍵指標點,使用Python采集數據進行對應的抓取分析,可告警。
前文已敘述,基于Selenium錄制的腳本可以定期由信息系統監控平臺服務探針(Probe)調用,基于探針服務,當我們把業務信息系統的各種基礎資源都分別加入探針的監控范圍后,就可以建立我們的業務信息系統模型了,全部的信息系統監控即依托這個模型開展。信息系統監控詳情頁面見圖2。
2.1.4 FTP及文件服務器狀態監測
針對FTP監測點的監控,本平臺中主要是對FTP可用性、響應時間等進行實時監測。設計采用登錄后上傳文件和下載文件對目標端進行連接,并反映FTP的上傳下載速率,在性能歷史走勢圖反映此FTP的性能。
連接到在遠程主機上的FTP服務器后,監控平臺向服務器程序發出命令,服務器程序執行所發出的命令,并將執行的結果返回到客戶機。例如,向服務器傳送某一個文件的一份拷貝,服務器會響應這條命令,將指定文件送至服務器的機器上
對于文件服務器的掛載狀態,由信息系統監控平臺執行腳本監控,上傳測試文件到掛載點對應的文件服務器,并執行定時任務登錄目標服務器,監測是否可訪問到對應的測試文件,并根據返回的狀態碼判斷掛載狀態是否正常。
2.2 報表設計特點
基于信息系統監控平臺已有的基本報表功能,設計并實現了專用于信息系統的運行監控報表。可統計所監控信息系統的服務容器,運行狀態情況,參數詳細,可精確到日,也可擴展到周、月。
2.3 其他功能設計特點
信息系統監控平臺與短信及郵件關聯,當出現異常告警時,將第一時間通知對口的信息系統負責人及時干預處置。
3 管理效益
自設計、實施并上線信息系統監控平臺后,信息系統日常運維工作得到了信息化手段的有效支撐,運維工作效率和效果得到優化和提升,體現為:
(1)對于信息系統的運行狀態具備了全局同時監控的能力,節省人力投入。
(2)信息系統出現異常狀態時,可及時通知到對應的系統負責人,及時干預處置,減少信息系統的故障或異常停機時間,更加有效的支撐電廠各項生產支持和經營管理工作。
(3)報表功能可詳細統計和分析特定信息系統一段時期內的運行狀態和經常出現的問題,便于集中識別、分析、處理多發的難點問題。
4 結論
通過有效識別信息系統日常運維中的痛點和難點,并設計出契合自身實際需要的信息系統監控綜合方案,電廠將信息系統日常運維納入信息系統監控平臺進行集中管理。通過深入的需求分析、合理的系統設計,結合合作單位的開發和實施,最終在一定程度上實現了信息系統監控的自動化,有效地減少了人工巡檢頻次,提高了運維工作效率。