文/于耳
建立面向應(yīng)用的存儲(chǔ)系統(tǒng)
文/于耳
上海公安高等??茖W(xué)校信息化建設(shè)進(jìn)入了快速發(fā)展期,大量與公安業(yè)務(wù)相關(guān)的校內(nèi)信息化應(yīng)用和培訓(xùn)平臺(tái)推出,使得服務(wù)器和存儲(chǔ)需求急劇增長(zhǎng)。
我校信息中心多數(shù)的服務(wù)器系統(tǒng)是基于X86標(biāo)準(zhǔn)化平臺(tái)搭建,對(duì)于關(guān)鍵應(yīng)用、數(shù)據(jù)庫(kù)交易密集型應(yīng)用以及系統(tǒng)資源消耗大的應(yīng)用系統(tǒng),放在物理機(jī)環(huán)境中運(yùn)行;對(duì)于業(yè)務(wù)量存在較大波峰波谷的應(yīng)用、相對(duì)不重要的系統(tǒng)則在虛擬機(jī)環(huán)境下運(yùn)行。中心已經(jīng)部署了50多臺(tái)基于2、4路 CPU的物理機(jī)和80多臺(tái)虛擬機(jī),虛擬機(jī)主要運(yùn)行在12臺(tái)4路Intel 75系列CPU服務(wù)器上,并配置了64G-192G的大內(nèi)存。根據(jù)我們?nèi)粘?duì)應(yīng)用系統(tǒng)性能的統(tǒng)計(jì)和分析,服務(wù)器處理能力已經(jīng)不是應(yīng)用發(fā)展的瓶頸,而存儲(chǔ)系統(tǒng)伴隨信息化建設(shè)的不斷推進(jìn),不斷遭遇到存儲(chǔ)性能、功能上的挑戰(zhàn)。
過(guò)去以容量為先的方法已經(jīng)無(wú)法滿足高校應(yīng)用系統(tǒng)對(duì)存儲(chǔ)性能和存儲(chǔ)功能的需求,因此探索出一條適合公安培訓(xùn)業(yè)務(wù)特點(diǎn)的校園級(jí)數(shù)據(jù)中心存儲(chǔ)規(guī)劃之道,科學(xué)地進(jìn)行存儲(chǔ)選型和規(guī)劃,建設(shè)能滿足應(yīng)用需求,真正為應(yīng)用系統(tǒng)量體打造的存儲(chǔ)系統(tǒng)顯得尤為重要。
目前我校的信息系統(tǒng)硬件邏輯架構(gòu)示意如圖1所示。目前我校有兩套存儲(chǔ)系統(tǒng),其中一套是一臺(tái)EMS NS960磁盤陣列組成的4 Gb/s FC-SAN存儲(chǔ)環(huán)境,配置了15000轉(zhuǎn)高速FC磁盤;另外一套基于DELL EqualLogic 對(duì)等存儲(chǔ)的PS5000E磁盤陣列和PS6000E磁盤陣列合并成一臺(tái)存儲(chǔ)構(gòu)成千兆IP-SAN存儲(chǔ)環(huán)境,這兩臺(tái)DELL EqualLogic存儲(chǔ)均配置了7200轉(zhuǎn)大容量SATA磁盤。這兩套存儲(chǔ)為學(xué)校130多臺(tái)物理和虛擬服務(wù)器提供存儲(chǔ)服務(wù)。在我校信息化建設(shè)中,我們發(fā)現(xiàn)存儲(chǔ)系統(tǒng)要解決好如下問(wèn)題:
(1)存儲(chǔ)的前后端連接技術(shù)是否滿足應(yīng)用對(duì)性能不斷增長(zhǎng)的需求;
(2)磁盤RAID規(guī)劃,如何為不同的應(yīng)用分配合適的存儲(chǔ)空間;
(3)針對(duì)應(yīng)用不斷變化的需求和運(yùn)行情況,如何規(guī)劃好數(shù)據(jù)生命周期管理;
(4)如何更有效地為應(yīng)用分配空間,降低總體采購(gòu)成本;
(5)如何更好地保護(hù)數(shù)據(jù);
(6)如何在未來(lái)升級(jí)或設(shè)備、技術(shù)更新時(shí)保護(hù)投資。
當(dāng)前如DELL、EMC等存儲(chǔ)廠商的最新產(chǎn)品均提供FCoE接口。從協(xié)議報(bào)文角度看,這些技術(shù)本質(zhì)上都是運(yùn)行SCSI數(shù)據(jù)包,從性能角度和協(xié)議效率從低到高依次是1Gb iSCSI、4Gb FC、8Gb FC、10Gb iSCSI、10Gb FCoE。因此從存儲(chǔ)前端連接技術(shù)看,大部分業(yè)務(wù)應(yīng)該考慮10Gb iSCSI或FcoE接口技術(shù)。另外對(duì)于少量文件型NAS應(yīng)用,可以采用廉價(jià)的單獨(dú)NAS設(shè)備,總成本會(huì)更低。
當(dāng)前主流存儲(chǔ)廠商如EMC、DELL、HDS等均已經(jīng)放棄了FC技術(shù)作為后端存儲(chǔ)連接方法,紛紛采用點(diǎn)對(duì)點(diǎn)的SAS技術(shù)。我們也注意到,從性能角度1個(gè)SAS2.0端口可提供4通路6Gb性能,高達(dá)24Gb,也遠(yuǎn)遠(yuǎn)超越當(dāng)前主流的4Gb FC磁盤接入速度。從磁盤廠商的公布數(shù)據(jù)看,F(xiàn)C磁盤和SAS磁盤性能和可靠性是完全相同的,因?yàn)槲覀冋J(rèn)為采用SAS2.0技術(shù)的新一代后端接入技術(shù)是最佳選擇。
對(duì)磁盤的性能角度看,最重要的就是IO吞吐量。一個(gè)IO所用的時(shí)間=尋道時(shí)間+數(shù)據(jù)傳輸時(shí)間。IOPS=IO并發(fā)系數(shù)/(尋道時(shí)間+數(shù)據(jù)傳輸時(shí)間),由于尋道時(shí)間相對(duì)傳輸時(shí)間,大幾個(gè)數(shù)量級(jí),所以影響IOPS的關(guān)鍵因素,就是降底尋道時(shí)間。而在連續(xù)IO的情況下,尋道時(shí)間很短,僅在換磁道時(shí)候需要尋道。在這個(gè)前提下,傳輸時(shí)間越少,IOPS就越高。顯然,每秒IO吞吐量=IOPS乘以平均IO SIZE。IO速率越大,IOPS越高,每秒IO吞吐量就越高。設(shè)磁頭每秒讀寫數(shù)據(jù)速度為V,V為定值,則IOPS=IO并發(fā)系數(shù)/(尋道時(shí)間+I(xiàn)O SIZE/V),代入可得每秒I O吞吐量=I O并發(fā)系數(shù)乘IO SIZE乘V/(V乘尋道時(shí)間+I(xiàn)O SIZE)。我們可以看出影響每秒I O吞吐量的最大因素,就是IO 速率和尋道時(shí)間,IO 速率越大,尋道時(shí)間越小,吞吐量越高。從硬盤廠商資料找到不同硬盤的尋道時(shí)間,并參考相關(guān)存儲(chǔ)廠商的最佳實(shí)踐文檔,計(jì)算后可以得到IOPS性能,可以得到表1。
因此我們?cè)谝?guī)劃整套存儲(chǔ)系統(tǒng)時(shí),還應(yīng)該根據(jù)應(yīng)用對(duì)性能需求,規(guī)劃合理的高速和低速磁盤配備。
磁盤陣列對(duì)于磁盤是經(jīng)過(guò)RAID處理,劃分LUN后提供給應(yīng)用使用的,所以RAID的規(guī)劃也是非常重要的。我們以常用的RAID10和RAID5來(lái)分析,為了簡(jiǎn)化分析過(guò)程,我們按照4塊盤為例,不考慮其他因素。
表1 硬盤吞吐性能
根據(jù)以上分析,我們認(rèn)為如果應(yīng)用對(duì)寫性能要求較高,應(yīng)該盡量分配RAID10空間;如果應(yīng)用對(duì)寫性能要求不高,可以盡量采用RAID5技術(shù),以實(shí)現(xiàn)空間最大化。
當(dāng)然如果僅僅是讀數(shù)據(jù),是和RAID級(jí)別沒(méi)有關(guān)系的。如果不考慮RAID保護(hù)性的可靠性,我們認(rèn)為對(duì)于某些“只讀”的數(shù)據(jù)應(yīng)該盡量存放在RAID5空間中。
圖2 RAID5可以提供更多的有效數(shù)據(jù)空間
1.讀操作
因?yàn)閞aid5(3數(shù)據(jù)盤,1個(gè)校驗(yàn)盤)與raid10的磁盤都可以提供服務(wù),所以在讀方面它們基本是沒(méi)有差別的。如果是讀為主的應(yīng)用,我們?cè)谶x擇這兩張RAID上應(yīng)該優(yōu)先考慮RAID5以提供更多的有效數(shù)據(jù)空間
2.連續(xù)寫
連續(xù)寫的過(guò)程,因?yàn)檫@個(gè)時(shí)候的校驗(yàn)是在Cache中完成,如4塊盤的raid5,可以先在內(nèi)存中計(jì)算好校驗(yàn),同時(shí)寫入3個(gè)數(shù)據(jù)+1個(gè)校驗(yàn)。而raid10只能同時(shí)寫入2個(gè)數(shù)據(jù)+2個(gè)鏡相。顯然這種應(yīng)用我們也應(yīng)該選擇RAID5.
3.離散寫
數(shù)據(jù)庫(kù)大部分操作就是離散寫,如每次寫一個(gè)數(shù)據(jù)塊的數(shù)據(jù)以及數(shù)據(jù)庫(kù)的REDO LOG等。這種情況對(duì)于raid10,我們可以看到,同樣的單個(gè)操作,最終raid10只需要2個(gè)IO,而raid5需要4個(gè)IO??紤]到性能和安全性因素,這種應(yīng)用我們更應(yīng)該選擇RAID10。
我們發(fā)現(xiàn)日常只有不到2 0%的數(shù)據(jù)被頻繁訪問(wèn),超過(guò)80%的數(shù)據(jù),在最初的幾次訪問(wèn)后就很少被訪問(wèn)了,我們的郵件數(shù)據(jù)尤其如此。因此建立起一套行之有效的數(shù)據(jù)生命周期管理策略,能夠在業(yè)務(wù)變化時(shí)以簡(jiǎn)單的方式自動(dòng)調(diào)整而又不對(duì)現(xiàn)有系統(tǒng)造成影響,是存儲(chǔ)建設(shè)中必須考慮的問(wèn)題。
作為校園級(jí)存儲(chǔ)規(guī)劃,不同業(yè)務(wù)系統(tǒng)統(tǒng)計(jì)出來(lái)的容量需要和實(shí)際差異可能很大,容量超配各廠商已經(jīng)提出多年,技術(shù)上已經(jīng)成熟,我們認(rèn)為存儲(chǔ)系統(tǒng)應(yīng)該配置超配功能,真正實(shí)現(xiàn)按需寫入,節(jié)約存儲(chǔ)的購(gòu)買成本,簡(jiǎn)化存儲(chǔ)的規(guī)劃和部署時(shí)間。
目前學(xué)校已經(jīng)建立起面向應(yīng)用的一百多套業(yè)務(wù)系統(tǒng),各部門IT技術(shù)水平肯定存在差異,這么多系統(tǒng)集中存儲(chǔ),如何在故障發(fā)生后能夠快速恢復(fù)數(shù)據(jù)越發(fā)成為存儲(chǔ)系統(tǒng)規(guī)劃中的重頭戲。
磁盤陣列廠商提供傳統(tǒng)的快照技術(shù)雖然可以有限解決部分人為誤操作以及病毒等邏輯錯(cuò)誤問(wèn)題,但大多需要進(jìn)行復(fù)雜的定義或存在碎片問(wèn)題影響到整體性能,而且快照數(shù)量是有限的,無(wú)法達(dá)成RPO和RTO的數(shù)據(jù)恢復(fù)要求。因此我們希望能夠通過(guò)CDP(持續(xù)數(shù)據(jù)保護(hù))的機(jī)制實(shí)現(xiàn)數(shù)據(jù)保護(hù),徹底解決邏輯錯(cuò)誤導(dǎo)致的數(shù)據(jù)損壞問(wèn)題。
對(duì)于物理錯(cuò)誤,我們希望建立起有效的容災(zāi)機(jī)制,能夠針對(duì)應(yīng)用的不同級(jí)別提供不同的QoS保障,并結(jié)合本地的CDP機(jī)制避免邏輯錯(cuò)誤的傳遞問(wèn)題。
系統(tǒng)選擇時(shí)如何避免系統(tǒng)更新?lián)Q代時(shí)候的斷層式升級(jí)和數(shù)據(jù)遷移的風(fēng)險(xiǎn),以及如何在新技術(shù)出現(xiàn)時(shí)可以采用直接或平滑升級(jí),都是校園級(jí)存儲(chǔ)中心規(guī)劃中要考慮到的問(wèn)題。
從上面的分析結(jié)論可以看出,存儲(chǔ)規(guī)劃和選型上,之前以容量為先的方法是無(wú)法滿足應(yīng)用對(duì)性能、對(duì)功能的需求。因此從存儲(chǔ)前后端連接技術(shù)、存儲(chǔ)磁盤選擇、RAID規(guī)劃與設(shè)計(jì)、數(shù)據(jù)保存和生命周期管理、存儲(chǔ)高級(jí)功能、數(shù)據(jù)高可用、投資保護(hù)等角度去考慮問(wèn)題,以業(yè)務(wù)需求為出發(fā)點(diǎn),集合存儲(chǔ)系統(tǒng)的架構(gòu)、配置和軟件功能,才能規(guī)劃出更適合學(xué)校業(yè)務(wù)特點(diǎn)滿足業(yè)務(wù)需要的存儲(chǔ)系統(tǒng)。
另外,無(wú)論是校園級(jí)數(shù)據(jù)中心還是針對(duì)某些應(yīng)用建立的單獨(dú)存儲(chǔ)系統(tǒng),都應(yīng)該具備良好的性能監(jiān)控能力,及時(shí)發(fā)現(xiàn)應(yīng)用造成的帶寬、I/0、延時(shí)等問(wèn)題,并提供統(tǒng)一的圖形化管理功能和常規(guī)的匯總報(bào)表能力,以利于日常的使用和維護(hù)。
(作者單位為上海公安高等??茖W(xué)校)