□ 文/雷玉堂
?
云存儲系統(tǒng)的架構(gòu)及關(guān)鍵技術(shù)
□ 文/雷玉堂
云存儲以其成本低廉、可擴(kuò)展性高、易于管理等優(yōu)點(diǎn)已成為未來存儲發(fā)展的一種趨勢。
云存儲屬于云計(jì)算系統(tǒng),作為云計(jì)算的外延而存在,其不同的是配置了大量存儲空間。通過分析三層模型可知,云計(jì)算和云存儲具有相同的接口層、訪問層,而且云存儲在基礎(chǔ)層方面擁有數(shù)據(jù)安全和數(shù)據(jù)管理的部分功能。
本文主要論述云存儲系統(tǒng)組成的架構(gòu)體系,組建云存儲架構(gòu)的3種模式與所需的基本標(biāo)準(zhǔn),設(shè)計(jì)選擇部署云存儲平臺需考慮的要點(diǎn)與6大因素,中國UIT云存儲構(gòu)架實(shí)現(xiàn)方案,最后論述云存儲系統(tǒng)的10大關(guān)鍵技術(shù)。
云存儲架構(gòu)分為通過服務(wù)來架構(gòu)和通過軟件或硬件設(shè)備來架構(gòu)兩類。
傳統(tǒng)的系統(tǒng)利用緊耦合對稱架構(gòu),這種架構(gòu)的設(shè)計(jì)旨在解決HPC(高性能計(jì)算、超級運(yùn)算)問題,現(xiàn)在其正在向外擴(kuò)展成為云存儲從而滿足快速呈現(xiàn)的市場需求。下一代架構(gòu)已經(jīng)采用了松弛耦合非對稱架構(gòu),集中元數(shù)據(jù)和控制操作,這種架構(gòu)并不特別適合高性能HPC,但是這種設(shè)計(jì)旨在解決云部署的大容量存儲需求。
1、緊耦合對稱(TCS)架構(gòu)。構(gòu)建TCS系統(tǒng)是為了解決單一文件性能所面臨的挑戰(zhàn),這種挑戰(zhàn)限制了傳統(tǒng)NAS系統(tǒng)的發(fā)展。HPC系統(tǒng)所具有的優(yōu)勢迅速壓倒了存儲,因?yàn)樗鼈冃枰膯我晃募蘒/O操作要比單一設(shè)備的I/O操作多得多。業(yè)內(nèi)對此的回應(yīng)是創(chuàng)建利用TCS架構(gòu)的產(chǎn)品,很多節(jié)點(diǎn)同時(shí)伴隨著分布式鎖管理(鎖定文件不同部分的寫操作)和緩存一致性功能。這種解決方案對于單文件吞吐量問題很有效,幾個(gè)不同行業(yè)的很多HPC客戶已經(jīng)采用了這種解決方案。這種解決方案很先進(jìn),需要一定程度的技術(shù)經(jīng)驗(yàn)才能安裝和使用。
2、松弛耦合非對稱(LCA)架構(gòu)。LCA系統(tǒng)采用不同的方法來向外擴(kuò)展。它不是通過執(zhí)行某個(gè)策略來使每個(gè)節(jié)點(diǎn)知道每個(gè)行動所執(zhí)行的操作,而是利用一個(gè)數(shù)據(jù)路徑之外的中央元數(shù)據(jù)控制服務(wù)器。集中控制提供了很多好處,允許進(jìn)行新層次的擴(kuò)展:
a.存儲節(jié)點(diǎn)可以將重點(diǎn)放在提供讀寫服務(wù)的要求上,而不需要來自網(wǎng)絡(luò)節(jié)點(diǎn)的確認(rèn)信息。
b.節(jié)點(diǎn)可以利用不同的商品硬件CPU和存儲配置,而且仍然在云存儲中發(fā)揮作用。
用戶可以通過利用硬件性能或虛擬化實(shí)例來調(diào)整云存儲。
c.消除節(jié)點(diǎn)之間共享的大量狀態(tài)開銷也可以消除用戶計(jì)算機(jī)互聯(lián)的需要,如光纖通道或infiniband,從而進(jìn)一步降低成本。
d.異構(gòu)硬件的混合和匹配使用戶能夠在需要的時(shí)候在當(dāng)前經(jīng)濟(jì)規(guī)模的基礎(chǔ)上擴(kuò)大存儲,同時(shí)還能提供永久的數(shù)據(jù)可用性。
e.擁有集中元數(shù)據(jù)意味著,存儲節(jié)點(diǎn)可以旋轉(zhuǎn)地進(jìn)行深層次應(yīng)用程序歸檔,而且在控制節(jié)點(diǎn)上,元數(shù)據(jù)經(jīng)常都是可用的。
對比傳統(tǒng)的存儲設(shè)備,云存儲是一個(gè)由網(wǎng)絡(luò)設(shè)備、存儲設(shè)備、服務(wù)器、應(yīng)用軟件、公用訪問接口、接入網(wǎng)和客戶端程序等多個(gè)部分組成的系統(tǒng)。在云存儲系統(tǒng)中,各個(gè)部分以存儲設(shè)備為核心,通過應(yīng)用軟件集合來對外提供數(shù)據(jù)存儲和業(yè)務(wù)訪問服務(wù)。
1、云存儲的通用結(jié)構(gòu)模型。云存儲的通用結(jié)構(gòu)模型如圖所示。
云存儲的通用結(jié)構(gòu)模型
存儲層:存儲層是云存儲最基礎(chǔ)的部分,包括存儲設(shè)備層和存儲設(shè)備管理層。存儲層由各種各樣的存儲設(shè)備和網(wǎng)絡(luò)設(shè)備組成,為了實(shí)現(xiàn)低成本,這些存儲設(shè)備以及網(wǎng)絡(luò)設(shè)備通常都是普通的商業(yè)產(chǎn)品,而不是可靠性更高的高端設(shè)備,系統(tǒng)的可靠性由一系列軟件集合來保證。存儲設(shè)備可以是網(wǎng)絡(luò)連接式存儲(NAS)和由小型計(jì)算機(jī)系統(tǒng)接口(ISCSI)所建立和管理的存儲區(qū)域網(wǎng)等IP 存儲設(shè)備,可以是服務(wù)器連接存儲(SAS)和小型計(jì)算機(jī)系統(tǒng)接口(SCSI)磁盤陣列等直連式存儲(DAS)存儲設(shè)備。云存儲中的存儲設(shè)備往往數(shù)量龐大且分布多不同地域,彼此之間通過廣域網(wǎng)、互聯(lián)網(wǎng)或者FC光纖通道網(wǎng)絡(luò)連接在一起。
存儲設(shè)備層之上是一個(gè)統(tǒng)一存儲設(shè)備管理系統(tǒng),即存儲設(shè)備管理層,用來實(shí)現(xiàn)對存儲設(shè)備的邏輯虛擬化管理、多鏈路冗余管理、硬件設(shè)備狀態(tài)監(jiān)控及故障維護(hù)等功能。
基礎(chǔ)管理層:云存儲并不是一個(gè)單點(diǎn)存儲系統(tǒng),而是一個(gè)由成千上萬存儲設(shè)備和服務(wù)器構(gòu)成的一個(gè)集合體,其基礎(chǔ)管理層是云存儲系統(tǒng)中最為核心的部分,也是云存儲中最難以實(shí)現(xiàn)的部分。基礎(chǔ)管理層通過集群、分布式文件系統(tǒng)和網(wǎng)格計(jì)算等技術(shù),實(shí)現(xiàn)云存儲中多個(gè)存儲設(shè)備之間的協(xié)同工作,使多個(gè)存儲設(shè)備可以對外提供同一種服務(wù),提供更大更強(qiáng)更好的數(shù)據(jù)訪問性能,并在實(shí)現(xiàn)了良好的擴(kuò)展性的同時(shí),也滿足了高可用性以及性能的需求。
基礎(chǔ)管理層還通過CDN內(nèi)容分發(fā)系統(tǒng)、數(shù)據(jù)加密技術(shù)保證云存儲中的數(shù)據(jù)不會被未授權(quán)的用戶所訪問,同時(shí),通過各種數(shù)據(jù)備份和容災(zāi)技術(shù)和措施,保證云存儲中的數(shù)據(jù)不會丟失,保證云存儲自身的安全和穩(wěn)定。
應(yīng)用接口層:應(yīng)用接口層是云存儲中最靈活多變的部分,是用戶利用云存儲資源進(jìn)行應(yīng)用開發(fā)的關(guān)鍵部分。云存儲供應(yīng)商通過應(yīng)用接口層,對客戶提供統(tǒng)一的協(xié)議和編程接口(通常這些協(xié)議都是與平臺無關(guān)的)。即根據(jù)實(shí)際業(yè)務(wù)類型,開發(fā)不同的應(yīng)用服務(wù)接口,提供不同的應(yīng)用服務(wù)。如視頻監(jiān)控應(yīng)用平臺、IPTV和視頻點(diǎn)播應(yīng)用平臺、網(wǎng)絡(luò)硬盤引用平臺,遠(yuǎn)程數(shù)據(jù)備份應(yīng)用平臺等。
訪問層:訪問層是基于云存儲開發(fā)的應(yīng)用程序的入口,云存儲系統(tǒng)通過提供標(biāo)準(zhǔn)的公用應(yīng)用接口來使授權(quán)用戶享受云存儲服務(wù)。云存儲運(yùn)營單位不同,云存儲提供的訪問類型和訪問手段也不同。云存儲服務(wù)商可以根據(jù)服務(wù)類型和用戶的不同,來提供不同訪問手段,從而保證數(shù)據(jù)的安全性和服務(wù)質(zhì)量。
2、云存儲平臺整體架構(gòu)。云存儲平臺整體架構(gòu)如圖所示。
云存儲平臺整體架構(gòu)
由圖可知,云存儲平臺自底向上依次是:數(shù)據(jù)存儲層、數(shù)據(jù)管理層、數(shù)據(jù)服務(wù)層以及用戶訪問層4個(gè)層次。
數(shù)據(jù)存儲層:云存儲系統(tǒng)對外提供多種不同的存儲服務(wù),各種服務(wù)的數(shù)據(jù)統(tǒng)一存放在云存儲系統(tǒng)中,形成一個(gè)海量數(shù)據(jù)池。從大多數(shù)網(wǎng)絡(luò)服務(wù)后臺數(shù)據(jù)組織方式來看,傳統(tǒng)基于單服務(wù)器的數(shù)據(jù)組織難以滿足廣域網(wǎng)多用戶條件下的吞吐性能和存儲容量需求;基于P2P架構(gòu)的數(shù)據(jù)組織需要龐大的節(jié)點(diǎn)數(shù)量和復(fù)雜編碼算法保證數(shù)據(jù)可靠性。相比而言,基于多存儲服務(wù)器的數(shù)據(jù)組織方法能夠更好滿足在線存儲服務(wù)的應(yīng)用需求,在用戶規(guī)模較大時(shí),構(gòu)建分布式數(shù)據(jù)中心能夠?yàn)椴煌乩韰^(qū)域的用戶提供更好的服務(wù)質(zhì)量。
云存儲的數(shù)據(jù)存儲層將不同類型的存儲設(shè)備互連起來,實(shí)現(xiàn)海量數(shù)據(jù)的統(tǒng)一管理,同時(shí)實(shí)現(xiàn)對存儲設(shè)備的集中管理、狀態(tài)監(jiān)控以及容量的動態(tài)擴(kuò)展,實(shí)質(zhì)是一種面向服務(wù)的分布式存儲系統(tǒng)。
數(shù)據(jù)管理層:云存儲系統(tǒng)架構(gòu)中的數(shù)據(jù)管理層為上層提供不同服務(wù)間公共管理的統(tǒng)一視圖。通過設(shè)計(jì)統(tǒng)一的用戶管理、安全管理、副本管理及策略管理等公共數(shù)據(jù)管理功能,將底層存儲及上層應(yīng)用無縫銜接起來,實(shí)現(xiàn)多存儲設(shè)備之間的協(xié)同工作,以更好的性能對外提供多種服務(wù)。
數(shù)據(jù)服務(wù)層:數(shù)據(jù)服務(wù)層是云存儲平臺中可以靈活擴(kuò)展的、直接面向用戶的部分。根據(jù)用戶需求,可以開發(fā)出不同的應(yīng)用接口,提供相應(yīng)的服務(wù)。如數(shù)據(jù)存儲服務(wù)、空間租賃服務(wù)、公共資源服務(wù)、多用戶數(shù)據(jù)共享服務(wù)、數(shù)據(jù)備份服務(wù)等。
用戶訪問層:通過用戶訪問層,任何一個(gè)授權(quán)用戶都可以在任何地方,使用一臺聯(lián)網(wǎng)的終端設(shè)備,按照標(biāo)準(zhǔn)的公用應(yīng)用接口來登錄云存儲平臺,享受云存儲服務(wù)。
物聯(lián)網(wǎng)是一個(gè)規(guī)模龐大的信息計(jì)算系統(tǒng),這個(gè)系統(tǒng)需要一個(gè)強(qiáng)有力的平臺提供計(jì)算和存儲服務(wù)來支撐其應(yīng)用需求。
而云計(jì)算是通過互聯(lián)網(wǎng)將計(jì)算能力和存儲空間有限的一系列IT 設(shè)備整合成一個(gè)具有強(qiáng)大計(jì)算能力和海量存儲空間的系統(tǒng),其超大規(guī)模、高擴(kuò)展性、高可靠性正好滿足物聯(lián)網(wǎng)對計(jì)算資源和存儲資源的需求,并已成為支撐物聯(lián)網(wǎng)應(yīng)用的一個(gè)強(qiáng)有力的平臺。云計(jì)算面向物聯(lián)網(wǎng)提供計(jì)算資源和存儲資源兩種服務(wù),其中,存儲資源服務(wù)就是云存儲。云存儲服務(wù)是整個(gè)云計(jì)算平臺最底層的服務(wù),是與云計(jì)算模式相匹配的存儲模式,以滿足整個(gè)系統(tǒng)對數(shù)據(jù)的存取訪問。實(shí)際上,物聯(lián)網(wǎng)也是一種數(shù)據(jù)密集型的信息系統(tǒng),從傳感層到應(yīng)用層,時(shí)刻都有海量數(shù)據(jù)需要存取,同時(shí)對數(shù)據(jù)的敏感度比較高,一旦數(shù)據(jù)丟失或損壞,將嚴(yán)重影響系統(tǒng)的可用性。因此,物聯(lián)網(wǎng)中云存儲的大規(guī)模應(yīng)用也不是一朝一夕能夠?qū)崿F(xiàn)的,隨著物聯(lián)網(wǎng)應(yīng)用規(guī)模的不斷擴(kuò)大,云存儲將經(jīng)歷著從為小范圍物聯(lián)網(wǎng)應(yīng)用服務(wù)的私有云存儲,發(fā)展到為某個(gè)行業(yè)應(yīng)用服務(wù)的行業(yè)云存儲,最后發(fā)展到各種云存儲互聯(lián)泛在階段。下面就介紹一下,云存儲在物聯(lián)網(wǎng)環(huán)境下應(yīng)用的體系架構(gòu)及其平臺的結(jié)構(gòu)模型。
1、物聯(lián)網(wǎng)環(huán)境下云存儲系統(tǒng)的體系結(jié)構(gòu)。
基于云存儲的物聯(lián)網(wǎng)體系結(jié)構(gòu)如圖4-4所示。
圖4-4 基于物聯(lián)網(wǎng)的云存儲體系架構(gòu)
圖4-4給出了云存儲平臺在整個(gè)物聯(lián)網(wǎng)的體系結(jié)構(gòu)中的位置,物聯(lián)網(wǎng)整個(gè)體系結(jié)構(gòu)從下到上依次可分為感知層、傳輸層、處理層、應(yīng)用層4層。
感知層:主要用來收集周圍可被感知物品的信息,并將這些感知信息簡單處理后通過各種接入網(wǎng)傳遞到傳輸層。
傳輸層:它將融合后的感知信息傳輸?shù)教幚韺?,再將處理層的反饋信息傳遞到感知層的各個(gè)設(shè)備。
處理層:它提供存儲和處理功能,提供數(shù)據(jù)分析、局勢判斷和控制決策等處理功能,云存儲便設(shè)立在這一層來提供存儲服務(wù)來滿足整個(gè)系統(tǒng)對數(shù)據(jù)的訪問。
應(yīng)用層:應(yīng)用層在架構(gòu)的最上層,它建立不同領(lǐng)域中的各種應(yīng)用。
物聯(lián)網(wǎng)環(huán)境下云存儲系統(tǒng)的工作原理是,云存儲接受傳輸層提交的感知數(shù)據(jù),并采用合適的策略(如按照地理位置就近原則)存儲數(shù)據(jù),提供訪問接口,供云計(jì)算信息處理平臺對數(shù)據(jù)進(jìn)行分析處理,并將處理的結(jié)果存放起來,供應(yīng)用層訪問。
2、物聯(lián)網(wǎng)環(huán)境下云存儲平臺的結(jié)構(gòu)模型
物聯(lián)網(wǎng)環(huán)境下云存儲平臺的結(jié)構(gòu)模型如圖4-5所示。
圖4-5 物聯(lián)網(wǎng)環(huán)境下云存儲平臺的結(jié)構(gòu)模型
由圖可知,如果不看物聯(lián)網(wǎng)環(huán)境,整個(gè)云存儲平臺主要由云存儲管理器和云存儲資源池兩大部分構(gòu)成。
云存儲管理器。云存儲管理器是整個(gè)云存儲平臺的“大腦”,主要任務(wù)是負(fù)責(zé)存儲資源的管理和調(diào)度。云存儲管理器以系統(tǒng)管理為核心,以用戶管理、安全管理、存儲資源管理、服務(wù)管理和云數(shù)據(jù)管理等為子管理模塊。這些子管理模塊分別分布在各個(gè)不同的服務(wù)器節(jié)點(diǎn)上,接受系統(tǒng)管理模塊的統(tǒng)一管理。
系統(tǒng)管理模塊:它是云存儲管理器中的核心部件,掌握著整個(gè)云存儲系統(tǒng)的拓?fù)浣Y(jié)構(gòu)和底層操作系統(tǒng),以及所采用的文件系統(tǒng)的基本信息,協(xié)調(diào)各個(gè)子管理模塊的工作。同時(shí),系統(tǒng)管理模塊制訂各種各樣的策略,并將其分發(fā)到各個(gè)子管理模塊中去,例如文件分塊大小、存儲分區(qū)大小、存儲空間分配策略、冗余副本個(gè)數(shù)、節(jié)點(diǎn)故障處理、安全等級等。子管理模塊根據(jù)這些策略實(shí)現(xiàn)自身功能。
存儲資源管理模塊:它實(shí)現(xiàn)存儲資源的管理和分配,主要功能如下:
a.監(jiān)控整個(gè)系統(tǒng)中云存儲節(jié)點(diǎn)的運(yùn)行狀態(tài),及時(shí)發(fā)現(xiàn)故障節(jié)點(diǎn),并采取相應(yīng)的策略選擇新的存儲節(jié)點(diǎn),來代替原有節(jié)點(diǎn)提供存儲服務(wù);
b.發(fā)現(xiàn)新添加的存儲節(jié)點(diǎn),實(shí)現(xiàn)對其透明訪問;
c.采取合適的負(fù)載均衡功能保證系統(tǒng)的可靠性;
d.將大的數(shù)據(jù)塊劃分為較小的數(shù)據(jù),并將這些小型數(shù)據(jù)塊分配到不同的存儲節(jié)點(diǎn)上,實(shí)現(xiàn)分布式存儲。
云數(shù)據(jù)管理模塊:它的主要功能是實(shí)現(xiàn)對元數(shù)據(jù)的管理,元數(shù)據(jù)是存儲文件基本信息的一種數(shù)據(jù)。當(dāng)一個(gè)文件被創(chuàng)建的時(shí)候,文件的一些基本信息如文件名、文件大小、文件存儲位置、文件訪問控制等,將被作為一個(gè)元數(shù)據(jù)項(xiàng)存放在元數(shù)據(jù)文件中。當(dāng)有文件訪問請求時(shí),系統(tǒng)首先查找該文件的元數(shù)據(jù)信息,根據(jù)元數(shù)據(jù)信息找出該文件的存儲位置,然后向相應(yīng)的存儲節(jié)點(diǎn)發(fā)出數(shù)據(jù)訪問請求。
服務(wù)管理模塊:它定義了不同等級的云存儲服務(wù)和用戶為此支付的費(fèi)用,用戶可根據(jù)自己的實(shí)際需求選擇合適的存儲服務(wù);用戶管理模塊負(fù)責(zé)管理整個(gè)云存儲系統(tǒng)中用戶的基本信息,實(shí)現(xiàn)對用戶的訪問認(rèn)證及訪問權(quán)限的授予;安全管理模塊實(shí)現(xiàn)對整個(gè)云存儲系統(tǒng)的安全管理,采用各種安全技術(shù)如防火墻技術(shù)、入侵檢測技術(shù)、加密技術(shù)等來保證整個(gè)系統(tǒng)的安全性。
云存儲資源池。云存儲資源池是由多個(gè)云存儲節(jié)點(diǎn)構(gòu)成,這些云存儲節(jié)點(diǎn),可能分布在不同地點(diǎn)。通過存儲虛擬化技術(shù),將其整合為一大容量虛擬存儲設(shè)備,用戶可以像使用物理存儲設(shè)備那樣來使用。
云存儲以其成本低廉、可擴(kuò)展性高、易于管理等優(yōu)點(diǎn)已成為未來存儲發(fā)展的一種趨勢。對于物聯(lián)網(wǎng)應(yīng)用服務(wù)提供商來說,云存儲模式使其節(jié)省了構(gòu)建存儲平臺所帶來的昂貴的成本投入,應(yīng)用服務(wù)商可以以較低的代價(jià)享受到先進(jìn)的存儲技術(shù)。數(shù)據(jù)的存儲和管理工作,完全由云存儲服務(wù)商按照自己的要求來做。這樣可以將更多的資金投入到本身的其他業(yè)務(wù)開發(fā)中去。