朱天華 陳志軍 張振京
中國鐵路設(shè)計集團(tuán)有限公司信息化院 天津 300251
云計算和數(shù)據(jù)分析是當(dāng)今最受關(guān)注的兩大IT技術(shù),云計算可以增強(qiáng)業(yè)務(wù)靈活性,增加工作效率提高生產(chǎn)力,數(shù)據(jù)分析則提供有價值的洞察,幫助企業(yè)打造競爭優(yōu)勢,推動收益增長。此項云應(yīng)用平臺產(chǎn)品已在中國鐵路設(shè)計集團(tuán)有限公司推廣應(yīng)用,企業(yè)員工逐步將工作環(huán)境遷移到云平臺上。在傳統(tǒng)的云平臺和虛擬化環(huán)境中,對云主機(jī)的監(jiān)控管理和數(shù)據(jù)分析仍過于粗放,面對上百臺部署的云應(yīng)用虛擬主機(jī),管理員很難及時定位并解決故障。同時,各個主機(jī)及用戶的數(shù)據(jù)雖然統(tǒng)一存儲,但仍相互隔離,基于云平臺的統(tǒng)一數(shù)據(jù)分析仍然較為困難。經(jīng)過長期的數(shù)據(jù)分析及經(jīng)驗積累,我們發(fā)現(xiàn)云主機(jī)最常見的故障就是RDP連接超時和自身系統(tǒng)故障(應(yīng)用程序CPU、內(nèi)存資源的無限占用)。在這種背景下,我們基于微軟的RDP控件及WMI技術(shù),設(shè)計開發(fā)了可以實時對云主機(jī)集群進(jìn)行監(jiān)控、故障報警恢復(fù)及數(shù)據(jù)分析的“云應(yīng)用服務(wù)器自動化監(jiān)控告警軟件”,以解決云應(yīng)用平臺實際生產(chǎn)應(yīng)用中的RDSH主機(jī)監(jiān)控管理和數(shù)據(jù)分析問題。
目前,越來越多的企業(yè)開始創(chuàng)建高效、靈活的云平臺環(huán)境,我們所開發(fā)的云應(yīng)用平臺正是這樣一套環(huán)境。云平臺具有很高的靈活性,可以根據(jù)每一位企業(yè)用戶的需求來評估最佳實踐方案。例如,已支持內(nèi)部私有云環(huán)境的企業(yè)可選擇添加大數(shù)據(jù)分析至內(nèi)部服務(wù),一方面保護(hù)私有云中的敏感數(shù)據(jù),另一方面利用私有云中的重要數(shù)據(jù)資源和應(yīng)用程序。
通過云平臺收集的海量數(shù)據(jù)來源是多種多樣的,具有數(shù)據(jù)價值密度低的特點(diǎn),需要通過一系列的數(shù)據(jù)分析流程才能加以利用。例如將無用重復(fù)的數(shù)據(jù)過濾并去除,根據(jù)業(yè)務(wù)需求對大量數(shù)據(jù)進(jìn)行聚合和分類管理,將非結(jié)構(gòu)化或半結(jié)構(gòu)化的數(shù)據(jù)結(jié)構(gòu)化并存儲到數(shù)據(jù)庫中。通過云平臺數(shù)據(jù)分析,可以應(yīng)用于數(shù)據(jù)監(jiān)控及實時告警、提供專屬報告和分析、自動數(shù)據(jù)挖掘有效信息、提供API擴(kuò)展接口等。
云平臺數(shù)據(jù)分析的一個重要應(yīng)用領(lǐng)域是云平臺的運(yùn)營維護(hù)。云應(yīng)用平臺部署了上百臺RDSH主機(jī)集群為用戶提供云應(yīng)用服務(wù),當(dāng)RDSH主機(jī)發(fā)生故障時,管理人員需要及時發(fā)現(xiàn)故障并恢復(fù)RDSH主機(jī)服務(wù)。這就需要管理人員可以實時監(jiān)控全部云應(yīng)用主機(jī)的運(yùn)行狀態(tài),分析發(fā)現(xiàn)問題主機(jī)。通過長期的數(shù)據(jù)積累分析,甚至可以達(dá)到預(yù)測主機(jī)故障的目標(biāo)?;谶@種需求,我們設(shè)計了云應(yīng)用平臺系統(tǒng)監(jiān)控集成方案并開發(fā)了云應(yīng)用服務(wù)器自動化監(jiān)控告警軟件。
2.1.1 監(jiān)控RDSH云主機(jī)可用性。云主機(jī)可用性指標(biāo)有:
①連接時間:通過RDP控件進(jìn)行RDSH主機(jī)遠(yuǎn)程連接探測,在一定時間內(nèi)無法連接的RDSH主機(jī),則判定為失效,提醒該RDSH主機(jī)失效。②CPU/內(nèi)存使用率:遠(yuǎn)程監(jiān)控 RDSH主機(jī)的CPU和內(nèi)存使用率,超過額定數(shù)值則報警提醒。③其他對監(jiān)控RDSH主機(jī)狀態(tài)有用的數(shù)據(jù):用戶數(shù)量、用戶占用內(nèi)存和CPU、用戶進(jìn)程數(shù)、打開應(yīng)用數(shù)、每個應(yīng)用占用內(nèi)存和CPU數(shù)等。
2.1.2 圖形化展示監(jiān)控數(shù)據(jù)。提供監(jiān)控數(shù)據(jù)的圖形化展示:①圖形化顯示RDSH主機(jī)連接時間;②圖形化顯示RDSH主機(jī)CPU和內(nèi)存使用率。
2.1.3 故障自動恢復(fù)。①當(dāng)RDSH主機(jī)連接時間超過限定時間時,判定為失效主機(jī),進(jìn)行重啟操作;②當(dāng)CPU/內(nèi)存超過限定使用率時,報警提示管理員進(jìn)行后臺操作。
2.1.4 數(shù)據(jù)統(tǒng)計分析。①每臺RDSH的平均連接時間,失效次數(shù)等,評估RDSH主機(jī)健康性;②每臺RDSH的CPU/內(nèi)存平均使用頻率,判定RDSH使用率;③用戶平均CPU和內(nèi)存占用率,判斷用戶使用強(qiáng)度;④用戶使用過哪些應(yīng)用。
本方案主要應(yīng)用了微軟.net框架下的RDP協(xié)議控件及WMI技術(shù)。
2.2.1 RDP控件。RDP(遠(yuǎn)程桌面協(xié)議)是云應(yīng)用平臺客戶端的核心技術(shù),是一個多通道的協(xié)議[1],包括客戶端視音傳輸、文件傳輸和通訊端口轉(zhuǎn)向等功能,通過壓縮處理的數(shù)據(jù)網(wǎng)絡(luò)傳輸也是相當(dāng)快。在Windows操作系統(tǒng)中集成了Mstsc.exe,同時在.net中也以COM組件的形式提供了Microsoft RDP Client Control控件供自行開發(fā)調(diào)用。為實時監(jiān)控RDSH主機(jī)的連通狀態(tài),云應(yīng)用故障監(jiān)控軟件主要采用RDP控件,模擬用戶登錄過程,通過調(diào)用RDP控件接口獲取RDP的創(chuàng)建連接和完成連接時間數(shù)據(jù),計算登錄耗時,通過設(shè)定合理的RDP連接時間,判斷連接是否超時。同時開發(fā)了定時模塊,實現(xiàn)了自動化對全部RDSH主機(jī)進(jìn)行輪詢檢測,對連接超時的RDSH主機(jī)進(jìn)行告警,管理人員可以采取相應(yīng)措施。
2.2.2 WMI技術(shù)。WMI(Windows管理工具),是Windows操作系統(tǒng)中管理數(shù)據(jù)和操作的基礎(chǔ)模塊[2],提供了一個通過操作系統(tǒng)、網(wǎng)絡(luò)和企業(yè)環(huán)境去管理計算機(jī)的統(tǒng)一接口集。應(yīng)用程序和腳本語言使用這套接口去完成任務(wù),而不是直接通過Windows API。WMI的最大優(yōu)勢是可以獲取遠(yuǎn)程計算機(jī)的信息,這樣無須在每臺服務(wù)器上都部署代理,可以直接以一臺服務(wù)器為宿主機(jī)運(yùn)行監(jiān)控軟件,獲取其他所有RDSH主機(jī)的各種軟硬件數(shù)據(jù)。
云應(yīng)用平臺自動化故障監(jiān)控告警軟件主要實現(xiàn)了對全部RDSH主機(jī)RDP連接時間以及各主機(jī)CPU、內(nèi)存等運(yùn)行數(shù)據(jù)的收集與分析,實現(xiàn)了云平臺服務(wù)的自動化監(jiān)控與告警,以直觀的圖表形式展示RDSH云主機(jī)的運(yùn)行狀態(tài)數(shù)據(jù),軟件主體界面如圖1所示。(見文末)
圖1 云應(yīng)用服務(wù)器自動化監(jiān)控告警軟件
通過收集云應(yīng)用平臺用戶使用數(shù)據(jù)、進(jìn)行數(shù)據(jù)分析、塑造用戶畫像是不斷改進(jìn)云應(yīng)用平臺、提供更符合用戶需求的云應(yīng)用服務(wù)的必經(jīng)之路,下面是一些云應(yīng)用平臺的數(shù)據(jù)分析實例[3],如圖2。(見文末)
圖2 云應(yīng)用各部門登錄人數(shù)統(tǒng)計分析
通過統(tǒng)計每日云應(yīng)用平臺登錄人數(shù),預(yù)測使用人員數(shù)量趨勢,動態(tài)調(diào)整云應(yīng)用平臺硬件資源。統(tǒng)計分析集團(tuán)公司各部門使用人數(shù)分布,可以為重點(diǎn)用戶提供優(yōu)質(zhì)服務(wù)。
目前,本論文研究并開發(fā)的“云應(yīng)用服務(wù)器自動化監(jiān)控告警軟件”及相應(yīng)的數(shù)據(jù)分析方法已經(jīng)在中國鐵路設(shè)計集團(tuán)有限公司上線部署的云應(yīng)用環(huán)境中成功測試應(yīng)用,充分證明了該項研究的正確性,研究成果可大幅提高云平臺的運(yùn)維管理能力,提升管理效率,節(jié)約人力資源,其數(shù)據(jù)分析結(jié)論為優(yōu)化云平臺部署與運(yùn)行提供了支撐。在今后的持續(xù)研發(fā)中,可以融合AI技術(shù),提升軟件智能化水平和自主分析能力,真正實現(xiàn)無人監(jiān)控、自主故障恢復(fù)與數(shù)據(jù)分析利用。