做過大型IT系統(tǒng)維護的人員大多會遇到這樣的情況:IT系統(tǒng)上線時運行速度比較快,但運行一段時間(如1年多)后,系統(tǒng)的運行速度明顯降低,遠遠沒有達到系統(tǒng)的設(shè)計目標(biāo),需要緊急擴容等。出現(xiàn)這種情況時,系統(tǒng)的運行質(zhì)量往往會大幅度降低,影響業(yè)務(wù)部門或客戶的滿意度,而進行擴容需要大量的硬件和軟件投資,而且變更會帶來很大的風(fēng)險。
上述情況中,既有業(yè)務(wù)超常發(fā)展的原因,也有業(yè)務(wù)復(fù)雜度的提高增加系統(tǒng)資源開銷的原因,而沒有實施信息生命周期管理也是一個重要的原因。
信息增長帶來的壓力
信息快速增長給維護管理帶來了挑戰(zhàn)。1997年,山東移動業(yè)務(wù)支撐系統(tǒng)全省的信息量只有76GB,短短幾年,目前在線存儲總量達到了330TB。
數(shù)據(jù)量快速增長的主要原因有幾方面:業(yè)務(wù)量增長——從1997年到2004年,用戶數(shù)增長了十幾倍,目前用戶數(shù)以每年幾百萬的速度發(fā)展,并且每用戶通話使用量(MOU)也大幅增長;服務(wù)質(zhì)量的提高——公司為客戶提供包括市話、短信等詳細話單在線6個月的查詢,這需要很大的空間,而為了給客戶提供不間斷的業(yè)務(wù)處理能力,公司投入巨資正在進行容災(zāi)系統(tǒng)的建設(shè);管理精細化——新建的經(jīng)營分析系統(tǒng)提供了主動營銷、資費預(yù)演等強大功能,為公司經(jīng)營和客戶服務(wù)提供了有力支撐,而內(nèi)部業(yè)務(wù)管理的精細化也需要很大的存儲空間進行支撐。
從數(shù)據(jù)量的增長分布來看,用戶數(shù)增長占數(shù)據(jù)增長的60%,經(jīng)營管理占24%,服務(wù)質(zhì)量的提高占16%。
如何應(yīng)對挑戰(zhàn)
1.存儲安全性挑戰(zhàn)
從網(wǎng)絡(luò)安全角度分析,安全的基本原則包括三個方面:機密性(confidentiality)、可用性(availability)、完整性(integrity)。
數(shù)據(jù)丟失:這是最嚴重的,相當(dāng)于網(wǎng)絡(luò)安全定義中的完整性。出現(xiàn)數(shù)據(jù)丟失時,往往會造成長時間的數(shù)據(jù)不可用。造成數(shù)據(jù)丟失的原因很多,從發(fā)生部位可以分為硬件、數(shù)據(jù)庫、應(yīng)用軟件等;從丟失造成的原因上可分為人為和非人為。
可用性:造成不可用的原因很多,有數(shù)據(jù)丟失造成的不可用,也有存儲設(shè)備出現(xiàn)問題導(dǎo)致的不可用。
非法訪問:對應(yīng)于網(wǎng)絡(luò)安全的機密性。因山東移動的系統(tǒng)是專網(wǎng)系統(tǒng),從存儲角度很難出現(xiàn)非法訪問,但在數(shù)據(jù)庫及應(yīng)用方面,非法訪問的控制壓力是很大的。
數(shù)據(jù)遷移:在進行數(shù)據(jù)遷移時,存在數(shù)據(jù)一致性等風(fēng)險。從本質(zhì)上講,訪問效率也屬于安全性問題,當(dāng)訪問效率出現(xiàn)嚴重問題,將嚴重影響系統(tǒng)正常運行,從而引起業(yè)務(wù)系統(tǒng)崩潰。
存儲本身的效率:存儲本身的效率包含存儲本身的性能及發(fā)揮。
數(shù)據(jù)訪問的效率:數(shù)據(jù)訪問主要與應(yīng)用有關(guān),包含應(yīng)用程序執(zhí)行效率和數(shù)據(jù)分布等。
對安全性進行排序,金字塔最上面的是數(shù)據(jù)丟失,對系統(tǒng)造成的影響最大,依次往下是可用性、非法訪問、訪問效率和數(shù)據(jù)遷移,影響逐漸降低。
2.應(yīng)對存儲安全性問題
在集中和分散中尋找一個平衡,將單點故障對整個系統(tǒng)的影響降至最低,在集中帶來的維護方便性和分散帶來的安全性中尋找一個平衡點。
進行信息生命周期管理(ILM),依重要性不同對數(shù)據(jù)進行分級。
以面向客戶服務(wù)為基準(zhǔn),對業(yè)務(wù)系統(tǒng)進行優(yōu)先級管理。從面向客戶服務(wù)的業(yè)務(wù)中,梳理出提供服務(wù)的業(yè)務(wù)系統(tǒng),進而找出支撐業(yè)務(wù)系統(tǒng)的數(shù)據(jù)。從面向客戶角度可以進行分類,如營業(yè)系統(tǒng)、計費系統(tǒng)等面向客戶的業(yè)務(wù),非面向客戶的業(yè)務(wù)如結(jié)算系統(tǒng)等。面向客戶的服務(wù)優(yōu)先級要比非面向客戶的服務(wù)高。
制定可行的維護體系。首先要制定可恢復(fù)的備份規(guī)則。備份的目的是恢復(fù),一定要進行恢復(fù)測試,證明備份規(guī)則是有效的。另外,不要過分依賴或迷信設(shè)備技術(shù),如RAID、容錯、冗余等,提防小概率事件的發(fā)生。其次是建立資源管理模型,一方面從時間和空間域上對資源利用情況進行分析,另一方面將資源利用與業(yè)務(wù)量模型相結(jié)合,制定設(shè)備資源的KPI模型。
如何進行平衡存放呢?主要有以下兩個方面要考慮:一是雞蛋不要放在一個籃子里,即使存儲的容量能夠滿足,但對于很龐大的系統(tǒng),也不要選擇一臺存儲設(shè)備,而要根據(jù)信息重要性進行分類,通過多臺存儲可以降低風(fēng)險;二是同一個籃子里的蛋也要進行相對隔離,目的是在故障出現(xiàn)時,把對整個系統(tǒng)的影響降至最低。
如何應(yīng)對數(shù)據(jù)量龐大的問題呢?主要是以信息生命周期管理(ILM)理念來解決信息量龐大的問題。信息生命周期管理分為創(chuàng)建、保護、訪問、遷移、歸檔、回收六個階段,包含系統(tǒng)的開發(fā)設(shè)計階段,也包含系統(tǒng)維護階段。
信息生命周期管理首先要對業(yè)務(wù)進行梳理,根據(jù)業(yè)務(wù)數(shù)據(jù)重要性進行分類,確定不同的包含方式。其次,通過將數(shù)據(jù)按優(yōu)先級進行分類,在確保系統(tǒng)總體擁有成本的前提下,確定相應(yīng)的數(shù)據(jù)所需要的存儲系統(tǒng)。通過對數(shù)據(jù)進行分類,可以提高整個系統(tǒng)的安全級別,做到重要數(shù)據(jù)重點保護,還可以對關(guān)鍵業(yè)務(wù)、關(guān)鍵數(shù)據(jù)實施容災(zāi)保護。通過對數(shù)據(jù)進行分類,可以降低系統(tǒng)總體擁有成本。成本與安全是一對矛盾,需要尋找一個平衡,在滿足業(yè)務(wù)需求的前提下,降低系統(tǒng)投資,而且可以針對不同業(yè)務(wù)服務(wù)級別提供針對性的維護,從而降低整個系統(tǒng)的總體擁有成本。
3.提高數(shù)據(jù)的訪問效率
數(shù)據(jù)的訪問效率與存儲、應(yīng)用等都有關(guān)系,但存儲作為數(shù)據(jù)訪問的最低端,是系統(tǒng)運行效率的基礎(chǔ)和根本。通過“開源節(jié)流”的方式可以提高數(shù)據(jù)的訪問效率。開源就是在設(shè)計階段發(fā)揮整個存儲的性能,節(jié)流就是在設(shè)計和維護階段,降低應(yīng)用對存儲的資源需求。
(1)設(shè)計階段
規(guī)劃設(shè)計對整個系統(tǒng)的運行質(zhì)量是至關(guān)重要的,要引起足夠重視,不能草率完成。
對上線應(yīng)用應(yīng)該進行測試或測算,評估需求模型,在條件允許的情況下,最好進行實際數(shù)據(jù)測試,可以減少系統(tǒng)上線風(fēng)險。要相信測試值,不要相信理論值,因理論值測試的環(huán)境與生產(chǎn)環(huán)境相差很大,不具有可比性。要發(fā)揮整個存儲陣列的性能,避免熱盤瓶頸。當(dāng)某些資源出現(xiàn)瓶頸時,將影響整個系統(tǒng)的運行效率。對速度要求敏感的系統(tǒng),可以空間換效率。在一個系統(tǒng)內(nèi)部,也存在資源需求不均的情況,如數(shù)據(jù)重做日志,產(chǎn)生的寫數(shù)據(jù)量較大,對速度要求較高,劃分時要進行考慮,否則將影響整個數(shù)據(jù)庫的運行。
(2)維護階段
從設(shè)備角度看,要對存儲定期進行分析,提出優(yōu)化和擴容建議。首先,從時間域和空間域上對存儲運行情況進行分析,找出運行瓶頸。其次,制定KPI運行曲線,為擴容提供依據(jù)。根據(jù)系統(tǒng)自身的應(yīng)用特點,制定可行的KPI曲線,可以得到不同時間磁盤陣列的利用率情況,從而為優(yōu)化和擴容提供依據(jù)。
從應(yīng)用角度分析,主要目的是減少讀寫磁盤數(shù)量。將讀寫磁盤最高的應(yīng)用從高到低進行排序,優(yōu)先優(yōu)化前面的應(yīng)用。優(yōu)化的方式有盡量使用索引、遷移歷史數(shù)據(jù)等。很多系統(tǒng)上線初期運行很好,一段時間后,系統(tǒng)運行效率明顯降低,產(chǎn)生的歷史數(shù)據(jù)對應(yīng)用效率影響很大。我們曾經(jīng)做過一次系統(tǒng)優(yōu)化,只是清理了歷史數(shù)據(jù),系統(tǒng)的運行效率就提高了20%。此外,在設(shè)計階段可能會有考慮不周全的情況,或者在使用一段時間后,系統(tǒng)出現(xiàn)磁盤數(shù)據(jù)不平衡的狀況,這時就需要進行調(diào)整。總之,歷史數(shù)據(jù)的整理應(yīng)該納入例行的維護任務(wù),而不應(yīng)該在出現(xiàn)性能瓶頸時再處理。另外,在軟件設(shè)計時,應(yīng)該多考慮磁盤節(jié)流,從源頭上進行控制。
信息生命周期管理的六個階段
小結(jié)
面對信息的快速增長,應(yīng)以最優(yōu)的TCO為基礎(chǔ),充分利用人員、流程、技術(shù)三大要素,通過設(shè)計階段平衡存放、信息生命周期管理,以及維護階段的可實施的維護體系管理,最終達到合適的安全性目標(biāo),就能解決信息快速增長帶來的挑戰(zhàn)。