彭燦華, 楊呈永, 張玉斌
(1. 桂林理工大學 現(xiàn)代教育技術(shù)中心, 廣西 桂林 541004; 2. 渤海大學 基礎(chǔ)教研部, 遼寧 錦州 121000)
近年來,隨著高校校園信息化發(fā)展,網(wǎng)絡(luò)信息已經(jīng)覆蓋了整個校園,學生一卡通消費、學籍、選課、成績、借書、考勤、在線考試、論壇、上網(wǎng)日志等;教師的人事基本信息、辦公信息、郵件、教學資源、科研、資產(chǎn)、財務(wù)、上網(wǎng)日志等都會產(chǎn)生大量數(shù)據(jù)信息。這些數(shù)據(jù)信息與學校教學管理及校園生活息息相關(guān),信息量巨大,覆蓋面廣,數(shù)據(jù)存儲結(jié)構(gòu)已經(jīng)具備了大數(shù)據(jù)特征,為高校信息化建設(shè)從數(shù)字化校園向智慧校園推進提供數(shù)據(jù)基礎(chǔ)。如何保障校園龐大數(shù)據(jù)信息的安全、可靠,必須要有一個現(xiàn)代化的大數(shù)據(jù)中心機房來支撐。大數(shù)據(jù)中心機房管理必須是無人值守自動化和智能化管理,這就需要從下面3點進行突破:
(1) 機房出現(xiàn)故障需要在環(huán)境變化、硬件狀態(tài)等方面設(shè)置預(yù)警參數(shù),并多渠道第一時間發(fā)出預(yù)警信息,方便管理員及時處理。
(2) 除了對環(huán)境、硬件進行預(yù)警外,服務(wù)器云操作系統(tǒng)也是數(shù)據(jù)中心機房的核心,服務(wù)器云操作系統(tǒng)出現(xiàn)時,有優(yōu)先第一時間預(yù)警功能。
(3) 由于機房處于無人值守狀態(tài),要求可以使用任意智能移動終端。接收預(yù)警信息,并進行有效處理。
以物聯(lián)網(wǎng)技術(shù)為基礎(chǔ)結(jié)合HTML5技術(shù)對大數(shù)據(jù)機房的軟、硬件環(huán)境提供安全可靠的保障。
自2005年國際電信聯(lián)盟(International Telecommunication Union, ITU) 正式提出了物聯(lián)網(wǎng)(Internet of Things,IoT)[1-2]一詞以來,物聯(lián)網(wǎng)經(jīng)歷數(shù)十年的發(fā)展,從功能角度來看,物聯(lián)網(wǎng)集成了多種具有感知、通信、計算和控制能力的網(wǎng)絡(luò)化智能計算機系統(tǒng)。按其功能分為感知層、傳輸層、應(yīng)用層,結(jié)構(gòu)如圖1所示。

圖1 物聯(lián)網(wǎng)架構(gòu)圖
感知層是物聯(lián)網(wǎng)的最前端層,由各種傳感器采集原始數(shù)據(jù),同時結(jié)合ZigBee組成無線傳感器。
網(wǎng)絡(luò)傳輸層通過ZigBee無線發(fā)送上來的原始數(shù)據(jù)再通過路由器等網(wǎng)絡(luò)設(shè)備與互聯(lián)網(wǎng)連接起來,并將數(shù)據(jù)實時傳送到后臺服務(wù)器,實現(xiàn)數(shù)據(jù)與互聯(lián)網(wǎng)的相互傳輸。
該層首先通過服務(wù)器接收網(wǎng)絡(luò)傳輸層、感知層各網(wǎng)關(guān)節(jié)點信息,進行信息處理后保存在服務(wù)器上。實時通過手機短信和微信公眾號推送接收各種預(yù)警的信息。客戶端通過手機、電腦、筆記本、ipad等智能終端在享有權(quán)限范圍內(nèi)對使用HTML5設(shè)計的Web頁面進行請求查詢、統(tǒng)計、控制管理等操作。
圖1所示在最底層由前端感知節(jié)點采集數(shù)據(jù)通過ZigBee無線網(wǎng)關(guān)節(jié)GPRS模塊將數(shù)據(jù)發(fā)送到Web服務(wù)器實現(xiàn)Inernet的傳輸[3-5]。
物聯(lián)網(wǎng)前端主要功能是采集數(shù)據(jù),需要將系統(tǒng)中的物聯(lián)網(wǎng)硬件傳感器安裝到機房合適的監(jiān)測位置,保證采集到數(shù)據(jù)的準確,具體用到傳感器明細如表1所示。

表1 感知層傳感器明細
(1)溫濕度傳感器。溫濕度傳感器負責采集機房環(huán)境的溫濕度、煙霧等數(shù)據(jù)發(fā)送到服務(wù)器。
(2) 紅外線防盜。在非工作安全時間段啟用紅外防盜技術(shù),當外來人員進入時可以及時報警。
(3) 空調(diào)傳感器。把空調(diào)各種運行狀態(tài)如當前溫度、壓縮機是否運行,風機是否運行等發(fā)送到服務(wù)器。
(4) 電源配電柜傳感器。把機房供電情況如電流、電壓等參數(shù)值發(fā)送到服務(wù)器。
(5) 配電開關(guān)狀態(tài)傳感器。把配電各路開關(guān)狀態(tài)發(fā)送到服務(wù)器。
(6) UPS電源傳感器。 把UPS輸入電壓、輸出電壓、輸入頻率、內(nèi)部溫度、UPS事故障、UPS連接狀態(tài)、開關(guān)狀態(tài)、使用狀態(tài)、電量等發(fā)送到服務(wù)器。
(7) 抽風機傳感器。把抽風機運行狀態(tài)發(fā)送到服務(wù)器。
(8) 指紋門禁傳感器。實時把出入門禁指紋記錄、門區(qū)開關(guān)傳輸?shù)椒?wù)器。
(9) 攝像頭視頻監(jiān)控傳感器。通過高清攝像頭對機房內(nèi)360°無死角進行視頻監(jiān)控,機房管理人員可以一目了然看到機房內(nèi)的任何角落真實場景情況。
ZigBee[6-8]是一種由控制芯片及射頻收發(fā)單元和GPRS模塊等組成,一種短距離、低功耗、高可靠的無線通信技,適合用于自動控制和遠程控制領(lǐng)域。各個終端傳感器節(jié)點采集到數(shù)據(jù)后,通過ZigBee無線網(wǎng)絡(luò)發(fā)送給數(shù)據(jù)采集協(xié)調(diào)器,然后把GPRS模塊與移動互聯(lián)網(wǎng)連接,并通過有線傳輸將信號送往Web服務(wù)器,最終可利用Internet、GPRS等網(wǎng)絡(luò)實現(xiàn)雙向通信進行智能管理。
智能應(yīng)用系統(tǒng)的技術(shù)上框架采用ASP.NET MVC5[9]+JOSN[10]+HTML5[11]。包括基于HTML5終端層、JOSN格式傳輸層、基于ASP.NET MVC5服務(wù)處理層、數(shù)據(jù)庫,框架如圖2所示。

圖2 應(yīng)用系統(tǒng)架構(gòu)圖
(1) ASP.NET MVC5是相比之前的版本做了改寫,整合了MVC、Web API、Web Pages功能,所有的功能和模塊都進行了獨立拆分,做到了徹底解耦。功能強大的 Web API,可以從任何移動/客戶端請求訪問獲取數(shù)據(jù)。
ASP.NET Web API 是一個框架(framework),能讓你在 .NET Framwork 之上架設(shè) HTTP 服務(wù) (HTTP Services)。ASP.NET Web API 是 .NET Framework 上構(gòu)建 RESTful 應(yīng)用程序的理想平臺。
(2) JSON(JavaScript Object Notation) 是一種輕量級的數(shù)據(jù)交換格式。具有占帶寬小(格式是壓縮的)傳輸速度快,支持目前主流語言(C、C#、Java、JavaScript 、PHP等),便于服務(wù)端和客戶端的解析和生成。
(3) 基于HTML5開發(fā)的網(wǎng)頁解決傳統(tǒng)的跨平臺問題,可以在不同環(huán)境中一次性開發(fā)Web應(yīng)用和網(wǎng)站,提高開發(fā)工作效率,開發(fā)的Web應(yīng)用程序具有跨平臺特性。HTML5 APP Cache開發(fā)APP擁有更快的啟動速度和聯(lián)網(wǎng)速度,提高可用性并且改進用戶的友好體驗。
同時在HTML5里結(jié)合WebGL可以快速打造出無插件純Web HTML5 3D機房監(jiān)控系統(tǒng),WebGL是OpenGL的瀏覽器一個子集,支持大部分主要3D功能接口。
服務(wù)器端開發(fā)工具采用VS2015開發(fā),數(shù)據(jù)庫采用Sqlserver2012[12],開發(fā)框架用ASP. NET MVC5,用ASP. NET MVC框架能夠快速而方便地創(chuàng)建Web服務(wù),以便為HTTP客戶端提供Web API接口。通過API對接收的數(shù)據(jù)與返回數(shù)據(jù)進行統(tǒng)一的封裝整理生成JSON字符串,方便處理接收與返回數(shù)據(jù),并對數(shù)據(jù)進行驗證,通過C#的特性對token進行驗證,并通過時間戳的方式統(tǒng)一處理接收與返回的時間格式。
部分核心代碼如下:
(1) token進行驗證,設(shè)置驗證每個請求的權(quán)限:
……
// 如果需要驗證
if (nt == null || (!nt.NotNeedToken))
{
// 根據(jù)token獲取用戶信息
var user = GetUser(req.token) ;
if (user == null)
{
// 判斷Token是否失效
throw new APIException(200, "Token失效。");
} req.APIWorkContext = new APIWorkContext(); req.APIWorkContext.UserId = Convert.ToInt32(user.user_id); req.APIWorkContext.UserEmail = user.email;
……
(2) 處理Josn數(shù)據(jù)
……
// 反射創(chuàng)建對象
object APIservices = System.Reflection.Assembly.GetExecutingAssembly().CreateInstance(fullName, true, System.Reflection.BindingFlags.CreateInstance, null, null, null, null);
// 轉(zhuǎn)化成類對象 BaseAPIService baseService = APIservices as BaseAPIService;
try
{
// 執(zhí)行函數(shù)
baseService.Reqeust = req;
res = baseService.Process();
}
catch (APIException ex)
{
throw ex;
}
// 判斷是否是直接返回String
if (res is APIContext)
{
return (res as APIContext).Context;
}
// 設(shè)置時間格式
var jsonSettings = new JsonSerializerSettings { NullValueHandling = NullValueHandling.Ignore };
// 設(shè)置過濾null值為不顯示 jsonSettings.Converters.Add(new UnixDateTimeConverter());
//返回Josn格式
return JsonConvert.SerializeObject(res, jsonSettings);
……
在客戶端中,頁面顯示所需的數(shù)據(jù)通過請求服務(wù)器端獲取JSON格式數(shù)據(jù),并將JSON格式數(shù)據(jù)解析處理成HTML5頁面顯示。解析JSON對象直接使用JQuery操作的格式,jQuery是一個快速、簡潔的JavaScript框架,可以非常方便的操作操作的是JSON對象,
部分代碼如下:
$
$(document).ready(function(){
$.ajax({
$type:"GET",
$async: false, url:"json/GetJson_readerinf.action",
dataType:"json", success:function(data){
//讀取各種預(yù)警狀態(tài)信息$("#readername").html(data.readerinf[0].AirStatus);
……
根據(jù)大數(shù)據(jù)中心機房管理業(yè)務(wù)需求分析出系統(tǒng)系統(tǒng)功能結(jié)構(gòu)如圖3所示。

圖3 系統(tǒng)功能結(jié)構(gòu)圖
作為學校大數(shù)據(jù)中心機房在學校信息化建設(shè)及智慧校園建設(shè)中地位顯得非常重要,必須實時保障機房工作環(huán)境、硬件設(shè)備、通信線路、系統(tǒng)軟件的正常安全運行,大數(shù)據(jù)中心機房任何環(huán)境設(shè)備出現(xiàn)故障,都能進行系統(tǒng)預(yù)警[13-14]。系統(tǒng)界面中利用三維圖模擬機房空間,在對應(yīng)位置顯示各個設(shè)備傳感器傳遞到監(jiān)控中心的設(shè)備上,服務(wù)器接收到傳輸上來的數(shù)據(jù)后根據(jù)報警范圍分析,當某個傳感器獲取到數(shù)據(jù)超出了預(yù)警范圍時,通過綁定微信推送消息和發(fā)送手機短信消息預(yù)警,進入系統(tǒng)監(jiān)控界面中對應(yīng)位置進行聲光報警,讓管理員能第一時間知道機房故障,并能在任何地點移動網(wǎng)絡(luò)通暢的條件下通過任何的移動終端進行調(diào)度管理,大大提高管理水平。目前主要在以下方面進行預(yù)警管理,流程圖如圖4所示。

圖4 預(yù)警處理流程圖
(1) 溫濕度預(yù)警管理。智能應(yīng)用系統(tǒng)智能預(yù)警管理中心根據(jù)溫濕度傳感器實時傳輸上來的溫度濕度數(shù)據(jù)進行判斷,當某個傳感器傳輸?shù)臄?shù)據(jù)超出了設(shè)定的預(yù)警值時,系統(tǒng)界面中對應(yīng)模型位置發(fā)出不同等級聲音及不同顏色光報警,同時微信公眾號和手機接收預(yù)警信息。
(2) 紅外線防盜預(yù)警管理。安裝防盜紅外或激光探頭,設(shè)置非安全時段外來人員非法進入,一旦發(fā)現(xiàn)人員進入機房,機房啟動報警系統(tǒng),第一時間通知管理員,管理員可以馬上查看監(jiān)控攝像頭,實時掌握機房防盜情況。
(3) 空調(diào)預(yù)警管理。根據(jù)傳感器傳輸?shù)目照{(diào)溫度上限和下限是否超出范圍預(yù)警,確保空調(diào)的24 h運行。
(4) 電源配電柜預(yù)警管理。對機房供電情況電壓、電流進行預(yù)警。
(5) 配電開關(guān)狀態(tài)預(yù)警管理。配電開關(guān)狀態(tài)檢進行報警,提醒管理員進行處理。
(6) UPS電源等預(yù)警管理。對UPS連接狀態(tài)、UPS輸入輸出電壓、使用電量、內(nèi)部溫度等進行預(yù)警。
(7) 抽風機預(yù)警管理。對抽風機開關(guān)連接狀態(tài)報警提示。
(8) 指紋門禁管理。遠程搖控數(shù)據(jù)中心門禁開關(guān)、查看歷史進出記錄。
(9) 大數(shù)據(jù)服務(wù)器云系統(tǒng)預(yù)警管理。通過vSphere監(jiān)控的性能可以監(jiān)控主機群集中所有虛擬機的 CPU利用率、內(nèi)存利用率、存儲使用情況等[15-16]。vSphere啟用預(yù)警功能后,群集中所有運行的虛擬機只要有一臺虛擬機滿足預(yù)警范圍,機房管理員立刻收到通過騰訊QQ接收到電子郵件通知。此時騰訊QQ郵件客戶端或者機房管理微信公眾號管理員推送報警郵件信息。也可以通過騰訊QQ郵箱綁定手機第一時間收到郵件短信。
登錄機房智能管理系統(tǒng),預(yù)警監(jiān)控界面如圖5所示。

圖5 系統(tǒng)監(jiān)控界面
前端傳感器采集發(fā)送過來的數(shù)據(jù)如果達到預(yù)警值,系統(tǒng)建模界面有不同顏色來表示當前警告級別。管理員在不同類型、系列的移動設(shè)備通過點擊報警圖標查看詳細的預(yù)警參數(shù)信息狀態(tài)變化,并切換到相應(yīng)的管理設(shè)置頁面對相關(guān)設(shè)備進行管理控制,可以有效避免各種故障發(fā)生,有效提高了管理工作效率。
本文針對大數(shù)據(jù)機房管理自動化及智能化管理要求,要求管理員能在不同場所用不同類型、型號的移動設(shè)備上對機房環(huán)境和軟硬件運行狀況實時直觀掌握,并能進行相應(yīng)遠程智能處理,提出通過物聯(lián)網(wǎng)及其關(guān)鍵技術(shù),對機房溫濕度、紅外線防盜設(shè)計、空調(diào)設(shè)備、電源配電柜、配電開關(guān)狀態(tài)、UPS電源、抽風機、指紋門禁、攝像頭智能監(jiān)控、云操作系統(tǒng)等通過傳感器實時監(jiān)控并上傳到服務(wù)器。在服務(wù)器端通過ASP.NET MVC+SQL開發(fā)服務(wù)端程序?qū)Ω鱾€傳感器發(fā)送上來的數(shù)據(jù)進行檢測處理。客戶端通過基于HTML5技術(shù)開發(fā)能兼容不同類型、型號移動客戶端智能管理系統(tǒng)。通過該系統(tǒng)的實現(xiàn)有效地提高機房管理員的工作效率和管理水平。
參考文獻(References):
[1] 孟鈺宇.數(shù)據(jù)中心機房監(jiān)控系統(tǒng)的設(shè)計與實現(xiàn)[D].北京:北京工業(yè)大學,2013.
[2] 沈蘇彬,楊 震.物聯(lián)網(wǎng)體系結(jié)構(gòu)及其標準化[J].南京郵電大學學報(自然科學版),2015, 35(1):1-18.
[3] 周衛(wèi)東.物聯(lián)網(wǎng)體系結(jié)構(gòu)與實現(xiàn)方法的比較研究[J].信息系統(tǒng)工程,2014(10):141-142.
[4] 符云密.物聯(lián)網(wǎng)實驗網(wǎng)的設(shè)計及實現(xiàn)[D].廣州:華南理工大學,2012.
[5] 海 濤,陶 虎,林 波,等.基于物聯(lián)網(wǎng)智能感知系統(tǒng)的設(shè)計[J].實驗技術(shù)與管理, 2013(7):103-108.
[6] 張立立,徐 勇,孫開宇.基于ZigBee技術(shù)的無線數(shù)據(jù)采集系統(tǒng)的研制[J].實驗技術(shù)與管理, 2012,29(5):139-142.
[7] 王小強,歐陽駿,黃寧琳,編著.ZigBee無線傳感器網(wǎng)絡(luò)設(shè)計與實現(xiàn)[M].北京:化學工業(yè)出版社, 2012.
[8] 孫冠男.基于ZigBee協(xié)議的物聯(lián)網(wǎng)實驗教學平臺的設(shè)計與開發(fā)[D].濟南:山東師范大學,2014.
[9] 羅建兵.基于.NET MVC5基礎(chǔ)框架的公共體育課管理系統(tǒng)的研究和開發(fā)[D].重慶:重慶大學,2015:13-20.
[10] 林博辭.Ajax框架及JSON技術(shù)在J2EE架構(gòu)中的研究與應(yīng)用[D].大連:大連海事大學, 2012.
[11] 董 霽,楊丁寧,史德年.基于HTML5技術(shù)的移動智能終端應(yīng)用及安全問題研究[J].現(xiàn)代電信科技,2012(12):1-7.
[12] 馮 艷.SQL Server數(shù)據(jù)庫運用及其性能優(yōu)化分析[J].軟件導(dǎo)刊,2012(3):166-168.
[13] 崔貫勛.基于物聯(lián)網(wǎng)技術(shù)的實驗室安全管理系統(tǒng)的設(shè)計[J].實驗室研究與探索,2015, 34(3):287-290.
[14] 吳蓬勃,李學海,楊 斐,等.基于物聯(lián)網(wǎng)的智能實驗室研究與實踐[J].計算機測量與控制,2016(2):78-85.
[15] 譚文輝.基于VMware虛擬化的安全分析[J]. 艦船電子工程,2012(5):113-115.
[16] 施 慶.基于VMware vSphere的高校數(shù)據(jù)中心虛擬化建設(shè)研究[D].上海:復(fù)旦大學,2012.