在企業(yè)的IT基礎(chǔ)架構(gòu)體系中,數(shù)據(jù)是非常重要的一個部分,而數(shù)據(jù)又都是存在存儲設(shè)備里面,故存儲設(shè)備的選型及相關(guān)的技術(shù),便顯得非常重要。
本文旨在講述存儲的各方面概念之余,提出相對各種場景最適合使用的存儲技術(shù),以供實踐參考。
提到存儲,首先需要思考一個問題:為什么需要存儲?
假如有100TB的數(shù)據(jù),買來100GB大小的磁盤來存放,則需要1000個。
那么,如何將1000個硬盤連接起來呢?如果用一般的PC,則需要250臺。
數(shù)據(jù)存放起來了,如何管理和使用?性能如何?當(dāng)設(shè)備損壞或發(fā)生事故時如何應(yīng)對?這些都在下文中進行逐一討論。
總而言之,存儲主要解決了以下的幾個主要問題:
容量
速度
易于管理
安全:容災(zāi)與備份
可擴展性
發(fā)展歷史
提到存儲的發(fā)展歷史,不得不提到IT技術(shù)的發(fā)展趨勢,從大型機到小型機,到X86服務(wù)器,再到云主機,IT技術(shù)經(jīng)歷了一系列的迭代變革。
跟隨著IT技術(shù)的進步,存儲技術(shù)也隨之有了發(fā)展,存儲產(chǎn)品的發(fā)展歷程就是數(shù)據(jù)保存、應(yīng)用發(fā)展的過程。
存儲產(chǎn)品的趨勢是,使用統(tǒng)一存儲,即通過整合降低成本,將NAS和SAN結(jié)合起來,簡化存儲管理,提高利用率。EMC在2010年推出了VNX系列產(chǎn)品,首次推出了統(tǒng)一存儲的概念,HDS在2012年跟進,推出了HUS系列產(chǎn)品。
企業(yè)級存儲分類
按存儲多樣性劃分,可以分為三大類:存儲硬件,存儲軟件和存儲方案,而每個類別都可以延伸出很多技術(shù)內(nèi)容。
而外置存儲的硬件構(gòu)成,可以分成以下幾個內(nèi)容:
而按照基礎(chǔ)架構(gòu)去分類,則可以分為三類:
DAS(Direct Attached Storage)直接掛接存儲
NAS(Network Attached Storage)網(wǎng)絡(luò)掛接存儲
SAN(Storage Area Network)存儲區(qū)域網(wǎng)絡(luò)(包括FC SAN、IP SAN)
01 DAS
開放系統(tǒng)的直接掛接存儲(Direct Attached Storage,簡稱DAS)已經(jīng)有近四十年的使用歷史,隨著用戶數(shù)據(jù)的不斷增長,尤其是數(shù)百GB以上時,其在備份、恢復(fù)、擴展、災(zāi)備等方面的問題變得日益困擾系統(tǒng)管理員。
直連式存儲與服務(wù)器主機之間的連接通道通常采用SCSI連接,隨著服務(wù)器CPU的處理能力越來越強,存儲硬盤空間越來越大,陣列的硬盤數(shù)量越來越多,SCSI通道將會成為IO瓶頸;服務(wù)器主機SCSI ID資源有限,能夠建立的SCSI通道連接有限。
02 NAS
NAS(Network Attached Storage:網(wǎng)絡(luò)掛接存儲)按字面簡單說就是連接在網(wǎng)絡(luò)上,具備資料存儲功能的裝置,因此也稱為“網(wǎng)絡(luò)存儲器”。它是一種專用數(shù)據(jù)存儲服務(wù)器。它以數(shù)據(jù)為中心,將存儲設(shè)備與服務(wù)器徹底分離,集中管理數(shù)據(jù),從而釋放帶寬、提高性能、降低總擁有成本、保護投資。其成本遠遠低于使用服務(wù)器存儲,而效率卻遠遠高于后者。
NAS解決方案通常配置為作為文件服務(wù)的設(shè)備,由工作站或服務(wù)器通過網(wǎng)絡(luò)協(xié)議(如TCP/IP)和應(yīng)用程序(如網(wǎng)絡(luò)文件系統(tǒng)NFS或者通用Internet文件系統(tǒng)CIFS)來進行文件訪問。大多數(shù)NAS連接在工作站客戶機和NAS文件共享設(shè)備之間進行。這些連接依賴于企業(yè)的網(wǎng)絡(luò)基礎(chǔ)設(shè)施來正常運行。
NAS的優(yōu)點是支持文件共享,易于管理,缺點是其為網(wǎng)絡(luò)盤,而不是系統(tǒng)本地SCSI盤,不支持本地文件系統(tǒng),軟件兼容性差(某些數(shù)據(jù)庫和系統(tǒng)級軟件不可以使用)。
03 SAN
存儲區(qū)域網(wǎng)絡(luò)(Storage Area Network,簡稱SAN)采用網(wǎng)狀通道(Fibre Channel ,簡稱FC,區(qū)別于Fiber Channel光纖通道)技術(shù),通過FC交換機連接存儲陣列和服務(wù)器主機,建立專用于數(shù)據(jù)存儲的區(qū)域網(wǎng)絡(luò)。SAN經(jīng)過十多年歷史的發(fā)展,已經(jīng)相當(dāng)成熟,成為業(yè)界的事實標準(但各個廠商的光纖交換技術(shù)不完全相同,其服務(wù)器和SAN存儲有兼容性的要求)。
SAN實際是一種專門為存儲建立的獨立于TCP/IP網(wǎng)絡(luò)之外的專用網(wǎng)絡(luò)。目前一般的SAN提供2Gb/S到4Gb/S的傳輸速率,同時SAN網(wǎng)絡(luò)獨立于數(shù)據(jù)網(wǎng)絡(luò)存在,因此存取速度很快,另外SAN一般采用高端的RAID陣列,使SAN的性能在幾種專業(yè)存儲方案中傲視群雄。
SAN由于其基礎(chǔ)是一個專用網(wǎng)絡(luò),因此擴展性很強,不管是在一個SAN系統(tǒng)中增加一定的存儲空間還是增加幾臺使用存儲空間的服務(wù)器都非常方便。通過SAN接口的磁帶機,SAN系統(tǒng)可以方便高效的實現(xiàn)數(shù)據(jù)的集中備份。
目前常見的SAN有FC-SAN和IP-SAN,其中FC-SAN為通過光纖通道協(xié)議轉(zhuǎn)發(fā)SCSI協(xié)議,IP-SAN通過TCP協(xié)議轉(zhuǎn)發(fā)SCSI協(xié)議。
存儲技術(shù)
01 磁盤陣列
磁盤陣列又叫RAID(廉價磁盤冗余陣列),是指將多個類型、容量、接口,甚至品牌一致的專用硬磁盤或普通硬磁盤連成一個陣列,使其能以某種快速、準確和安全的方式來讀寫數(shù)據(jù),從而達到提高數(shù)據(jù)讀取速度和安全性的一種手段。
因此,磁盤陣列讀寫方式的基本要求是,在盡可能提高磁盤數(shù)據(jù)讀寫速度的前提下,必須確保在一張或者多張磁盤失效時,陣列能夠有效地防止數(shù)據(jù)丟失。
磁盤陣列的最大特點是數(shù)據(jù)存取速度特別快,其主要功能是可提高網(wǎng)絡(luò)數(shù)據(jù)的可用性及存儲容量,并將數(shù)據(jù)有選擇性地分布在多個磁盤上,從而提高系統(tǒng)的數(shù)據(jù)吞吐率。
以下是磁盤陣列的一些概念:
磁盤陣列:指存儲設(shè)備所有的元件(包含控制器硬盤、電源、扇等等)。
控制器:可理解是用來管理存儲中的硬盤,用來管理數(shù)據(jù)存儲裝置。
磁盤:控制器是用來讀寫數(shù)據(jù),則磁盤是用來存儲數(shù)據(jù)的。
擴展柜:指的是放硬盤的盒子,如果把控制器的角色比喻成火車頭,那這個就是車廂。
控制器電池:是用于保護控制器緩存的數(shù)據(jù) ,數(shù)據(jù)存入硬盤時,要先通過控制器進行算法運算后再存入硬盤,而這個操作會存在一定延時,如果此時掉電,這一時間段的數(shù)據(jù)就會丟失,使用電池后,在一定的時間內(nèi)可以保障數(shù)據(jù)不丟失。電池還有另- -個用途就是可以提升控制器性能。默認讀緩存(cache)是開啟的,但寫緩存是沒啟用的,因此電池在這里就用作寫緩存使用。
備注:磁盤陣列這里的控制器,對應(yīng)PC服務(wù)器上的RAID陣列卡。
RAID產(chǎn)生的原因可以歸納如下:
RAID由幾個硬盤組成,從整體上看相當(dāng)于一個物理卷,在物理卷的基礎(chǔ)上可以按照指定容量創(chuàng)建一個或多個邏輯卷,通過LUN(Logic Unit Number)來標識。
磁盤陣列有以下幾種工作模式:
RAID0, RAID1, RAID3, RAID5, RAID6, RAID10
此處我們僅討論RAID0, RAID1, RAID5, RAID10這四種典型類型。
1.RAID0
RAID0(條帶化-分條)可以把多塊磁盤連成一個容量更大的磁盤群,可以提高磁盤的性能和吞吐量。RAID0沒有冗余或錯誤修復(fù)能力,成本低,要求至少兩個磁盤,一般只是在那些對數(shù)據(jù)安全性要求不高的情況下才被使用。
2.RAID1
RAID1(鏡像)把一個磁盤的數(shù)據(jù)鏡像到另一個磁盤上,在不影響性能情況下最大限度的保證系統(tǒng)的可靠性和可修復(fù)性上,具有很高的數(shù)據(jù)冗余能力,但磁盤利用率為50% ,故成本最高,多用在保存關(guān)鍵性的重要數(shù)據(jù)的場合。RAID1的操作方式是把用戶寫入硬盤的數(shù)據(jù)百分之百地自動復(fù)制到另外一個硬盤上。
3.RAID5
可以理解為是RAID 0和RAID 1的折衷方案。但沒有完全使用RAID 1鏡像理念。而是使用了“奇偶校驗信息"來作為數(shù)據(jù)恢復(fù)的方式。以四個硬盤組成的RAID 5為例。其數(shù)據(jù)存儲方式如圖所示:圖中Ap為A1,A2和A3的奇偶校驗信息,其它以此類推。由圖中可以看出, RAID 5不對存儲的數(shù)據(jù)進行備份。而是把數(shù)據(jù)和相對應(yīng)的奇偶校驗信息存儲到組成RAID5的各個磁盤上。并且奇偶校驗信息和相對應(yīng)的數(shù)據(jù)分別存儲于不同的磁盤上。當(dāng)RAID5的一個磁盤數(shù)據(jù)發(fā)生損壞后,利用剩下的數(shù)據(jù)和相應(yīng)的奇偶校驗信息去恢復(fù)被損壞的數(shù)據(jù)。
4.RAID10
RAID10(鏡像陣列條帶)像RAID0一樣,數(shù)據(jù)跨磁盤抽取,像RAID1一樣,每個磁盤都有一個鏡像磁盤,所以RAID 10的另一種會說法是RAID 0+1。RAID10提供100%的數(shù)據(jù)冗余,支持更大的卷尺寸。但價格也相對較高。
對大多數(shù)只要求具有冗余度而不必考慮價格的應(yīng)用來說, RAID10提供最好的性能。使用RAID10,可以獲得更好的可靠性,因為即使兩個物理驅(qū)動器發(fā)生故障(每對中一個), 數(shù)據(jù)仍然可以得到保護。
RAID10需要4 + 2*N個磁盤驅(qū)動器(N>=0),而且只能使用其中一半的磁盤用量,例如4個250G的硬盤使用RAID10陣列,實際容量是500G。
磁盤陣列的幾種工作模式對比總結(jié):
02 SCSI
SCSI并不是專門為硬盤設(shè)計的接口,是一種廣泛應(yīng)用于小型機上的高速數(shù)據(jù)傳輸技術(shù)。
SCSI接口具有應(yīng)用范圍廣、多任務(wù)、帶寬大、CPU占用率低,以及熱插拔等優(yōu)點,但較高的價格使得它很難如IDE硬盤般普及。
SCSI硬盤主要應(yīng)用于中、高端服務(wù)器和高檔工作站中。
03 iSCSI
iSCSI(Internet Small Computer System Interface)是IETF制定的一項標準,用于將SCSI數(shù)據(jù)塊映射成以太網(wǎng)數(shù)據(jù)包。
從根本上說, iSCSI協(xié)議是一種跨過IP網(wǎng)絡(luò)來傳輸潛伏時間短的SCSI數(shù)據(jù)塊的方法。
iSCSI SAN的優(yōu)勢:
高可用性,在服務(wù)器和存儲資源之間建立起多條通道,即使一條線路斷開仍能保持系統(tǒng)連接;
擴展性,采用交換機式的結(jié)構(gòu),IT管理人員不必中止應(yīng)用即可完成存儲容量的擴充;
最大程度地保護存儲資源投入,能夠跨平臺共享硬盤和磁帶設(shè)備;
采用我們熟悉的以太網(wǎng)技術(shù)。
04 FC
FC ( Fibre Channel), 一種高速網(wǎng)絡(luò)技術(shù)標準( T11),主要應(yīng)用于SAN (存儲局域網(wǎng))
光纖和銅制電纜都可以作為FC的傳輸介質(zhì);
從分層協(xié)議棧的角度看,F(xiàn)C僅僅包含了從物理層到傳輸層的規(guī)范。它的上層定義了把其他協(xié)議作為應(yīng)用層協(xié)議進行封裝的接口,如SCSI或IP協(xié)議。
05 SAS
SAS(Serial Attached SCSI)是新一代的SCSI技術(shù) ,和現(xiàn)在流行的Serial ATA(SATA)硬盤相同,都是采用串行技術(shù)以獲得更高的傳輸速度,并通過縮短連結(jié)線改善內(nèi)部空間等。SAS是并行SCSI接口之后開發(fā)出的全新接口。此接口的設(shè)計是為了改善存儲系統(tǒng)的效能、可用性和擴充性,提供與串行ATA(Serial ATA ,縮寫為SATA)硬盤的兼容性。
06 硬盤
硬盤是電腦上使用堅硬的旋轉(zhuǎn)盤片為基礎(chǔ)的非易失性( non-volatile )存儲設(shè)備。它在平整的磁性表面存儲和檢索數(shù)字數(shù)據(jù)。信息通過離磁性表面很近的寫頭,由電磁流來改變極性方式被電磁流寫到磁盤上。
07 SSD
固態(tài)硬盤(Solid State Drives),簡稱固盤。
固態(tài)硬盤(Solid State Drive)用固態(tài)電子存儲芯片陣列而制成的硬盤,由控制單元和存儲單元(FLASH芯片、DRAM芯片)組成。
固態(tài)硬盤在接口的規(guī)范和定義、功能及使用方法上與普通硬盤的完全相同,在產(chǎn)品外形和尺寸上也完全與普通硬盤一致。
被廣泛應(yīng)用于軍事、車載、工控、視頻監(jiān)控、網(wǎng)絡(luò)監(jiān)控、網(wǎng)絡(luò)終端、電力、醫(yī)療、航空、導(dǎo)航設(shè)備等領(lǐng)域。
08 NFS
網(wǎng)絡(luò)文件系統(tǒng)是FreeBSD支持的文件系統(tǒng)中的一種,也被稱為NFS(Network File System)。NFS允許一個系統(tǒng)在網(wǎng)絡(luò)上與他人共享目錄和文件。通過使用NFS,用戶和程序可以像訪問本地文件一樣訪問遠端系統(tǒng)上的文件。
NFS至少有兩個主要部分:一臺服務(wù)器和一臺(或者更多)客戶機??蛻魴C遠程訪問存放在服務(wù)器上的數(shù)據(jù)。為了正常工作, 一些進程需要被配置并運行。
注: NFS由Sun microsystems公司開發(fā)。是一種網(wǎng)絡(luò)文件系統(tǒng),并且是unix/linux操作系統(tǒng)的協(xié)議。
09 CIFS
CIFS(Common Internet File System)使程序可以訪問遠程Internet計算機上的文件并要求此計算機的服務(wù)。CIFS 使用客戶/服務(wù)器模式??蛻舫绦蛘埱筮h在服務(wù)器上的服務(wù)器程序為它提供服務(wù)。服務(wù)器獲得請求并返回響應(yīng)。
CIFS是公共的或開放的SMB協(xié)議版本,并由Microsoft使用。SMB協(xié)議現(xiàn)在是局域網(wǎng)上用于服務(wù)器文件訪問和打印的協(xié)議。
像SMB協(xié)議一樣, CIFS在高層運行,而不像TCP/IP協(xié)議那樣運行在底層。CIFS可以看做是應(yīng)用程序協(xié)議如文件傳輸協(xié)議和超文本傳輸協(xié)議的一個實現(xiàn)。
CIFS最典型的應(yīng)用是Windows用戶能夠從“網(wǎng)上鄰居”中找到網(wǎng)絡(luò)中的其他主機并訪問其中的共享文件夾。
總結(jié)
綜上,不同的存儲模式是和日常使用需求緊密結(jié)合起來的,不存在絕對的優(yōu)劣之說,各位小伙伴還請多多思考,根據(jù)自己生產(chǎn)環(huán)境的實際情況,來選擇合適的存儲軟硬件和方案哦!