NFV關鍵技術:儲存虛擬化概述

陶然陶然發表於2022-04-27

   Labs 導讀

  儲存虛擬化(StorageVirtualization)最通俗的理解就是對儲存硬體資源進行抽象化表現。

  儲存虛擬化可以將使用者與儲存資源中大量的物理特性隔絕開來,就好像我們去倉庫存放或者提取物品一樣,只要跟倉庫管理員打交道,而不必關心我們的物品究竟存放在倉庫內的哪一個角落。對於使用者來說,虛擬化的儲存資源就像是一個巨大的“儲存池”,使用者不會看到具體的儲存磁碟、磁帶,也不必關心自己的資料經過哪一條路徑通往哪一個具體的儲存裝置。

  儲存虛擬化減少了物理儲存裝置的配置和管理任務,同時還能夠充分利用現有的儲存資源。儲存虛擬化的方式是將整個雲系統的儲存資源進行統一整合管理,為使用者提供一個統一的儲存空間。如下圖所示:

   1.傳統儲存面臨的挑戰

  傳統的資料中心裡,儲存的型別大致可分為以下幾種:伺服器內建磁碟、直接附加儲存、儲存區域網路及網路附加儲存。

  伺服器內建磁碟包括SCSI、SATA及IDE磁碟等,這些磁碟可能直接由作業系統管理,也可能通陣列卡等RAID管理器進行配置使用(常見的有RAID 1、RAID 10、RAID 5、RAID 6等)。內建磁碟作為最簡單直接的儲存方式,在目前資料中心裡仍然到處可見。伺服器磁碟RAID陣列資料組織模式如下:

  直接附加儲存(Directed Attached Storage,DAS)作為一種最簡單的外接儲存方式,通過資料線接連線在各種伺服器或客戶端擴充套件介面上。它本身是硬體的堆疊,不帶有任何儲存作業系統,因而也不能獨立於伺服器對外提供儲存服務。DAS常見的形式是外接磁碟陣列,通常的配置就是RAID控制器+一堆磁碟。DAS安裝方便、成本較低的特性使其特別適合於對儲存容量要求不高、伺服器數量較少的中小型資料中心。如下圖所示:

  儲存區域網路(Storage Area Network,SAN)是一種高速的儲存專用網路,通過專用的網路交換術連線資料中心裡的所有儲存裝置和伺服器。在這樣的儲存網路中,儲存裝置與伺服器是多對多的服務關係:一臺儲存裝置可以為多臺伺服器同時提供服務,一臺伺服器也可以同時使用來自多臺儲存裝置的儲存服務。不同於DAS,SAN中的儲存裝置通常配備智慧管理系統,能夠獨立對外提供儲存服務。SAN儲存網路系統結構圖如下:

  典型的SAN利用光纖通道(Fiber Channel,FC)技術連線節點,並使用光纖通道交換機(FC Switch)提供網路交換。不同於通用的資料網路,儲存區域網路中的資料傳輸基於FC協議棧。在FC協議棧之上執行的SCSI協議提供儲存訪問服務。與之相對的iSCSI儲存協議,則提供了一種低成本的替代方式 即將SCSI協議執行於TCP/IP協議棧之上。為了區別這兩種儲存區域網路,前者通常稱為FC SAN,後者稱為IP SAN。由於SAN儲存採用網路架構和光纖傳輸,使它具有易部署、擴充套件強、傳輸快等優勢,傳輸速率可達8~16Gbps。資料中心常見的SAN交換機如下圖所示:

  網路附加儲存(Network Attached Storage,NAS)提供了另一種獨立於伺服器的儲存裝置訪問方(相對於內建儲存與DAS)。類似於SAN,NAS也是通過網路交換的方式連線不同的儲存裝置與伺服器。同樣,儲存裝置與伺服器之間也一種多對多的服務關係。NAS伺服器通常也具有智慧管理系統,能夠獨立對外提供服務。與SAN不同的是,NAS基於現有的企業網路(即TCP/IP網路),不需要額外搭建昂貴的專用儲存網路(FC)。此外NAS通過檔案I/O的方式提供儲存,這點也不同於SAN的塊 I/O訪問方式。NAS儲存的架構示意圖如下:

  常見的NAS訪問協議有NFS(Network File System)和CIFS(Common Internet File System),因此允許多臺伺服器以共享的方式訪問同一個資料儲存單元LUN。而且,由於NAS內部嵌入了一個精簡的專門用於儲存的作業系統,整合了網路傳輸和I/O訪問等協議,因此NAS儲存獨立於使用者作業系統,可線上擴充套件,且部署容易,管理成本低(相對SAN儲存)。實際中的常見的NAS產品,比如群暉NAS產品實物圖如下:

  隨著雲端計算與軟體定義資料中心的出現,對儲存管理有了更高的要求,傳統儲存也面臨著諸多前所未有的挑戰:

  對於伺服器內建磁碟和DAS來說,單一磁碟或陣列的容量與效能都是有限的,而且也很難對其進行擴充套件。另外這兩種儲存方式也缺乏各種資料服務,例如資料保護、高可用性、資料去重等。最大的麻煩在於這樣的儲存使用方式導致了一個個的資訊孤島,這對於資料中心的統一管理來說無疑是一個噩夢。

  對於SAN和NAS來說,目前的解決方案首先存在一個廠商繫結的問題。與伺服器的標準化趨勢不同,儲存產品的作業系統(或管理系統)仍然是封閉的。不僅不同廠商之間的系統互不相容,而且一家廠商的不同產品系列之間也不具有互操作性,這必然導致高價和技術壁壘。此外,管理孤島的問題依舊存在,相對於DAS來說只是島大一點,數量少一點而已。最後,SAN與NAS的擴充套件性也仍然是個問題。

  另外,一些全新的需求,比如:對多租戶(Multi-Tenancy)模式一致性支援、雲彈性(Cloud-Scale)的動態遷移服務支援、動態定製的資料服務(Data Service)以及直接服務虛擬網路的應用等。這些需求並不是通過對傳統儲存架構的簡單修修補補就可以滿足的。

   2.儲存虛擬化的定義

  為了解決上述挑戰,儲存虛擬化和軟體定義儲存SDS的概念日趨火熱,但是需要注意一點---儲存虛擬化並不等於軟體定義儲存SDS,準確點講儲存虛擬化是軟體定義儲存的一個具體實現。儲存虛擬化的本質是儲存整合的一個重要組成部分,它能減少管理問題,而且能夠提高儲存利用率,這樣可以降低新增儲存的費用。權威機構SNIA(儲存網路工業協會)給出的定義為:通過將儲存系統/子系統的內部功能從應用程式、計算伺服器、網路資源中進行抽象、隱藏或隔離,實現獨立於應用程式、網路的儲存與資料管理。

  總結起來就是:儲存虛擬化技術將底層儲存裝置進行抽象化統一管理,向伺服器層遮蔽儲存裝置硬體的特殊性,而只保留其統一的邏輯特性,從而實現了儲存系統的集中、統一、方便的管理。

  與傳統儲存相比,虛擬化儲存的優點主要體現在:

  磁碟利用率高,傳統儲存技術的磁碟利用率一般只有30-70%,而採用虛擬化技術後的磁碟利用率高達70-90%;

  儲存靈活,可以適應不同廠商、不同類別的異構儲存平臺,為儲存資源管理提供了更好的靈活性;

  管理方便,提供了一個大容量儲存系統集中管理的手段,避免了由於儲存裝置擴充所帶來的管理方面的麻煩;

  效能更好,虛擬化儲存系統可以很好地進行負載均衡,把每一次資料訪問所需的頻寬合理地分配到各個儲存模組上,提高了系統的整體訪問頻寬。

  如下圖所示為華為儲存虛擬化的解決方案架構圖。

  在華為的儲存虛擬化解決方案中,有三個概念,分別是:儲存資源、儲存裝置和資料儲存。

  儲存資源:表示物理儲存裝置,例如IPSAN、Advanced SAN、NAS等。

  儲存裝置:表示儲存資源中的管理單元,類似LUN、 Advanced SAN儲存池、NAS共享目錄等。

  資料儲存:表示虛擬化平臺中可管理、操作的儲存邏輯單元。

  各類儲存資源的特性對比如下,其中,儲存解除安裝是指將部分儲存操作(模板部署、刪除清零等操作)下移到儲存側進行,這樣做可以不浪費主機側資源,同時也可以提升操作效率。

  華為的虛擬化儲存棧全景圖如下,可以將不同儲存裝置進行格式化,遮蔽儲存裝置的能力、介面協議等差異性,將各種儲存資源轉化為統一管理的資料儲存資源,可以用來儲存虛擬機器磁碟、虛擬機器配置資訊、快照等資訊,使得使用者對儲存的管理更加同質化。

   3.儲存虛擬化的技術實現分類

  虛擬化儲存有多種分類方法,從大的方面可以分為:根據在I/O路徑中實現虛擬化的位置不同進行分類和根據控制路徑和資料路徑的不同進行分類。

  根據在I/O路徑中實現虛擬化的位置不同,虛擬化儲存可以分為主機的虛擬儲存、網路的虛擬儲存、儲存裝置的虛擬儲存。根據控制路徑和資料路徑的不同,虛擬化儲存分為對稱虛擬化與不對稱虛擬化。

   3.1 基於主機的虛擬儲存

  基於主機的虛擬儲存完全依賴儲存管理軟體,無需任何附加硬體。基於主機的儲存管理軟體,在系統和應用級上,實現多機間的共享儲存、儲存資源管理(儲存媒介、卷、檔案管理)、資料複製和資料遷移、遠端備份、叢集系統、災難恢復等儲存管理任務。

  基於主機的虛擬儲存又可分為資料塊以上虛擬層和資料塊儲存虛擬層:資料塊以上虛擬層(ViAualizationaboveBlock)它是儲存虛擬化的最頂層,通過檔案系統和資料庫給應用程式提供一個虛擬資料檢視,遮蔽了底層實現。資料塊儲存虛擬層(BlockStorageVirtualzation)通過基於主機的卷管理程式和附加裝置介面,給主機提供一個整合的儲存訪問檢視。卷管理程式為虛擬儲存裝置建立邏輯卷,井負責資料I/O請求的路由。如下圖所示,為基於主機的虛擬化儲存示意圖,主要應用於伺服器的儲存空間可以跨越多個異構的磁碟陣列場景,常用於在不同磁碟陣列之間做資料映象保護。

  一般由作業系統下的邏輯卷管理軟體完成(安裝客戶端軟體),不同作業系統的邏輯卷管理軟體也不相同。

  優點是:支援異構的儲存系統。

  缺點是:佔用主機資源,轉發效能差,與主機OS相容性差,資料遷移複雜。

   3.2 基於儲存裝置的虛擬儲存

  基於儲存裝置的儲存虛擬化方法依賴於提供相關功能的儲存模組。如果沒有第三方的虛擬軟體,基於儲存的虛擬化經常只能提供一種不完全的儲存虛擬化解決方案。對於包含多廠商儲存裝置的SAN儲存系統,這種方法的執行效果並不是很好。利用這種方法意味著最終將鎖定某一家單獨的儲存廠商。如下圖所示,為基於儲存裝置的虛擬化示意圖,主要應用於在同一儲存裝置內部,進行資料保護和資料遷移的場景。

  通過在儲存控制器上新增虛擬化功能實現,只有中高階儲存裝置具備此功能。

  優點是:與主機無關,不佔用主機資源,資料管理功能豐富。

  缺點是:只能對本裝置內的磁碟虛擬化,廠商繫結不能異構,多套儲存裝置軟體不相容,需多部署,成本高。

  比較常見的基於裝置的儲存虛擬化應用就是精簡配置虛擬磁碟,能夠提供遠遠大於物理磁碟容量的虛擬空間。不管虛擬機器磁碟分配了多少空間,如果沒有資料寫到虛擬磁碟上,就不會佔用任何物理磁碟空間。精簡配置虛擬磁碟的示意圖如下所示,可以用小的物理容量為作業系統提供超大容量的虛擬儲存空間。並且,隨著應用資料量的增長,實際儲存空間也可以及時擴充套件,而無須手動擴充套件。總之,自動精簡配置提供的是“執行時空間”,可以顯著減少已分配但是未使用的儲存空間。

  如果採用傳統的磁碟分配方法,如上圖左邊。需要使用者對當前和未來業務發展規模進行正確的預判,提前做好空間資源的規劃。在實際中,由於對應用系統規模估計得不準確,往往會造成容量分配的浪費。

  自動精簡配置磁碟,如上圖右邊。有效地解決了儲存資源的空間分配難題,提高了資源利用率。採用自動精簡配置技術的資料卷分配給使用者的是一個邏輯的虛擬磁碟,而不是一個固定的物理空間,只有當使用者真正向該邏輯資源寫資料時,才按照預先設定好的策略從物理空間分配實際空間容量。

   3.3 基於網路的虛擬儲存

  網路虛擬層包括了繫結管理軟體的儲存伺服器和網路互聯裝置。基於網路的虛擬化是在網路裝置之間實現儲存虛擬化功能,它將類似於卷管理的功能擴充套件到整個儲存網路,負責管理Host檢視、共享儲存資源、資料複製、資料遷移及遠端備份等,並對資料路徑進行管理避免效能瓶頸。如下圖所示,基於網路的虛擬儲存示意圖,主要用應用與異構儲存系統的整合和統一管理場景。

  通過在儲存域網(SAN)中新增虛擬化引擎實現。

  優點是:與主機無關,效能好、能夠異構主機和儲存裝置、管理統一、功能豐富。

  缺點是:各廠商產品品質參差不齊,部分廠商產品想能差,相容性差。

  基於網路的虛擬儲存可採用對稱或非對稱的虛擬儲存架構。在非對稱架構中,虛擬儲存控制器處於系統資料通路之外,不直接參與資料的傳輸。伺服器可以直接經過標準的交換機對儲存裝置進行訪問。虛擬儲存控制器對所有儲存裝置進行配置,並將配置資訊提交給所有伺服器,如下圖所示,伺服器在訪問儲存裝置時,不再經過虛擬儲存控制器,而是直接訪問儲存裝置併發工作,同樣達到了增大傳輸頻寬的目的,這種架構也稱為儲存虛擬化的帶外虛擬引擎(out-of-band)。

  一般用於不同儲存裝置之間的資料複製。

  優點是:虛擬化裝置發生故障,整個系統將不會中斷。

  缺點是:主機資源佔用大,資料配置、同步複雜,缺乏統一管理。

  而對稱式架構中,虛擬儲存控制裝置直接位於伺服器與儲存裝置之間,利用執行其上的儲存管理軟體來管理和配置所有儲存裝置,組成一個大型的儲存池,其中的若干儲存裝置以一個邏輯分割槽的形式,被系統中所有伺服器訪問,這種架構也稱為帶記憶體儲虛擬化引擎(in-band)。如下圖所示,虛擬儲存控制裝置有多個資料通路與儲存裝置連線,多個儲存裝置併發工作,所以系統總的儲存裝置訪問效率可達到較高水平。

  主要用於異構儲存系統整合,統一資料管理,在業務執行同時完成複製、映象、CDP等各種資料管理功能。

  優點是:相容性好,不佔主機資源,配置簡單,功能豐富。

  缺點是:虛擬化裝置發生故障,整個系統將中斷。

   4.軟體定義儲存SDS

  上面提到過儲存虛擬化並不等於軟體定義儲存SDS,其實儲存虛擬化也可以歸入軟體定義儲存的類別,實際上很多虛擬化儲存廠商也是這麼做的。但是嚴格意義上來說,這兩者又略有不同,儲存虛擬化一般只能在專門的硬體裝置上使用,它的控制平面和儲存資料平面是緊耦合的,很多廠商都要使用專門量身定做的裝置才能實現儲存虛擬化,而軟體定義儲存則沒有裝置限制,其控制平面和儲存資料平面是鬆耦合,其本質上只定義控制平面的“軟化”,而儲存資料平面仍由各廠商去各自實現。可以簡單理解成就是一個儲存的管理程式。

  軟體定義儲存實際上存在更大的適用範圍,它的目標是從儲存硬體中分離出儲存控制功能和服務並提供程式設計介面,如 OpenStack Cinder, EMC ViPR,華為的Fusion Sphere和Fusion Storage都是這個範疇。如下圖所示:

  再具體一點,軟體定義儲存是把儲存硬體或軟體提供的控制能力抽象出來,並與資料層面的能力(資料訪問)分開,這些控制能力包括卷管理,RAID,QoS,資料複製,監控,快照和備份等等,這個舉動意義在於這些控制能力抽象出來以後,任何廠商提供的儲存能力控制都是接近的,避免對廠商的繫結。

  然後它通過這些控制能力進一步為管理員提供自定義、基於策略的虛擬儲存層,這些策略可以是基於空間、效能、費用等等因素。它的優勢在於與儲存虛擬化相比更加輕量,通常可以保留底層儲存系統如SAN,陣列的特性並仍然發揮作用,而且部署和實現難度都大幅度下降,可以採用更小的代價實現管理儲存基礎設施的能力,如下圖所示:

  OpenStack Cinder是一個典型的軟體定義儲存產品,它目前支援大量的儲存廠商裝置,它定義了一些卷管理,快照,備份,簡單統計等特性,使用者可以使用Cinder提供的介面來獲得不同儲存裝置提供的相似能力。

  而Ceph可以看作一個典型的儲存虛擬化產品,它將大量的通用儲存裝置聯合起來提供一個儲存池,並實現了一般儲存廠商產品的能力。而Ceph的塊儲存能力使得它成為了Cinder的一個Driver。同時Cinder通過了這些基本API進行擴充套件,可以定義出不同的儲存池,智慧化的儲存區域等等。

來自 “ 移動Labs ”, 原文作者:李冰;原文連結:https://mp.weixin.qq.com/s/8bUk3mMnsBN4PhG6gkQ2fg,如有侵權,請聯絡管理員刪除。

相關文章