国产日韩欧美一区二区三区三州_亚洲少妇熟女av_久久久久亚洲av国产精品_波多野结衣网站一区二区_亚洲欧美色片在线91_国产亚洲精品精品国产优播av_日本一区二区三区波多野结衣 _久久国产av不卡

?

氣象高性能計算機故障監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)

2017-08-24 02:43許皓皓李從初姚浩立徐振宇
計算機時代 2017年8期
關(guān)鍵詞:監(jiān)控系統(tǒng)氣象

許皓皓+李從初+姚浩立+徐振宇

摘 要: 氣象高性能計算機在大幅提升氣象部門數(shù)值預(yù)報能力的同時,給運維工作也帶來了挑戰(zhàn)。提出了一套輕量級,可拓展的高性能計算機故障監(jiān)控系統(tǒng)設(shè)計方案,詳細描述了系統(tǒng)的開發(fā)過程,以及開發(fā)過程中涉及問題的解決辦法。系統(tǒng)部署后,寧波氣象高性能計算機故障業(yè)務(wù)影響率從60%降低到10%以下。實踐證明,該系統(tǒng)符合寧波氣象的實際需求,也為高性能計算機故障監(jiān)控系統(tǒng)的深入研究和開發(fā)提供了思路。

關(guān)鍵詞: 高性能計算機; 氣象; 故障監(jiān)控; 監(jiān)控系統(tǒng)

中圖分類號:P409 文獻標(biāo)志碼:A 文章編號:1006-8228(2017)08-90-04

Abstract: The meteorological HPC (high-performance computer) has greatly improved the numerical weather prediction (NWP) ability of meteorological department, and has also brought challenges to the operation and maintenance. In this paper, a lightweight and scalable design scheme of HPC fault monitoring system is proposed. The development process of the system and the solution to the problems involved in the development process are described in detail. After the deployment of the system, the business impact failure rate of Ningbo meteorological HPC has been decreased from 60% to below 10%. Practice has proved that the system conforms to the actual demand of Ningbo meteorological, and also provides a train of thought for the further research and development of HPC fault monitoring system.

Key words: HPC; meteorological; fault monitoring; monitoring system

0 引言

近年來,高性能計算機已經(jīng)成為提升氣象部門數(shù)值天氣預(yù)報能力的關(guān)鍵因素[1-4]。氣象高性能計算機運算任務(wù)密集,輸入和輸出數(shù)據(jù)量大,對時效性和穩(wěn)定性要求很高[5],一旦發(fā)生故障,輕則對天氣預(yù)報的制作產(chǎn)生影響,重則對防災(zāi)減災(zāi)和人民群眾的生命財產(chǎn)安全產(chǎn)生威脅。各級氣象部門在高性能計算機系統(tǒng)的建設(shè)、管理和監(jiān)控上進行了大量的研究。宗翔等[6]對高性能計算機系統(tǒng)的架構(gòu)和技術(shù)方法進行研究,設(shè)計了國家級氣象高性能計算機管理與應(yīng)用網(wǎng)絡(luò)平臺;呂爽等[7]對四川省氣象局IBM Flex P460高性能計算機系統(tǒng)的架構(gòu)和管理方法進行研究,為西南區(qū)域氣象中心數(shù)值預(yù)報系統(tǒng)的運行和研發(fā)提供了理論支撐。通過對高性能計算機系統(tǒng)的架構(gòu)和技術(shù)方法進行研究,提升系統(tǒng)的健壯性,有效避免設(shè)計缺陷導(dǎo)致的系統(tǒng)級故障,如果能開發(fā)一套高性能計算機監(jiān)控系統(tǒng),對各類運行級故障進行監(jiān)控報警,會有很高的實用價值。針對這一問題,秦運龍等[8-9]使用shell語言,基于Routrek.granados模塊進行操作指令傳遞,通過Web頁面對所有高性能計算機系統(tǒng)及作業(yè)進行監(jiān)控和管理,設(shè)計并實現(xiàn)了華中區(qū)域高性能計算機監(jiān)控管理平臺,一定程度上解決了氣象高性能計算機系統(tǒng)運行監(jiān)控問題,但系統(tǒng)也存在一些問題,如監(jiān)控平臺以網(wǎng)頁方式存在,不支持手機短信方式提醒,無法實現(xiàn)無人值守情況下的運行監(jiān)控和實時報警需求。

寧波市氣象局高性能計算機監(jiān)控系統(tǒng)滿足了高性能計算機運行級故障監(jiān)控和報警需求,打通了運維工作最后一個環(huán)節(jié),有效提高了運維人員的故障處理速度,提升了氣象高性能計算機的業(yè)務(wù)可用性。

1 監(jiān)控系統(tǒng)需求分析

寧波市氣象局IBM Flex高性能計算機(圖1)主要運行WRF中小尺度數(shù)值天氣預(yù)報模式,是提升寧波氣象部門綜合預(yù)報能力和精細化“無縫隙”數(shù)值預(yù)報的重要工具和載體。該系統(tǒng)由56臺計算節(jié)點、1臺管理節(jié)點、1臺數(shù)據(jù)處理節(jié)點、1臺登陸節(jié)點、2臺I/O節(jié)點組成,峰值運算速度為每秒29萬億次。單個計算節(jié)點配置2顆12核心處理器,64GB內(nèi)存。

運維部門通過統(tǒng)計發(fā)現(xiàn)該高性能計算機大部分故障都發(fā)生在運算任務(wù)非常密集的計算節(jié)點,硬件故障點多出現(xiàn)在主板、硬盤、電源這些部件。如果數(shù)值模式運行之前計算節(jié)點那么出現(xiàn)故障就不會影響模式運行,因為作業(yè)調(diào)度系統(tǒng)自動剔除了故障節(jié)點;但是如果在數(shù)值天氣預(yù)報模式運行過程中發(fā)生故障,則會影響模式的正常輸出。技術(shù)人員日常運維會定期到機房登入集群系統(tǒng)進行檢查,發(fā)現(xiàn)故障時首先嘗試修復(fù),無法解決時撥打廠家售后服務(wù)電話報修,最后對故障處理情況進行記錄。

通過對該系統(tǒng)連續(xù)兩年來的故障記錄進行梳理和分析,故障總數(shù)是54次,總影響機時近1000小時。這些故障中,對數(shù)值預(yù)報模式運行有影響的比率超過60%,我們稱之為“故障業(yè)務(wù)影響率”;故障節(jié)點如沒有及時修復(fù),會導(dǎo)致節(jié)點宕機時間延長,長期積累對集群的整體運算能力產(chǎn)生了一定影響。通過數(shù)據(jù)分析、與運維人員反復(fù)溝通和討論得出結(jié)論:故障發(fā)生時如能第一時間監(jiān)控,那么即使故障導(dǎo)致作業(yè)運行出錯,也可以及時調(diào)整作業(yè),調(diào)度系統(tǒng)剔除故障節(jié)點,把故障對業(yè)務(wù)影響降低到可接受范圍?;诟咝阅苡嬎銠C的運維需求,設(shè)計和開發(fā)一套實用性的故障監(jiān)控報警系統(tǒng)非常有必要。

2 監(jiān)控系統(tǒng)設(shè)計

監(jiān)控系統(tǒng)由監(jiān)控采集模塊、收集入庫模塊和短信報警模塊三部分組成。監(jiān)控采集模塊對系統(tǒng)運行狀態(tài)進行收集和記錄;收集入庫模塊負責(zé)讀取分析故障信息,錄入故障信息數(shù)據(jù)庫,并對故障是否進行短信報警進行控制;短信報警模塊定時讀取報警信息數(shù)據(jù)庫,調(diào)用短信接口向運維和使用人員發(fā)送報警短信。

高性能計算機有三套通信網(wǎng)絡(luò)用于計算節(jié)點通信Infiniband網(wǎng)絡(luò)、數(shù)據(jù)傳輸?shù)那д譚CP/IP網(wǎng)絡(luò)和用于管理的百兆TCP/IP網(wǎng)絡(luò),監(jiān)控采集模塊使用管理網(wǎng)絡(luò)通信,部署在管理節(jié)點,對高性能計算機全部節(jié)點進行監(jiān)控。由于故障采集模塊僅使用管理網(wǎng)絡(luò)通信,所以不會對高性能計算機計算和數(shù)據(jù)網(wǎng)絡(luò)產(chǎn)生影響。

在監(jiān)控系統(tǒng)設(shè)計過程中,因為高性能計算機對運行安全性要求頗高,網(wǎng)絡(luò)環(huán)境相對獨立,無法從系統(tǒng)內(nèi)部調(diào)用外部短信接口進行報警。而且考慮到Linux Shell編程的局限性,實現(xiàn)復(fù)雜的程序功能以及和Windows系統(tǒng)數(shù)據(jù)交互的開發(fā)難度較大,因此我們設(shè)計了一套SQL Server監(jiān)控信息數(shù)據(jù)庫作為信息交換中樞。系統(tǒng)內(nèi)部運行的監(jiān)控采集模塊和系統(tǒng)外部運行的收集入庫模塊相互配合,把故障信息收集整理入庫,短信報警模也依托于數(shù)據(jù)庫系統(tǒng)來完成功能設(shè)計。這種設(shè)計很好的解決了高性能計算機系統(tǒng)內(nèi)外部信息交互問題,充分利用了Linux系統(tǒng)的Windows系統(tǒng)的編程特性,也為程序的功能擴充和二次開發(fā)提供了基礎(chǔ)。

3 集群監(jiān)控系統(tǒng)開發(fā)與實現(xiàn)

3.1 開發(fā)語言和工具

監(jiān)控系統(tǒng)開發(fā)主要使用了Visual Studio 2010、VI編輯器、SQL Server Management Studio等工具。監(jiān)控采集模塊采用Shell腳本語言Bash開發(fā),Shell是Linux系統(tǒng)下一個非常靈活的工具,不僅可以用于命令的收集,而且是一門功能強大的編程語言[10-11]。與C語言等其他開發(fā)語言相比,開發(fā)者可以通過使用shell快速簡便的使大量的任務(wù)自動化,shell特別擅長系統(tǒng)管理任務(wù),尤其適合那些易用性、可維護性和便攜性比效率更重要的任務(wù)。收集入庫模塊和短信報警模塊運行在Windows環(huán)境,采用C#語言開發(fā),C#是一種簡潔、類型安全的面向?qū)ο蟮恼Z言,開發(fā)人員可以使用它來構(gòu)建在.NET Framework上運行的各種安全、可靠的應(yīng)用程序,結(jié)合SQL Server數(shù)據(jù)庫的開發(fā)尤其得心應(yīng)手。

3.2 系統(tǒng)功能模塊

3.2.1 監(jiān)控采集模塊

故障監(jiān)控采集模塊,運行在高性能計算機管理節(jié)點上,定時對系統(tǒng)所有節(jié)點發(fā)送狀態(tài)檢查命令,并根據(jù)返回結(jié)果收集故障信息,按照規(guī)定的格式存儲在日志文件里,然后通過ftp協(xié)議發(fā)送日志文件到指定的服務(wù)器。檢測到故障時,采集模塊同時使用SMB/CIFS服務(wù)的Linux客戶端程序Smbclient向集群監(jiān)控PC屏幕發(fā)送一條提示信息。在開發(fā)監(jiān)控采集模塊時,我們選擇使用Linux系統(tǒng)的Shell腳本語言作為開發(fā)工具,后續(xù)可以結(jié)合Linux系統(tǒng)的管理工具,或者和高性能計算機集成管理工具實現(xiàn)對接,就可以對各種類型故障進行細分,實現(xiàn)精細化的故障監(jiān)控和報警。

while [$NN -le $avaible_nodes_number]

do

HELLO=`ssh node${NN} echo hello`

if [ -z $HELLO ]; then

echo "THE HPC CLUSTER node${NN} cannot be

reached at $time! Please inspect HPC ASAP!"|smbclient -M watchmachine>1&

echo "node${NN} $time">/root/bin/monitor/log

.nodedown.latest

INDEX=`expr $INDEX+1`

NN=`expr $NN+1`

else

INDEX=`expr $INDEX+1`

NN=`expr $NN+1`

fi

if ["$INDEX"="$NFILES"]; then

break;

fi

done

Shell腳本無法實現(xiàn)自動運行功能,需要依賴Linux系統(tǒng)的時間作業(yè)調(diào)度系統(tǒng)Cron來實現(xiàn)無需人工干預(yù)的情況下運行作業(yè)。Cron由一系列守護進程和指令組成,每個用戶可以擁有自己的crontab文件,操作系統(tǒng)同時保存一個針對整個系統(tǒng)的crontab文件,該文件通常存放于/etc目錄下,只能由系統(tǒng)管理員來修改。部署監(jiān)控采集模塊程序時,使用root用戶登錄后執(zhí)行Crontab-e命令添加新任務(wù),或者直接編輯/etc/crontab文件來添加任務(wù),新添加一條任務(wù)列表:* * * * * /root/bin/monitor/nodestats.sh > /tmp/nodestats.log 2>&1& 代表每分鐘運行一次故障監(jiān)控采集程序。任務(wù)列表添加完畢保存后,重新啟動Cron服務(wù)就可以立即生效。

3.2.2 收集入庫模塊

收集入庫模塊,主要完成高性能計算機故障信息的分揀和入庫工作。程序定時讀取故障日志文件,對故障信息進行關(guān)鍵字符提取,存儲在程序變量里,然后錄入故障信息數(shù)據(jù)庫。

因為故障報警模塊依托于故障信息數(shù)據(jù)庫,如果每次檢查到數(shù)據(jù)庫存在故障信息都進行報警,那么,勢必會出現(xiàn)短信重復(fù)發(fā)送的問題,給運維人員造成不便。為了解決這個問題,我們設(shè)計了一個故障重復(fù)報警過濾機制,對數(shù)據(jù)庫報警信息表增加了一個發(fā)送標(biāo)志字段,并且設(shè)置了一個“故障重復(fù)報警過濾間隔時間”。收集入庫模塊在向數(shù)據(jù)庫錄入節(jié)點故障信息之前,會提取故障日志記錄時間和數(shù)據(jù)庫里對應(yīng)的節(jié)點故障時間進行對比,如果兩者時間差小于“故障重復(fù)報警過濾間隔時間”,則說明該節(jié)點最新故障尚未修復(fù),不對數(shù)據(jù)庫記錄進行更新,反之則說明該節(jié)點出現(xiàn)新故障或者耽誤太久沒有修復(fù),這種情況在更新數(shù)據(jù)庫的時候,同時把發(fā)送標(biāo)志字段值置為0,報警模塊檢查到這條記錄會立即發(fā)送報警短信。

3.2.3 短信報警模塊

短信報警模塊功能比較單一,定時輪詢故障數(shù)據(jù)庫記錄,檢查到有發(fā)送標(biāo)志字段值為0的記錄則調(diào)用外部短信發(fā)送接口發(fā)送短信。短信接口選擇上,我們詳細測試了英特網(wǎng)HTTP短信接口和本單位已購置的MAS短信接口,MAS短信接口發(fā)送速度快穩(wěn)定性好,HTTP短信接口調(diào)用方便但是卻存在網(wǎng)絡(luò)安全風(fēng)險,最終選擇了MAS短信接口方案。短信報警模塊程序界面見圖2。

4 業(yè)務(wù)應(yīng)用效果

故障監(jiān)控系統(tǒng)投入業(yè)務(wù)運行后,雖然因為高性能計算機運行負載逐年增加,以及硬件系統(tǒng)整體老化等因素,故障總數(shù)有所增加。但是故障監(jiān)控系統(tǒng)能及時監(jiān)測到故障并通知相關(guān)人員提前干預(yù),大幅的減少了故障對數(shù)值預(yù)報模式運行的影響。近4年故障統(tǒng)計圖如圖3所示,監(jiān)控系統(tǒng)2013年年底啟用后,當(dāng)年便提高了業(yè)務(wù)模式運行穩(wěn)定性,2014年全年“故障業(yè)務(wù)影響率”從2013年的59%降低到40%,2015年和2016年“故障業(yè)務(wù)影響率”分別為22%和8%,監(jiān)控系統(tǒng)的應(yīng)用實現(xiàn)了無人值守的高性能計算機故障監(jiān)控和報警功能,大幅減少了故障對數(shù)值天氣預(yù)報業(yè)務(wù)的影響。

5 結(jié)束語

高性能計算機故障監(jiān)控系統(tǒng)采用了一種輕量級的方式,使用Shell和C#兩種編程語言,通過三個功能模塊的聯(lián)動,實現(xiàn)了對氣象高性能計算機的實時監(jiān)控和報警。系統(tǒng)在寧波市氣象局應(yīng)用以來,大幅降低了硬件故障對數(shù)值天氣預(yù)報的影響,解放了運維人員,具有很高的實用價值。目前該系統(tǒng)的故障監(jiān)控類型還不夠豐富,未來可以對采集模塊繼續(xù)開發(fā),以對接高性能計算機監(jiān)控管理系統(tǒng),實現(xiàn)精細化的故障監(jiān)控和報警。

參考文獻(References):

[1] 趙立成,沈文海,肖華東等.高性能計算技術(shù)在氣象領(lǐng)域的應(yīng)用[J].應(yīng)用氣象學(xué)報,2016.5:550-558

[2] 洪文董.高性能計算機的發(fā)展與氣象應(yīng)用[J].計算機工程與應(yīng)用,2004.5:32-35,51

[3] 王俊超,彭濤,馮光柳.曙光高性能計算機在數(shù)值預(yù)報模式中的應(yīng)用[J].計算機技術(shù)與發(fā)展,2014.10:178-181,185

[4] 王彬.高性能計算技術(shù)在氣象部門的應(yīng)用[J].計算機工程與設(shè)計,2014.4:1476-1479

[5] 張志堅,伍光勝,孫偉忠,張靜.IBM Flex P460高性能計算機系統(tǒng)及氣象應(yīng)用[J].現(xiàn)代計算機(專業(yè)版),2016.9:51-55

[6] 宗翔,王彬.國家級氣象高性能計算機管理與應(yīng)用網(wǎng)絡(luò)平臺設(shè)計[J].應(yīng)用氣象學(xué)報,2006.5:629-634

[7] 呂爽,衡志煒,馬艷軍.西南區(qū)域氣象中心IBM高性能計算機管理及應(yīng)用[J].高原山地氣象研究,2015.2:71-76

[8] 秦運龍,許瑋,張冰松.華中區(qū)域高性能計算機監(jiān)控管理平臺設(shè)計與實現(xiàn)[J].電子制作,2016.14:37-38

[9] 許瑋,王迎迎,秦運龍,張冰松.湖北省氣象局高性能計算機監(jiān)控系統(tǒng)的設(shè)計[J].電子制作,2016.14:35-36

[10] 韓璐.在UNIX系統(tǒng)下用shell編程實現(xiàn)對文件的操作[J].中國科技信息,2006.13:131-132

[11] 胡月寧,劉金霞,宋國云,王慧瑜,張玉錦.利用SHELL編程實現(xiàn)UNIX系統(tǒng)下氣象資料傳輸與處理[J].電腦知識與技術(shù),2008.17:1460-1463

猜你喜歡
監(jiān)控系統(tǒng)氣象
邊塞風(fēng)光氣象雄麗
氣象樹
《內(nèi)蒙古氣象》征稿簡則
氣象武器:翻云覆雨等閑間
大國氣象
美麗的氣象奇觀
無線廣播電視安全優(yōu)質(zhì)播出的技術(shù)分析
縣級區(qū)域雨量站觀測設(shè)備監(jiān)控系統(tǒng)的研究與設(shè)計
基于Zigbee技術(shù)的煤礦井下通風(fēng)機監(jiān)控系統(tǒng)設(shè)計
通河县| 五寨县| 东辽县| 报价| 营山县| 巴彦淖尔市| 探索| 福清市| 札达县| 黄梅县| 个旧市| 海兴县| 准格尔旗| 诏安县| 聊城市| 抚松县| 栾城县| 五家渠市| 台中县| 富民县| 安乡县| 桃源县| 罗源县| 贡山| 安顺市| 息烽县| 延庆县| 申扎县| 黑龙江省| 营山县| 蛟河市| 临泉县| 汉阴县| 右玉县| 安陆市| 盘锦市| 远安县| 玉林市| 屏山县| 凭祥市| 文登市|