劉 津,翟 永,劉 磊,陳 杰,邢緒超
(國家基礎(chǔ)地理信息中心,北京 100830)
地理信息數(shù)據(jù)是國家經(jīng)濟建設(shè)、社會發(fā)展和國防安全的基礎(chǔ)性、戰(zhàn)略性信息資源,是國家地理空間信息資源的重要組成部分[1]。隨著信息技術(shù)的飛速發(fā)展和應(yīng)用的不斷深入,地理信息數(shù)據(jù)量不斷增長。以國家基礎(chǔ)地理信息中心為例(以下簡稱中心),據(jù)統(tǒng)計,10年前,中心的在線存儲數(shù)據(jù)量為12TB,目前在線數(shù)據(jù)量達到了2.5PB,數(shù)據(jù)量增長了214倍。
近年來,地理信息中心為有效地管理和處理地理信息數(shù)據(jù),配置了大量的存儲設(shè)備,構(gòu)建了存儲網(wǎng)絡(luò)。隨著存儲設(shè)備的不斷增加,存儲網(wǎng)絡(luò)的多架構(gòu)(云存儲、SAN、NAS、DAS[2])、多廠商(EMC、HDS、SUN、華為)、多對象(磁盤陣列、磁帶庫、光纖網(wǎng)絡(luò)、服務(wù)器)的特征愈發(fā)凸顯,運維管理愈發(fā)復(fù)雜。究其原因,一方面存儲網(wǎng)絡(luò)管理缺乏統(tǒng)一可遵循的標準化規(guī)范,導(dǎo)致不同品牌的存儲設(shè)備之間缺乏互操作性;另一方面,部分存儲廠商從自身利益出發(fā),逐漸形成“一把鑰匙開一把鎖”的運維管理模式,致使存儲網(wǎng)絡(luò)管理煩瑣低效。
為解決這一難題,經(jīng)過深入調(diào)研與分析,基于SNIA[3](Storage Networking Industry Association, 存儲網(wǎng)絡(luò)工業(yè)協(xié)會)定義的SMI-S[4](Storage Management Initiative specification, 存儲管理主動規(guī)范)作為主要管理協(xié)議,通過結(jié)合其他多種管理協(xié)議,構(gòu)造了一套面向存儲設(shè)備的專用管理網(wǎng)絡(luò),研究和開發(fā)了存儲網(wǎng)絡(luò)運維管理軟件系統(tǒng),突破了異構(gòu)管理瓶頸,成功解決不同廠商的磁盤陣列、光纖交換機等設(shè)備之間的集中化、自動化監(jiān)控,提高了存儲網(wǎng)絡(luò)的可管理性和易用性。
通過走訪和調(diào)研,10年前地理信息中心存儲網(wǎng)絡(luò)規(guī)模較小,僅配置了少量存儲設(shè)備,可用空間一般不超過數(shù)十TB。隨著信息化建設(shè)的不斷推進,地理信息中心的存儲網(wǎng)絡(luò)規(guī)模逐步擴大,設(shè)備的種類和數(shù)量逐步增多。以國家基礎(chǔ)地理信息中心為例,該單位目前配置的磁盤陣列達到了13臺(EMC VNX系列7臺、HDS AMS系列2臺、HUS系列1臺、SUN 6100系列2臺、華為OceanStor系列1臺),SAN光纖交換機7臺(Brocade 200系列2臺、5000系列3臺,6000系列2臺)以及基于IP網(wǎng)絡(luò)的云存儲設(shè)備1臺,可用空間超過了3.8 PB。這10年間,地理信息中心的存儲網(wǎng)絡(luò)可用空間越來越大,架構(gòu)越來越復(fù)雜。
在日常運維中,常常面對來自多個廠商的磁盤陣列、光纖交換機等設(shè)備,這些異構(gòu)存儲設(shè)備之間的互操作性、可管理性不強。運維技術(shù)人員需要利用廠商各自的專業(yè)管理軟件,手工連接至存儲設(shè)備進行基本的監(jiān)控和維護。由于專業(yè)管理軟件技術(shù)特點與操作界面各不相同,運維技術(shù)人員需要一一掌握,一一收集運維信息,并進行整合匯總,分析并診斷存儲網(wǎng)絡(luò)的整體性能和故障問題,這個過程具有人力成本高、準確度低、效率差等不足,給運維工作帶來了較大壓力,成為制約存儲網(wǎng)絡(luò)運維管理工作發(fā)展的主要瓶頸。因此,如何能夠自動化、實時監(jiān)控存儲網(wǎng)絡(luò)中的設(shè)備基本信息、運行狀態(tài),如何及時發(fā)現(xiàn)存儲網(wǎng)絡(luò)設(shè)備故障和隱患,如何提高多廠商、多架構(gòu)、多對象存儲設(shè)備的統(tǒng)一管理,是當前地理信息中心存儲網(wǎng)絡(luò)運維管理的主要需求。
根據(jù)地理信息中心的實際需求,本文研究和開發(fā)的存儲網(wǎng)絡(luò)運維管理軟件系統(tǒng)將提供自動化的配置管理、拓撲管理、性能管理、容量管理、告警管理以及統(tǒng)計分析等功能。該軟件系統(tǒng)依據(jù)UML[5](Unified Modeling Language, 統(tǒng)一建模語言)進行建模,完成了需求用例分析。存儲網(wǎng)絡(luò)運維管理軟件系統(tǒng)的主要功能需求如下:
1)配置管理:建立存儲網(wǎng)絡(luò)異構(gòu)設(shè)備資源配置項,針對狀態(tài)變化進行記錄,并確認其是否正確和完整。
2)拓撲管理:拓撲引擎能夠提供快速存儲網(wǎng)絡(luò)拓撲信息發(fā)現(xiàn),將組成情況、狀態(tài)和變化清晰呈現(xiàn)。
3)性能管理:實時監(jiān)控存儲網(wǎng)絡(luò)中的存儲設(shè)備,獲取性能數(shù)據(jù),并提供查詢、導(dǎo)出等功能。
4)容量管理:為優(yōu)化存儲空間使用,軟件系統(tǒng)能實時獲取存儲設(shè)備容量和變化信息。
5)告警管理:發(fā)生故障時,軟件系統(tǒng)能夠自動檢測和定位存儲網(wǎng)絡(luò)中的設(shè)備故障,識別空間使用超過安全閾值的設(shè)備,并實現(xiàn)主動告警。
6)統(tǒng)計分析:根據(jù)其他模塊提供的數(shù)據(jù)進行統(tǒng)計分析,便于運維人員從宏觀上掌握整個存儲網(wǎng)絡(luò)的運行情況和資源利用率。
上述功能需求關(guān)系如圖1所示。
圖1 系統(tǒng)各功能需求關(guān)系圖Fig.1 System function requirements
早期的存儲管理軟件主要采用CMIP[6](Common Management Information Protocol, 通用管理信息協(xié)議)等協(xié)議進行搭建。CMIP雖然管理功能較為強大,但存在實現(xiàn)復(fù)雜、用戶操作不便等缺點[7]。
經(jīng)過調(diào)研和分析,本軟件系統(tǒng)決定采用SMI-S作為主要管理協(xié)議以快速獲取存儲網(wǎng)絡(luò)設(shè)備的配置信息,即在存儲設(shè)備和本軟件系統(tǒng)之間提供標準化的通信方式,從而使存儲管理實現(xiàn)廠商無關(guān)性,提高管理效率、降低管理成本[8];通過SNMP[9]協(xié)議獲取存儲設(shè)備的告警信息;利用標準的JDBC/ODBC[10](Java Database Connectivity/Open Database Connectivity, Java數(shù)據(jù)庫互聯(lián)/開放數(shù)據(jù)庫互連)接口與運維信息采集數(shù)據(jù)庫對接,保存運維管理信息。
為通過上述協(xié)議獲取存儲網(wǎng)絡(luò)運維管理信息,本軟件系統(tǒng)基于以太網(wǎng)構(gòu)造了一套面向存儲網(wǎng)絡(luò)設(shè)備的專用存儲管理網(wǎng)絡(luò),如圖2所示。通過該網(wǎng)絡(luò),本軟件系統(tǒng)SMI-S 代理與磁盤陣列、光纖交換機廠商提供的SMI-S 供應(yīng)器(SMI-S Provider)對接,獲取設(shè)備配置信息;同時,通過SNMP協(xié)議的Trap機制進行告警事件的統(tǒng)一收集和集中展現(xiàn)[11]。最后,通過標準的數(shù)據(jù)庫接口,管理配置與告警信息等。
圖2 專用的存儲設(shè)備監(jiān)控網(wǎng)絡(luò)構(gòu)建示意圖Fig.2 Dedicated network of storage device monitoring
通過構(gòu)建該網(wǎng)絡(luò),成功解決了異構(gòu)環(huán)境下不同廠商磁盤陣列、光纖交換機等設(shè)備之間的統(tǒng)一監(jiān)控管理的問題。
根據(jù)目前地理信息中心存儲網(wǎng)絡(luò)的特點和運維管理需求,存儲網(wǎng)絡(luò)運維管理軟件系統(tǒng)總體架構(gòu)可分成數(shù)據(jù)采集層、設(shè)備管理層、運維管理層3個層次,如圖3所示。
圖3 存儲網(wǎng)絡(luò)運維管理軟件系統(tǒng)總體技術(shù)架構(gòu)圖Fig.3 Overall technical architecture of storage network operation and maintenance management system
1)數(shù)據(jù)采集層
數(shù)據(jù)采集層采用SMI-S、SNMP等主流采集協(xié)議,可屏蔽設(shè)備差異,支持變化的網(wǎng)絡(luò)規(guī)模環(huán)境,能夠根據(jù)管理對象的多少靈活部署。數(shù)據(jù)采集層采用分布式采集框架設(shè)計,包括:
①數(shù)據(jù)采集代理:面向存儲網(wǎng)絡(luò)的主要設(shè)備,支持多種數(shù)據(jù)采集協(xié)議,屏蔽協(xié)議之間的差異性,向上為設(shè)備管理層提供統(tǒng)一的數(shù)據(jù)接口。
②數(shù)據(jù)管理服務(wù)器:負責維護數(shù)據(jù)采集代理,與數(shù)據(jù)采集代理進行通信獲取格式化后的采集數(shù)據(jù),統(tǒng)一保存到數(shù)據(jù)庫服務(wù)器中。
③數(shù)據(jù)庫服務(wù)器:負責管理和維護采集數(shù)據(jù),是整個軟件系統(tǒng)的數(shù)據(jù)中心。
數(shù)據(jù)采集層結(jié)構(gòu)如圖4所示。
圖4 數(shù)據(jù)采集層結(jié)構(gòu)圖Fig.4 Data collection layer structure
2)設(shè)備管理層
在獲得存儲設(shè)備基本配置的基礎(chǔ)上,全面分析存儲網(wǎng)絡(luò)的拓撲結(jié)構(gòu)和磁盤的掛接關(guān)系,實現(xiàn)拓撲發(fā)現(xiàn)、告警管理、配置管理、性能管理以及容量管理等功能。
3)運維管理層
針對地理信息中心日常運維工作提供統(tǒng)計分析功能,便于運維人員從宏觀上掌握整個存儲網(wǎng)絡(luò)的運行和資源利用情況。
本軟件系統(tǒng)基于組件化的設(shè)計和實現(xiàn)方法,主要由代理管理、配置管理、拓撲管理、性能管理、容量管理、告警管理以及統(tǒng)計分析組件組成,實現(xiàn)存儲網(wǎng)絡(luò)運維管理的數(shù)據(jù)采集與管理、數(shù)據(jù)加工以及數(shù)據(jù)分析等功能。
代理管理組件是數(shù)據(jù)采集層的核心組件,用于數(shù)據(jù)采集與管理。代理管理組件作為一個應(yīng)用程序安裝在與被管設(shè)備網(wǎng)絡(luò)連接的主機上。代理管理組件主要由SMI-S代理、SNMP代理以及ODBC代理組成。SMI-S代理通過與磁盤陣列和光纖交換機廠商提供的符合管理標準的SMI-S供應(yīng)器對接,獲取設(shè)備的所有配置信息,形成統(tǒng)一、集中的配置管理庫;通常同廠商的同類設(shè)備對應(yīng)一個SMI-S代理。SNMP代理通過利用SNMP協(xié)議的Trap機制獲取來自設(shè)備的告警信息。ODBC代理則是通過標準的JDBC/ODBC接口與數(shù)據(jù)庫對接,管理采集的配置信息、告警信息等內(nèi)容。
配置管理、拓撲管理、性能管理、容量管理以及告警管理組件是設(shè)備管理層的主要組件,用于數(shù)據(jù)加工處理,其中配置管理組件是軟件系統(tǒng)的核心組件,其他組件依賴配置組件提供各自的管理功能。
統(tǒng)計分析組件是運維管理層主要組件,用于數(shù)據(jù)分析,作為高層組件,在其他組件中獲取各類數(shù)據(jù),以進行全局的統(tǒng)計分析和報表生成。各組件之間的關(guān)系如圖5所示。
圖5 系統(tǒng)組件關(guān)系圖Fig.5 System components
為了自動化、集中化監(jiān)控存儲設(shè)備基本信息,本軟件系統(tǒng)將代理管理組件獲取的配置信息和告警信息,以及配置管理、拓撲管理、性能管理、容量管理以及告警管理組件加工的數(shù)據(jù)信息,與統(tǒng)計分析組件分析的統(tǒng)計信息均存放于數(shù)據(jù)庫中進行統(tǒng)一管理。本軟件系統(tǒng)將上述運維管理數(shù)據(jù)分為磁盤陣列、光纖交換機以及拓撲鏈路等三類,其數(shù)據(jù)結(jié)構(gòu)設(shè)計如下:
1)磁盤陣列數(shù)據(jù)結(jié)構(gòu)主要包括:①磁盤陣列表,用來存放磁盤陣列ID、名稱、硬盤數(shù)量、卷數(shù)量、物理容量、可用存儲卷總?cè)萘康刃畔?;②存儲卷表,用來存放所屬磁盤陣列ID、卷ID、卷名稱、卷容量、塊數(shù)量、塊大小等信息;③磁盤表,用來存放存儲系統(tǒng)磁盤名稱、磁盤所在槽位號、可用塊數(shù)量、塊數(shù)量、塊大小等信息;④前端控制器表,用來存放所屬磁盤陣列ID、板卡ID、板卡名稱、版本號等信息;⑤前端光纖端口表,用來存放端口ID、所屬磁盤陣列標識、所屬板卡ID等信息。
2)光纖交換機數(shù)據(jù)結(jié)構(gòu)主要包括:①交換機表,用來存放交換機、交換機名稱、型號、管理IP等信息;②交換機端口表,用來存放端口全局名稱(WWN)、端口序號、端口類型等信息。
3)拓撲鏈路數(shù)據(jù)結(jié)構(gòu)主要包括:①SAN網(wǎng)絡(luò)表,用來存放網(wǎng)絡(luò)ID、磁盤陣列個數(shù)、交換機個數(shù)等信息;②拓撲節(jié)點表,用來存放節(jié)點ID、節(jié)點類型、節(jié)點名稱、關(guān)聯(lián)的設(shè)備類型、坐標等信息;③拓撲鏈路表,用來存放鏈路ID、前端端口ID、后端端口ID等信息。
本文通過分析地理信息中心存儲網(wǎng)絡(luò)運維管理的基本特點與實際需求,結(jié)合目前存儲網(wǎng)絡(luò)運維管理流程規(guī)范化和接口標準化的發(fā)展趨勢,主要采用SMI-S和SNMP協(xié)議,研究和開發(fā)了一套能夠解決多廠商、多型號、多架構(gòu)的存儲網(wǎng)絡(luò)設(shè)備集中管理的軟件系統(tǒng),實現(xiàn)了異構(gòu)存儲網(wǎng)絡(luò)中磁盤陣列、光纖交換機、服務(wù)器等資源的自動化集中監(jiān)控。
目前,該軟件系統(tǒng)已于2016年成功部署。該軟件系統(tǒng)配置了1臺交換機通過以太網(wǎng)連接磁盤陣列、光纖交換機,搭建專用存儲管理網(wǎng)絡(luò)以支持運維信息采集。該軟件系統(tǒng)配置了存儲網(wǎng)絡(luò)設(shè)備信息收集服務(wù)器1臺,并虛擬化為多臺Windows 服務(wù)器,分別安裝針對不同存儲設(shè)備的代理組件等應(yīng)用程序,基于專用存儲管理網(wǎng)絡(luò)收集EMC、HDS、SUN、華為、Brocade等存儲設(shè)備運維管理信息。據(jù)統(tǒng)計,該軟件系統(tǒng)能夠自動實現(xiàn)存儲設(shè)備數(shù)據(jù)傳輸率、緩存命中率、IO延遲等2 062個關(guān)鍵監(jiān)控指標項的采集、統(tǒng)計和分析,降低了存儲網(wǎng)絡(luò)運行的風險,明顯提高了運維管理的服務(wù)質(zhì)量。