摘 要 隨著互聯網的快速發展,關鍵數據對企業、單位越來越重要,機房時數據信息的載體,體現著單位的信息化發展水平。目前,很多大公司、單位都有自己的數據中心。隨著專利信息化的快速發展,國知局機房數量逐年增多,通過建立一個機房運維管理系統,實現對機房環境、計算機設備等集中監控、管理,為信息化資源的高效管理提供一個有效的技術支撐平臺。
【關鍵詞】機房運維管理 系統
1 研究背景
隨著網絡技術、通信技術和計算機技術的發展,計算機房在企業中逐漸處于核心地位。隨著國知局存儲需求的急劇增長、機房規模的持續快速膨脹,機房內的服務器數量、動力、環境保障設備越來越多,機房安全的重要性、機房的運維管理水平等問題開始受到廣泛關注。
機房是專利工作的基礎架構,維持機房良好運行是專利工作的重中之重,通過機房運維管理系統,保障機房中的設備高度可靠運行,通過機房運維和管理在日常工作變被動為主動,對于出現的問題做到早發現,早解決,提前預警,提高對日常工作的輔助作用,為領導提供決策依據。
2 系統需求分析
2.1 系統功能定義
對于一個機房,它的屬性信息包括空調、UPS、消防、機柜、計算機、外來人員等。
2.1.1 電力拓撲
顯示機房UPS到機柜PDU之間的電力關系。通過樹形菜單實現。
2.1.2 預警
當UPS負載率超過60%后,向用戶報警;當機柜PDU電流值超過額定值80%后,向用戶報警;當機柜空間使用率超過80%后,向用戶報警。
2.1.3 機柜
能查詢機柜PDU額定值,當前值;能查詢機柜已用空間;能查詢機柜中存放設備信息(例如設備名稱,IP地址等)。
2.1.4 服務商
可以通過服務商名稱、聯系人兩種方式查詢服務商信息。(服務內容,服務級別)。
2.1.5 配置信息
能查詢機房空調配置信息(品牌、型號、制冷量、壓縮機品牌、壓縮機型號);能查詢機房UPS配置信息(品牌、型號、數量、額定功率、電池組數、電池總個數、電池容量、單塊電池電壓、放電終止電壓、電池后備時間);能查詢機房消防系統的配置信息(報警控制器品牌、型號、鋼瓶藥劑重量(單只)、鋼瓶數量、消防分區數量)。
2.1.6 統計信息
能對機房專用軟水機的加鹽量、用水情況按起止時間列出總量;能對外來人員按公司名稱、登記人進行查詢,列出選定日期內總人數,公司數;能對廠商服務報告按照維護內容、廠商名稱、設備序列號、設備編號進行查詢;能對機房日志按值班人、日志內容進行查詢。
2.1.7 備品
能按物品名稱、庫存數量、存放位置查詢備品(備品分設備備件、易耗品兩種)的信息。
2.1.8 計算機
能按序列號、IP地址、機柜號、HOST查詢計算機設備的信息。
2.2 系統平臺結構
機房運維管理平臺采用B/S架構,前臺主要實現查詢、預警、統計功能,后臺實現用戶管理以及機房屬性數據的維護操作。
系統架構設計為主、備服務器互為備份,兩臺服務器實時共享數據資源,當主服務器宕機后,業務系統切換到備份服務器,保障系統的高可用性。
3 安全、備份方案
3.1 安全方案
通過登陸模塊對用戶角色和級別進行控制,根據權限進行相應操作,對用戶信息采用MD5加密,保障系統安全。
對用戶的操作采取審計功能,用戶登陸及對數據庫的增,刪,改操作都被記錄到LOG中,做到可查詢,保障系統應用安全。
3.2 備份方案
數據庫備份:實行完全備份與差異備份的方法。每周一對數據庫進行完全備份,周二至周日對數據庫進行差異備份,保障數據的安全。
文件備份:當程序文件有更新時,對程序目錄Apache Software Foundation\Tomcat 6.0\webapps\ROOT進行完全備份。
4 系統實現
4.1 功能設計
4.1.1 配置信息查詢模塊
(1)空調。查詢空調(品牌、型號、制冷量、壓縮機品牌、壓縮機型號)。
(2)UPS。查詢UPS(品牌、型號、數量、額定功率、電池組數、電池總個數、電池容量、單塊電池電壓、放電終止電壓、電池后備時間)。
(3)消防。查詢消防信息(報警控制器品牌、型號、鋼瓶藥劑重量(單只)、鋼瓶數量、消防分區)。
4.1.2 統計信息查詢模塊
(1)外來人員。按公司名稱查詢,能計算出選定日期內某公司人員進入機房總次數,按選擇得機房分別計算。按登記人查能計算出選定日期內某人進入機房總次數,按選擇得機房分別計算。按全部查詢,能計算出選定日期內來人總數。
(2)軟水。能計算出選定日期內各機房得用水、用鹽總量,能進一步查看明細情況。
(3)日志。按日志內容查詢,能查出選定日期、選定機房的符合條件的記錄。
按值班人查詢,能查出能查出選定日期、選定機房的符合條件的記錄。
(4)服務報告。能按序列號、設備編號 服務商名稱、維護內容四種方式查詢選定日期內得服務報告情況。
4.1.3 服務器設備查詢模塊
能按序列號、機柜號、IP地址、HOST、機型五種方式查詢服務器設備,列出設備的電源信息、維保信息、配置信息、項目信息。
4.1.4 電力拓撲模塊
把配電柜到機柜之間得電力開關邏輯關系通過圖形方式展示出來,方便運維人員快速定位發現問題,定位故障。
4.1.5 預警模塊
機柜空間、機柜電源使用率、機房UPS負載率如超過設置閥值,將被檢索列出。
4.1.6 機柜模塊
能查詢列出機柜號、PDUA額定值、PDUA實際值、PDUB額定值、PDUB實際值,已用空間,存放設備,通過點擊存放設備,列出設備的服務器名稱、序列號、IP地址信息 項目名稱。
4.1.7 服務商模塊
可以通過服務商名稱、聯系人兩種方式查詢服務商信息(聯系人、聯系人電話、對應服務、服務級別)。
4.1.8 備品模塊
包括設備備件、日耗品、機房工具,能按物品名稱、庫存數量存放位置查詢。
4.2 數據庫設計
數據庫設計表有機房表,用戶表,日志表,服務器表,空調表,報警閥值表等共23個表,如表1機房所示。
4.3 系統環境
4.3.1 操作系統
使用Windows2003 server操作系統。
4.3.2 語言、數據庫
機房運維管理系統開發選用JSP/Tomcat6.0/JDBC/SQL2005。
4.4 機房運維管理系統特色
基于JSP技術, 它擁有Java在開發和移植方面的優勢。由于面向對象,所以它有很強的鍵入,封裝,異常處理,自動存儲管理能力;使用Java使得它代碼更強大,編程更高效。
預警模塊使用JFreeChart進行儀表盤展示,機房運維人員可以更直觀的查看設備狀態,定位故障。
支持EXCEL方式數據批量導出,導入。將機房日志、外來人員等信息通過EXCEL方式導出,方便數據的保存與查閱。另外,支持數據通過EXCEL方式批量導入,從而減少大量數據錄入工作。
5 技術難點處理
5.1 連接數據庫驅動程序
為了使程序在具有安全性、完整性、健壯性的同時, 可以方便地移植,采用JDBC連接數據庫更合適一些。JDBC是一種可用于執行SQL語句的Java API。通過使用JDBC,可以很方便地將SQL語句傳送到幾乎任何一種數據庫。
5.2 分頁技術
在機房運維管理系統查詢展示中,需要使用分頁顯示,JAVA中的JDBC在這方面沒有很好的解決方案。
自己編寫一個分頁函數,當需要分頁時,調用這個函數即可
查詢出有多少條記錄:
select count(*)from learning
計算分多少頁:
if(counts%pageSizes==0){pageCounts=counts/pageSizes;}
else{pageCounts=counts/pageSizes+1;}
判斷每一頁能遍歷到第幾條記錄
int i=(intPage-1)*pageSizes;
5.3 消除亂碼
產生中文亂碼是因為服務器使用的編碼方式不同和瀏覽器對不同編碼字符顯示結果不同導致的。解決方法為在JSP頁面里經常出現中文亂碼,在頁面里加如下兩行代碼
<%@ page contentType="text/html; charset=gb2312" language="java"%>
參考文獻
[1]孫涌.現代軟件工程[M].北京:希望電子出版社,2002(08).
[2]薩師煊,王珊.數據庫系統概論[M].北京:高等教育出版社,2000(02).
[3]賀民譯.JSP高級開發與應用[M].北京:科學出版社,2002(09).
[4]廖若雪.JSP高級編程[M].北京:機械工業出版社,2001(03).
作者簡介
于文奇(1982-),男,高級/碩士。研究方向為機房運維管理。
作者單位
中國專利信息中心 北京市 100088