胡飛菊
(江西科技學院,江西 南昌 330000)
隨著“互聯網+”各行各業的迅猛發展,每天都積累了數以萬計的數據。在這樣的大數據時代,產生了大量的集中式機房對這些數據進行存儲和管理[1],集中式機房是一個小型的數據中心,包括了所需的一系列軟件和硬件設備,如存儲服務器、計算服務器、系統服務器、各類網絡設備、空調等。不斷增加的數據量和機房設備給機房管理人員帶來了較重的工作壓力,極大地影響了集中式機房的管理效率和安全建設水平[2]。很多單位都建立了一套符合自身需求的機房管理系統,但大部分機房系統存在功能不完善、智能化水平不高、功能簡單、故障處理速度慢、管理人員工作效率不高、機房整體能耗大等問題。因此,建立一套功能完善、效率高效、節能的機房可視化系統非常有意義。
三維可視化是機房信息化建設、實現數字化管理的關鍵技術。目前,三維可視化技術有VRML、X3D、Flash、Html5、OpenGL技術等[3],大部分技術需要安裝插件。羅珊珊、趙泓、呂靜賢等[4-6]都提出了三維可視化機房管理系統,數據中心機房作為各類業務的核心與中樞,要做到服務器設備、網絡設備安全、穩定、可靠、長期運行。周敬敬等[7]提出了基于WebGL技術使用配置文件,讓用戶可以動態裝配機房模型,但研究層面只停留在模型如何靈活構建和展示。華磊[8]提出一套機房管理系統,也采用了Unity3D技術,并提出了利用碰撞檢測功能處理用戶使用虛擬場景穿透的異?,F象,完成了對機房設備狀態的查詢、可視化、場景告警處理。從目前已有的研究結果來看,機房可視化相關研究不是很完善。機房可視化系統功能偏簡單,且絕大部分學者采用Unity3D技術研究,研究內容偏向虛擬場景的建設,對整個機房管理系統的功能部分缺少詳細研究,因此,三維機房系統研究方面具有較大的研究潛力。
本研究在已有研究的基礎上,選用新型的WebGL技術建立一套機房可視化管理系統,可以實時地在終端查看機房設備數據,著重對機房的水、電、火、風、溫度要素從環境、設備、安全方面進行設計,達到在線監管和預警目的,從而提高管理效率,降低運維成本,保障數據中心機房良好運維狀態。并且研究者對機房空調耗電量方面進行了優化,該系統可根據機房內空調的溫度變化來實時控制空調的溫度,從而使空調準確地服務于服務器,減少空調耗電量,保障機房內設備的有效運行。該系統已很好地在某公司平穩運行,且該公司的PUE值從之前的2.1降到了1.8。
系統架構如圖1所示,分為應用層、微服務層、數據層。數據層主要采用Mysql數據庫,用來存儲溫度傳感器、風向傳感器、煙霧傳感器、水浸傳感器等機房內各類感知設備采集的數據,為微服務層提供數據支持。微服務層包括環境管理、安全管理、設備管理三大功能,采用微服務的形式進行開發。應用層包括Android、ios端、PC端、H5端,機房可視化管理系統兼容于各種設備終端。

圖1 系統架構圖
本研究旨在建立一套基于web 3D的機房可視化管理系統,可以在終端實時查看機房設備數據,對機房的水、電、火、風、溫度進行環境、設備、安全方面的監管和預警,從而提高管理效率,降低運維成本,保障數據中心機房良好運維狀態。系統功能如圖2所示。

圖2 系統功能圖
機房可視化管理系統的數據均來源于機房內布置的傳感器,比如使用溫度傳感器采集機房內的溫度信息、煙霧傳感器采集機房內的煙霧信息、水浸傳感器采集機房內的積水信息、紅外傳感器感應目標出現、風向傳感器采集機房內空調風向信息。收集傳感器采集的數據,經過數據清洗之后傳給系統以供使用。
1)信息展示功能。應用web 3D技術,實現機房資源可視化,具體包括:機房總面積、已占用面積,機房最大可安裝機柜數、機房已安裝機柜數,機房電力設計總容量、機房實際電力總負荷,機房空調年最大負荷、機房空調實際負荷。并且提供服務器的詳情信息。比如點擊某一臺服務器,能夠顯示該服務器的名字、型號、IP地址、主要功能、端口號等基本信息。讓管理人員足不出戶就能掌握分布在各個機房、機柜的服務器的詳細信息。
2)服務器管理功能。通過機房可視化頁面,可以在終端搜索和查看某一臺服務器,準確定位服務器的位置信息,自動盤點服務器的數量。不用人工紙筆而用記事本記錄服務器的房間號、機柜號以及其他基本信息,節省維護成本。另外,管理人員還可以在可視化頁面自主上架服務器和下架服務器,上下架之后,設備可以在機房可視化頁面中自動新增和刪除。
3)機柜利用率功能。在機房可視化頁面,點擊機柜利用率按鈕就可以用圖形的方式顯示當前機房內機柜的整個空間利用率。具體實現方式是根據機柜的高度,使用無背景線框把機柜位置描出來,然后設置一個高度符合使用比例的立方塊來顯示各個機柜的利用率。通過這樣的方式,可以快速判斷新進服務器的安放位置、機柜的利用情況。
4)服務器故障報警。后臺程序實時監測服務器設備的異動情況,并在機房可視化頁面進行更新。如果服務器出現故障,就會在可視化頁面標注,并推送系統消息給管理員,因此,管理人員可以精準定位異常服務器,以快速及時地處理服務器故障問題。
1)走線管理功能。機房內的走線是指機房內服務器的電線、網絡線等線路在終端可視化顯示。機柜中的聯網設備或服務器設備會通過端口和線纜進行連接,組成一定結構的網絡。比如線纜會從機柜連出,延伸到屋頂上方或地板下方的隱蔽工程中(例如線槽)固定和布線,用肉眼無法觀察。而機房可視化界面能清晰地顯示各種線纜從端口到線槽再到端口的“端到端”的物理走線,從而梳理機房內日益密集的電氣管道與網絡線路,讓管理員更加直觀地掌握機房內線路的分布及走線情況,從而快速排除及修復線路類故障,提高線路線管理水平和故障解決效率。
2)漏水監測功能。根據水浸傳感器,監測機房是否有積水,比如說管理員忘記關窗戶導致下雨天有雨漏進來、天花板漏水、空調漏水等。后臺程序根據監測到漏水信息的水浸傳感器的位置對相應的服務器在可視化頁面進行水滴標識處理,然后推送系統消息,讓管理人員及時來排查除水,從而避免機房漏水導致的線路短路、服務器浸水等安全隱患。
3)空調調節功能。研究顯示,2015年,數據中心的能耗比占全球能耗的0.9%,預計2025年達到4.5%,2030年達到8%[9],且數據中心中空調能耗占整體能耗的34%[10]。因此,節省空調能耗可以有效節省機房的成本。本研究中的系統依據室內溫度變化,實時調節空調。具體控制流程如圖3所示。當室內溫度保持在18 ℃~28 ℃機房建議范圍的時候,不需要開空調。當低于18 ℃時,則以5分鐘為間隔,判斷這區間內溫度是否呈下降趨勢,如果是的話就輸出制暖信號;當高于28 ℃時,則以5分鐘為間隔,判斷區間內溫度是否呈上升趨勢,如果是的話就輸出制冷信號。

圖3 空調控制流程圖
4)火災監測功能。利用煙霧傳感器,采集機房是否著火或有煙霧的信息。后臺程序根據監測到火害信息的煙霧傳感器的位置對相應的服務器在可視化頁面進行標紅處理,然后推送系統消息,管理人員可以在可視化頁面查看是哪個機房的哪個機柜的服務器著火了,知道位置后及時到現場排查火災情況。這樣方便管理人員及時發現險情,立刻處理,避免因為火災帶來的重大損失。
利用紅外傳感器給機房內的敏感區域建立電子圍欄,并且結合監控攝像頭,對進入機房圍欄內的人員進行人臉識別。后臺程序一旦發現非管理人員進入,現場會出現報警聲并且給管理人員推送消息提醒機房有非工作人員進入了。
如今瀏覽器的功能越來越強大,而且這些功能可通過JavaScript直接調用,比如現在可以使用HTML5標簽添加音頻和視頻,而且可以在HTML5畫布上創建各種交互組件。WebGL就是HTML5中新提出的技術,利用WebGL可以直接使用顯卡的計算資源,創建高性能的二維和三維計算機圖形,然后通過JavaScript在網頁中使用WebGL進行編程,在瀏覽器創建三維場景并生成動畫。然而單獨使用原生的WebGL技術實現三維場景和動畫是非常復雜的,而且容易出錯。因此,衍生出Three.js庫來簡化這個過程。WebGL與Three.js的關系如圖4所示,Three.js是以WebGL為基礎的庫,封裝了一些3D渲染需求中重要的工具方法與渲染循環。

圖4 WebGL與Three.js的關系圖
機房可視化管理系統已成功應用于某運營商的機房和高校,得到客戶的一致好評,給公司節約了能耗資源。機房管理人員也評價此系統是他們的好幫手,提高了他們的工作效率,特別在機房安全管理上,讓他們能第一時間察覺問題并及時處理。
電源使用效率(Power Usage Effectiveness,PUE)在2006年就已經被提出,是用來確定數據中心能源效率的度量方法。計算公式為PUE=數據中心總能耗/ IT設備能耗。計算出來的比值越接近1,說明IT設備能耗占總能耗比例越高,其他非IT設備能耗占總能耗比例越低,因此機房用電效率高,機房越節能。
本研究利用該指標,收集了某公司數據中心機房的耗電量數據,經計算PUE值得出:該公司2020年第二季度機房PUE值為2.1,2021年第二季度PUE值為1.8,同比去年下降0.3,說明機房可視化管理系統的空調節能功能起到一定的效果。后續將繼續觀測數據中心的PUE值,持續改進節能算法。
本研究針對大規模集中式的數據中心機房管理不便的問題,面向實際的各大企業單位對機房管理的需求,設計了一套基于WebGL技術的機房可視化管理系統,完成了對機房環境、設備、安全方面的監管。筆者著重介紹了系統功能,并且優化了空調節能流程。本系統可跨平臺應用,無需插件就能訪問,功能齊全,尤其提出了空調節能措施,有效地降低了數據中心的PUE值。