iSCSI便于部署;
由于可以使用10Gb以太網(wǎng),因此iSCSI更"快"。
從不同程度上,根據(jù)其使用環(huán)境和性能需求,這些優(yōu)點(diǎn)確實(shí)是真的。但是,不幸的是,iSCSI不能滿足要求嚴(yán)格的企業(yè)級(jí)需求。
性能
讓我們先來(lái)看一下性能。事實(shí)上iSCSI確實(shí)可以承載相當(dāng)大的吞吐量。一些特殊應(yīng)用程序上,大部分的協(xié)議、標(biāo)準(zhǔn)或設(shè)備都可以良好地運(yùn)行,而且iSCSI確實(shí)在有些領(lǐng)域非常勝任。
毫無(wú)疑問(wèn),僅支持iSCSI的設(shè)備是針對(duì)中小型企業(yè)市場(chǎng)的。沒(méi)有廠家聲稱(chēng)說(shuō)客戶可以在iSCSI存儲(chǔ)上存放大型的事務(wù)性數(shù)據(jù)庫(kù),但是iSCSI的市場(chǎng)宣傳卻讓許多IT管理者相信了iSCSI在這方面的成本節(jié)約性。請(qǐng)?zhí)貏e小心,不要陷入這個(gè)陷阱。
出于許多原因,光纖通道(FC)能夠提供更好的性能。我們經(jīng)常將關(guān)于性能的討論轉(zhuǎn)移到那些其實(shí)并不具備可比性的那些因素的討論上。我們經(jīng)常看到有關(guān)iSCSI性能方面的爭(zhēng)論最后變成批評(píng)SATA(串行ATA)性能上的劣勢(shì),而這種情況僅僅是因?yàn)樵S多SATA陣列廠商同時(shí)也提供iSCSI支持。當(dāng)然,在承載大量的隨機(jī)輸入/輸出工作負(fù)荷的時(shí)候,SATA確實(shí)會(huì)性能下降許多,當(dāng)然這和底層的訪問(wèn)協(xié)議毫無(wú)關(guān)系。
光纖通道的設(shè)計(jì)就是針對(duì)大型塊IO,并且同樣地,做了非常多的優(yōu)化以便傳輸存儲(chǔ)數(shù)據(jù)。以太網(wǎng)則不然,但是通過(guò)使用巨型幀(9K的數(shù)據(jù)單位,而不是1.5K的數(shù)據(jù)單位),以太網(wǎng)也可以減少這方面的顧慮。但是,光纖通道主機(jī)總線適配器卡要比以太網(wǎng)主機(jī)總線適配器卡更有效率。簡(jiǎn)單的說(shuō),光線通道本質(zhì)上需要更少的CPU資源,因?yàn)槭褂靡蕴W(wǎng)的話,那么每個(gè)幀上都要會(huì)產(chǎn)生一個(gè)中斷請(qǐng)求。以太網(wǎng)實(shí)際上是針對(duì)小型的和經(jīng)常性的數(shù)據(jù)包的處理,而不是針對(duì)大型數(shù)據(jù)流。iSCSI也是處在TCP協(xié)議的上層,因此需要傳輸?shù)臄?shù)據(jù)在操作系統(tǒng)內(nèi)要需要通過(guò)更多的層才能實(shí)際從網(wǎng)線發(fā)出,這更增加了延遲性。由于TCP具有校驗(yàn)和卸載引擎,因此出于實(shí)際考慮,我們排除了額外的TCP負(fù)荷。簡(jiǎn)而言之,光纖通道能夠提供更低的延遲性,和更高的吞吐量。重復(fù)一次,當(dāng)你在基于光纖通道的存儲(chǔ)局域網(wǎng)(SAN)和基于iSCSI的存儲(chǔ)局域網(wǎng)之間做抉擇時(shí),需要考慮你所面對(duì)的特定的性能需求。
網(wǎng)絡(luò)利用是另一個(gè)重要問(wèn)題。iSCSI的一個(gè)主要賣(mài)點(diǎn)就是你可以使用現(xiàn)有的網(wǎng)絡(luò)架構(gòu);事實(shí)上,你可以使用同樣的網(wǎng)絡(luò)接口卡,讓其他的IP傳輸和iSCSI傳輸一起通過(guò)。如果是偶爾使用還好,但是對(duì)于那些同時(shí)需要良好的存儲(chǔ)訪問(wèn)時(shí)間的高傳輸量(從TCP/IP的角度)服務(wù)器來(lái)說(shuō),將iSCSI部署在單一的網(wǎng)絡(luò)接口上會(huì)明顯影響服務(wù)器的性能。事實(shí)上,iSCSI的用戶經(jīng)常發(fā)現(xiàn),由于他們實(shí)際上并不需要很強(qiáng)的性能,基于網(wǎng)絡(luò)附加存儲(chǔ)的解決方案(例如,采用網(wǎng)絡(luò)文件系統(tǒng)或通用網(wǎng)際文件系統(tǒng))實(shí)際上也可以做得同樣好。
我們還有一些選擇有助于我們減緩主機(jī)端的網(wǎng)絡(luò)堵塞問(wèn)題。我們當(dāng)然可以部署第二個(gè)網(wǎng)卡,而且幸運(yùn)的是,現(xiàn)在的大部分服務(wù)器都提供2到4Gb的網(wǎng)絡(luò)接口。當(dāng)我們開(kāi)始討論關(guān)于10Gb以太網(wǎng)的需求時(shí),我們很可能會(huì)碰到我們前面所述的其他性能問(wèn)題。如果使用環(huán)境的訪問(wèn)特征非常適合iSCSI,那么的確可以選擇10Gb以太網(wǎng)。
那么一個(gè)網(wǎng)絡(luò)如何處理10Gb以太網(wǎng)呢?可能我們需要更新一些架構(gòu)來(lái)達(dá)成這一點(diǎn)。解決IP存儲(chǔ)網(wǎng)絡(luò)中的網(wǎng)絡(luò)堵塞經(jīng)常需要分離一些工作任務(wù)–一個(gè)針對(duì)存儲(chǔ)的完全分離的IP網(wǎng)絡(luò)。如果10Gb以太網(wǎng)對(duì)網(wǎng)絡(luò)的負(fù)荷太高,而且只有一個(gè)服務(wù)器需要性能提升的話,那么人們可能傾向于直接將一個(gè)以太網(wǎng)網(wǎng)線連接到他們的存儲(chǔ)設(shè)備。不幸的是,這樣只會(huì)把你帶回到DAS(直連式存儲(chǔ))時(shí)代,而且事實(shí)是,一個(gè)DAS設(shè)置確實(shí)能提供更好的性能。
彈性
在光纖通道世界中,其設(shè)置是具有非常高的可靠性的。每個(gè)連接到存儲(chǔ)局域網(wǎng)的節(jié)點(diǎn)都可以使用兩個(gè)主機(jī)總線適配器端口,并在不同路徑上分別兩次"看到"存儲(chǔ)邏輯單元號(hào)。如果設(shè)置正確,這些邏輯單元好可以通過(guò)一個(gè)虛擬的邏輯單元號(hào)進(jìn)行訪問(wèn),而如果發(fā)生故障,則驅(qū)動(dòng)器可以在實(shí)際的邏輯單元號(hào)之間進(jìn)行故障復(fù)原。這就是存儲(chǔ)局域網(wǎng)的存儲(chǔ)原理,每個(gè)人都很喜歡這一點(diǎn)。
在一個(gè)光纖通道存儲(chǔ)局域網(wǎng)里面,我們可以一邊更新或替換存儲(chǔ)設(shè)備控制器以及交換機(jī),一邊不產(chǎn)生宕機(jī)時(shí)間。但是在iSCSI世界里,我們則不能。每個(gè)主機(jī)都是直接連接到單一的交換機(jī),無(wú)論它們是否使用同一個(gè)網(wǎng)絡(luò)接口卡來(lái)進(jìn)行TCP/IP傳輸。如果交換機(jī)消失,那么就沒(méi)有故障復(fù)原能力了。一些廠商可能已經(jīng)為iSCSI設(shè)計(jì)了專(zhuān)用分路解決方案,但是這種解決方案只能用于一種操作系統(tǒng),并且只能適用于他們自己的存儲(chǔ)設(shè)備。
所有這些麻煩事中的好消息就是你實(shí)際上可以選擇多種技術(shù)。
我一直在勸說(shuō)大家將iSCSI看成一種介于高性能光纖通道存儲(chǔ)局域網(wǎng)和文件共享(NAS)之間的技術(shù)。大部分光纖通道存儲(chǔ)陣列廠商現(xiàn)在都為陣列本身直接提供iSCSI支持,促使企業(yè)采用復(fù)合式的部署方式。本來(lái)連接到SAN的磁盤(pán)陣列現(xiàn)在可以同時(shí)連接到IP,并根據(jù)不同的性能和可靠性要求來(lái)滿足兩種不同的需求。
不要因?yàn)榉磳?duì)者反對(duì)就否定iSCSI,也不要在沒(méi)有慎重考慮的情況下就采用iSCSI。
總而言之
所謂的iSCSI優(yōu)點(diǎn)實(shí)際上卻存在性能障礙;
光纖通道提供多路機(jī)制、更小的延遲性、更有效的大型數(shù)據(jù)塊處理方式;
對(duì)于許多用途來(lái)說(shuō),iSCSI的性能表現(xiàn)經(jīng)常已足夠勝任。