企業儲存設備的發展正處於一個新的轉型期。

過去,為了解決內接式磁碟設備擴充性有限的問題,出現了專門用於提供儲存空間的外接式儲存設備;而為克服直接連接式(DAS)架構造成的管理不便與空間利用率不佳的問題,於是便出現了透過儲存區域網路(SAN)的共享儲存架構;後來又為了擺脫底層軟硬體架構的約束,獲得更靈活的儲存資源運用能力,儲存虛擬化技術也隨之而起。時至今日,儲存技術的發展又出現一波「軟體化」新浪潮。

「軟體化」的儲存設備
隨著x86架構處理器在儲存設備中的普及,儲存設備與伺服器在硬體核心上的區別也日漸模糊。面對儲存設備與伺服器硬體核心漸趨一致的趨勢,一個顯而易見的想法便是——能在x86架構上執行的儲存設備軟體,也能很容易地移植到x86架構伺服器上執行,那何不將儲存設備的軟體獨立出來,如此便能擺脫特定儲存硬體的梏桎,改用廠牌、型號選擇範圍非常廣大的伺服器來搭配儲存軟體,進而扮演儲存設備的角色。
這也就是某種程度的「軟體定義儲存」概念,由於儲存設備與伺服器硬體核心間高度的共通性與標準化,因此可讓軟、硬體各自獨立,一臺主機是扮演一般的通用伺服器,還是扮演儲存設備的角色,端視其執行的系統軟體類型而定,而與硬體無關——若在主機上執行一般的通用作業系統與應用程式,那這臺主機就是通用的伺服器;若在主機上執行專門提供儲存服務的應用程式,那這臺主機就是儲存設備。

「軟體化」儲存的三大特性
相較於傳統儲存設備,前述這類「軟體化」的儲存系統架構,具有下列三項特性:

硬體選擇彈性大
可使用標準的x86伺服器甚至PC硬體,來充當儲存設備,不會被特定廠牌、型號的專屬規格儲存硬體給綁死,硬體選擇彈性非常大。用戶可視自身的預算、需求、採購習慣與售後服務等考量,從眾多的伺服器供應商與伺服器產品中挑選合適的機型,並完全按照自己的需求來調整配備規格與組態。

便於升級與採用最新硬體架構
以經驗來看,I/O處理器架構的更新升級頻率,遠低於通用處理器,傳統的磁碟陣列硬體設備廠商,通常每隔2~3年才會更新一次包括處理器在內的系統核心架構,相較下,伺服器的硬體核心幾乎年年都會更新換代。即使同樣屬於x86架構,但用於儲存設備的嵌入式處理器,更新速度也不如通用處理器。
舉例來說,為當前眾多中低階磁碟陣列產品採用的Xeon C3500/C5500處理器,屬於已有相當歷史的Nehalem架構衍生型Jasper Forest平臺,即使是一些儲存大廠當前的主力產品,目前採用的處理器也都還停留在Nehalem架構上,如IBM Storwize V7000(Jasper Forest)、NetApp的FAS 2240(Jasper Forest)與FAS 6200(Nehalem-EP),以及EMC VMAX與VNX系列(Westmere-EP架構的Xeon 5600)等。

相較下,目前伺服器所採用的處理器主流架構早已進入Ivy Bridge平臺,並即將轉入Haswell架構,較前者領先了2、3代。等到儲存設備更新到Ivy Bridge或Haswell架構時,伺服器早已升級到更新的Skylake或Skymont架構了。

因此,若以標準的x86伺服器搭配儲存應用軟體來構成「軟體化」的儲存設備,用戶將能享有便於採用最新處理器架構與技術的好處。由於儲存服務是由獨立於硬體的儲存軟體來提供,所以用戶可購買採用當前最新架構的伺服器硬體來執行儲存服務,不會被儲存廠商緩慢的更新速度所制約。

需自行克服相容性與測試調校問題
當然,要採用這種「軟體化」儲存設備,也必須付出些許代價。

由於「軟體化」儲存的軟、硬體是各自獨立,不像傳統儲存設備是由儲存廠商預先完成軟、硬體的整合、組裝與測試調校,因此用戶需自行面對建置系統時的軟、硬體相容性問題,以及建置完成後的系統測試與調校。

換句話說,「軟體化」的硬體選擇彈性大這個特點,其實是把兩面刃,往好的方面看,這讓用戶擁有更多的選擇;但往壞的方面看,正因為各式各樣可能的硬體與周邊裝置組合太多,連帶的也更難以確保軟硬體搭配時的相容性與穩定性。

解決之道,則是盡可能參考儲存軟體供應商預先進行過相容性測試的硬體清單,雖然這會一定程度限制了用戶的硬體選擇範圍,不過可減少後續建置時的麻煩。

透過儲存虛擬化實現「軟體化」儲存
「軟體化」儲存的核心,自然便是提供各式各樣儲存服務的儲存應用軟體了。要實現「軟體化」儲存的目的,最常見的作法便是透過儲存虛擬化技術(Storage Vurtualization)的方式。

透過儲存虛擬化軟體,來為安裝主機底層的儲存裝置,進行儲存空間定址的重新配置,以及存取I/O的重新導向。簡單的說,也就是將主機後端原本各自獨立的各式各樣磁碟裝置,包括本機的硬碟,以及後端介接的外接磁碟設備提供的磁碟區,重新配置為一個可以統一運用的大磁碟區域,然後按需要將這個大磁碟區域中的空間,重新構成一個個虛擬磁碟區,並將來自前端的I/O需求,導向到這些虛擬磁碟區上。

所以儲存虛擬化軟體基本上都會具有「儲存池管理」與「SCSI裝置Target」兩項功能。透過儲存池方式,統整安裝主機後端的磁碟裝置空間,然後再透過SCSI裝置Target功能,將儲存池的空間,以虛擬磁碟或實體磁碟的方式,構成可透過不同傳輸協定存取的SCSI磁碟裝置,如光纖通道磁碟區,或是iSCSI磁碟區等。

換句話說,儲存虛擬化軟體扮演了後端磁碟硬體設備,與前端發出存取需求的用戶端之間的中介,重新整合與配置後端硬體磁碟資源,再以虛擬磁碟的形式提供給前端的用戶端使用,所以,有些人又以Storage Hypervisor來稱呼儲存虛擬化軟體。

其實傳統的RAID卡與磁碟陣列控制器,扮演的也是類似的角色—將後端介接的一臺臺磁碟機,以RAID的方式重新構成跨多臺磁碟機的磁碟區(Volume),再以LUN的方式將磁碟區透過不同傳輸協定掛載給前端主機使用。只是RAID卡與磁碟陣列控制器的軟體,是以韌體的形式內嵌在硬體上,而不像儲存虛擬化軟體是以獨立於硬體外的軟體形式存在。

儲存虛擬化軟體產品的基本類型
以儲存虛擬化軟體搭配標準規格x86伺服器組成的「軟體化」儲存系統,是一種已有相當歷史的儲存產品類型。早在2000年代初期,FalconStor與DataCore等廠商,便推出了可提供這類服務的IPStor與SANsymphony軟體,經過多年發展後,這種「軟體化」儲存系統已經十分成熟,無論功能的完整性與可靠性,還是對各式作業環境的支援性方面,均不遜於硬體式的儲存設備。

事實上,某些儲存硬體設備廠商如目前已被HP收購的LeftHand,以及被Dell收購的Compellent等,他們的產品實際上也是儲存虛擬化軟體的形式,硬體部分實際上與標準x86伺服器沒多大區別、甚至直接採用了標準x86伺服器硬體,這些產品真正的核心其實也是儲存虛擬化軟體(LeftHand的SAN/iQ軟體與Compellent的Storage Center 5軟體),只是這些廠商選擇將他們的軟體預載於特定硬體上、以整合式的硬體產品綑綁出售,而不像DataCore那樣只單獨銷售軟體而已。

一些廠商如FalconStor則提供了更彈性的選擇,既可單獨銷售他們的IPStor軟體,也提供預載於特定硬體上、包裝成儲存應用伺服器形式的產品。
儲存虛擬化軟體的四種類型

依照涵蓋的功能範圍與系統部署的方式,目前市場上的儲存虛擬化軟體可區分為四種類型:

iSCSI Target軟體
最簡單的儲存虛擬化軟體,只支援成本最低、直接利用乙太網路的iSCSI協定,可將安裝主機底層的磁碟區空間模擬為iSCSI裝置。
目前幾乎所有主要的作業系統,都有iSCSI Target軟體可用,微軟也釋出了Windows Server使用的免費iSCSI Target軟體,可讓Windows Server伺服器扮演iSCSI儲存設備的角色。

另外一些iSCSI Target商用套裝軟體,如StarWind的iSCSI SAN與KernSafe iStorage Server等,則可支援更多樣化的iSCSI裝置模擬能力,並另外提供了HA、遠端複製等進階應用功能。

綜合性儲存虛擬化軟體
擁有可同時支援iSCSI與FC等多種儲存協定的SCSI裝置Target功能,並提供快照、遠端複製、HA、連續資料保護等完整進階應用功能的軟體產品,如DataCore的SANsymphony,FalconStor的IPStor等。

儲存伺服器軟體
前面提到的iSCSI Target軟體與儲存虛擬化軟體,都是只是應用軟體,本身並不是可獨立發揮作用的完整系統,必須安裝在既有的Windows、Linux等作業系統環境上,並利用作業系統底層的邏輯磁碟管理程式,來辨識與匯入後端磁碟硬體設備空間。

而儲存伺服器軟體則是把作業系統與其邏輯磁碟管理軟體、加上iSCSI Target、FC Target軟體整合為一個完整的儲存伺服器軟體套件,用戶只需直接在主機硬體上安裝這個儲存伺服器軟體套件,就能得到完整的功能,省下了預先準備好作業系統環境的麻煩。

在形式上,儲存伺服器軟體通常是以NAS軟體+SCSI裝置Target軟體的形式呈現,由於軟體中已包含了作業系統、邏輯磁碟管理員與檔案系統等元件,只要再添加共享檔案存取管理功能元件,就能扮演NAS角色,搭配iSCSI Target與FC Target軟體,便進一步成為橫跨了NAS檔案共享存取、SAN區塊存取的多協定儲存設備。

考慮到作業系統的授權費用,儲存伺服器軟體底層所採用的作業系統平臺,通常是開源類型的Linux、FreeBSD或OpenSolaris等,如基於Linux的Open-E DSS與Openfiler,基於FreeBSD的FreeNAS、基於OpenSolaris的Nexenta Nexentastor等。

虛擬化儲存應用伺服器
幾乎任何儲存虛擬化軟體都可以部署在VMware、Hyper-V等伺服器虛擬化平臺上,成為一臺虛擬化儲存應用伺服器(Virtual Storage Appliance),讓用戶省下伺服器硬體的投資。

更進一步,某些產品如HP的StoreVirtual VSA、VMware的VSA、Virsto的Virsto for vSphere/Hyper-V,以及StorMagic的SvSAN等,則直接把產品包裝為一臺虛擬機器的形式來銷售與部署,產品本身是一臺預載了儲存虛擬化軟體、作業系統,與特定虛擬平臺虛擬機器格式設定的虛擬機器,用戶只需將這些軟體直接匯入到虛擬平臺,就能完成虛擬化儲存應用伺服器的建置,可極大簡化用戶部署程序。

從另一方面來看,儘管虛擬化儲存應用伺服器有部署簡易的優點,但虛擬機器的形式將會影響到I/O效能,另外也只能支援iSCSI協定。

儲存虛擬化軟體的相容性問題
前面提到,建置「軟體化」儲存的一大麻煩,便在於必須解決軟硬體相容性的問題,其中一大部分問題,又都是取決於儲存應用軟體所基於的作業系統硬體支援性。

iSCSI Target、FC Target等軟體所使用的磁碟區、或者是NAS服務所使用的共享檔案空間,都是來自底層作業系統所提供的磁碟區空間,所以要建置「軟體化」儲存,首要前提,便是用戶所欲使用的硬體裝置、特別是儲存相關的RAID卡、SATA/SAS控制器等,必須能與作業系統相容,必須能讓作業系統識別與使用這些儲存硬體裝置,然後上層的儲存應用程式才能發揮作用。

就相容性這點而言,顯然採用支援性越廣泛的作業系統平臺更為有利,如DataCore的SANsymphony便是藉由採用Windows為作業平臺,取得最廣泛的硬體支援能力。

雖然採用Windows會增加整體成本(相對於開源類型作業系統),但當前無論何種硬體設備,都毫無例外的把支援Windows作為第一優先,必然會提供Windows下的驅動程式,連帶地SANsymphony會遇到的相容性問題也較小。

另外Linux的相容性也相當廣泛,因此基於Linux平臺的IPStor、Open-E DSS與Openfiler等軟體,也比較不會有相容性問題。

相較下,基於OpenSolaris的Nexenta Nexentastor與基於FreeBSD的FreeNAS,由於作業平臺相對比較小眾,許多硬體周邊都不提供支援這些平臺的驅動程式,遭遇相容性狀況的問題便比較多一些。

另一方面,改採虛擬機器、也就是虛擬化儲存應用伺服器型式來部署,也是一個迴避相容性問題的方法,不直接使用實體硬體資源,而透過虛擬化平臺提供的虛擬主機來安裝,讓虛擬化平臺去解決硬體相同性問題。

x86架構的勝利:硬體核心漸趨一致的儲存設備與伺服器
過去幾年以來,x86架構(或者說IA-32架構)在儲存設備領域的應用越來越普及,逐漸模糊了儲存設備與伺服器硬體之間的界線,連帶也影響了儲存產品的生態。

一般而言,磁碟設備的控制器有兩種典型型態:

●    基於Intel或AMD的x86/架構處理器,這類型控制器本質上就是一種變形的x86伺服器或PC,只是運行專為儲存應用而設計的軟體而已,優點在於節省研發成本,透過升級新型處理器,或在控制器中搭載更多採用SMP平行架構的處理器,就能方便地提升效能,典型產品如EMC CLARiiON系列與NetApp FAS系列。

●    RISC通用處理器+I/O處理器架構:由RISC架構的通用處理器(通常是PowerPC或MIPS處理器)來執行儲存作業系統,另由ASIC或FPGA類型的I/O處理器來執行I/O處理,類似RAID卡的架構。由於專門定製的ASIC晶片可提供極高效率的I/O處理能力,所以通用處理器不需要太高的規格,就能擁有不錯的整體效能,典型產品如LSI Engenio系列,HDS的AMS系列,3PAR的Titan等,除了這些中高階的產品外,臺灣過去曾有許多RAID卡廠商,這些廠商以研製RAID卡的經驗為基礎,後來也延伸發展出許多基於通用處理器+IO處理器架構的外接式磁碟陣列產品,如普安、喬鼎等都是這種發展路線的典型。

經過10多年發展後,時至今日,直接採用x86處理器的儲存控制器架構,已明顯成為主流。

隨著晶片開發難度與成本的不斷攀升,留存下來的處理器廠商也越來越少,現在雖然仍有堅守RISC處理器+ASIC架構的儲存廠商,但這種處理器架構無論在更新速度還是性能增長幅度方面,均遠遠落後於x86處理器。

就連Intel本身,也在2010年推出採用Nehalem架構的Xeon C3500/C5500系列I/O處理器,用於取代已發展了10年、幾乎一統中、低階儲存應用市場、廣為RAID卡與中、低階磁碟陣列採用的RISC架構XScale IOP系列處理器。

C3500/C5500是x86架構在I/O處理器上的首次應用,已成為當前新一代中、低階磁碟陣列的標準架構,但這樣一來,也讓磁碟陣列與伺服器的核心架構更為接近,供儲存設備使用的Xeon C3500/C5500處理器,與一般伺服器使用的Xeon處理器之間,主要差別只在於前者額外整合了RAID 5/6運算所需的XOR/P+Q引擎,以及其他針對儲存需求的修改。

我們可以想見,RISC處理器+ASIC I/O處理器的架構,在儲存設備領域應用的比例將逐漸降低,未來絕大多數儲存設備都會是x86架構,與伺服器間的界線也更為模糊。

固然專業儲存設備在硬體上會有一些伺服器沒有的專有機構設計,如在控制器與機箱間採用SBB(Storage Bridge Bay)之類的介面,並在2組控制器與機箱間採用特別的中介背板,藉此提供控制器熱抽換與失效切換等功能,不過就核心架構來說,外接式磁碟陣列與安裝有RAID卡的伺服器之間,幾乎是完全相同,最重要的差別只在於執行的軟體類型與用途不同。


詳細內文請參考:儲存虛擬化軟體解決方案採購大特輯

熱門新聞

Advertisement