SDN(軟件定義的網絡,Software Defined Network)一詞可以說是最近的新熱點,而上周在北京舉辦的vForum 2012大會分會場一的主題則是“軟件定義數據中心”。Data Center中涉及到各種領域的技術我并不都熟悉,因此還是主要關注存儲方面。
何謂軟件定義的存儲?vSphere哪些方面仍待提高?
幾個月前,筆者曾在《Fusion-io軟件定義存儲:全閃存陣列DIY時代?》一文中介紹了ION(離子)軟件方案,之后的《Mellanox VSA:集閃存和網絡虛擬化之大成?》也屬于類似的產品,由于軟件定義的存儲(Software Defined Storage)如今還沒有嚴格的概念,這些在一個或者幾個x86服務器硬件上聚焦于閃存加速的產品可以從狹義的角度來對號入座?
上個月我們還對杭州的華數云平臺進行了采訪,里面有談到開源OpenStack存儲管理——“存儲架構優先基于OpenStack Swift模塊進行設計;可以使用各種存儲介質作為虛擬機的可分配存儲資源,包括本地存儲、NAS、FC SAN、IP SAN等分布式存儲。”這個可以理解為跨不同虛擬化Hypervisor平臺、廣義的軟件定義存儲(數據中心),而華數“下一步還要做對VMware新出來的云管理平臺等一些第三方支持”。
看完本文,您會發現VMware這方面的實現與OpenStack在架構上比較相似,當然也有自己的特點。
下面筆者將把“VMware主題演講: 軟件定義的存儲-VMware存儲策略展望”中一些我們認為值得關注的要點分享給大家,并簡單談談自己的感受。這一節的主題演講可以大致分為2個部分:軟件定義的存儲,以及Virtual Volume/Virtual Flash。本文先討論第一部分。
現有的vSphere解決了一部分問題,但是還有很多方面可以提高..
如上圖,在當前vSphere 5.1中的存儲特性包含三個部分:
1. 數據服務和策略——配置文件驅動的存儲、Storage I/O Control、vSphere數據服務(包括快照、克隆、復制、數據保護、精簡配置)
2. 完整性——Storage API(包括用于陣列集成的VAAI、存儲感知管理的VASA;VADP則是在提供對備份軟件API接口的同時,還增加了結合VMware母公司EMC Avamar技術的vSphere Data Protection解決方案)
3. 數據移動性——Storage DRS(分布式資源調度)、Storage vMotion虛擬機遷移。
如果能夠... 根據一定策略把異構的存儲設備抽象成虛擬資源池?
根據這張演講PPT,底層為不同的異構存儲硬件,可以有SAN、NAS,也可以是服務器本地DAS直連的SSD(固態盤)或者傳統HDD硬盤。向上聚合到A和B兩個虛擬存儲池中,這就是VMware所謂的“軟件定義的存儲(Software Defined Storage)”?
虛擬存儲池已經為你的虛擬機實現了不同的policy(策略),你在創建一個虛擬機的時候只需要制定這個虛擬機的具體策略。
在基于虛擬機的軟件定義存儲策略向導下,我們可能只需設定一個VM的大小(比如初始預留10GB,上限100GB)、RTO(恢復時間點為3小時)和IOPS性能(預留不低于200,上限為1000)。
在理想的情況下,任何存儲上運行的應用都能夠在用戶定義的策略驅動下自動工作。通過讓存儲了解虛擬機的信息(而不是像VASA那樣感知陣列設備),以及Virtual Flash來增強SAN/NAS。
vSphere橫向擴展直連存儲(DAS)——我們曾經在VSA(vSphere Storage Appliance)軟件產品以及之后來自國外的一些消息中注意到,VMware逐漸強調對DAS的利用,因為這樣相對于集中式共享存儲系統具備成本優勢,并且上層的軟件功能完全由VMware提供,把握住了“軟件定義存儲”的主導權...
VMware分布式存儲:應用場景、VSA對比、VM部署速度
VMware分布式存儲技術——存儲和計算的整合
這里的分布式存儲,以及存儲與計算整合的概念,與當下流行的Hadoop架構有相似之處。
VMware提出將存儲和計算在vSphere的環境下整合起來,用vCenter進行統一管理。效果是使存儲能夠容易擴展,并且可以利用SSD進行緩存(應該指上面提到的Virtual Flash),內置冗余功能(多副本?);減少在存儲上的資金投入。
未來的VMware分布式存儲,與vSphere現在提供的數據服務功能緊密結合。
高效方面,基于SSD的Cache——為吞吐率和延遲做了優化,類似于EMC VFCache、Fusion-io ioTurbine、LSI Nytro那樣的服務器閃存緩存產品,但使用的閃存介質應該更靈活。
擴展性方面,可以動態地擴展到vSphere集群中的每一臺服務器。
高可用性方面,分布式冗余機制保證無單點失效,同時吞吐率達到高帶寬環境要求。
VMware分布式存儲的主要應用場景
上面的應用場景包括虛擬桌面(VDI)、測試和開發、大數據和災難恢復的目標端,好處我就不再重復了。一方面我們沒有看到像OLTP這類關鍵應用;另外在大規模的VDI部署中,是否使用高速的共享全閃存或者混合陣列來存放對性能要求最為苛刻的OS Golden Image(黃金鏡像)更為合適呢?
VMware VSA(vSphere Storage Appliance)與分布式存儲的對比
首先,VSA針對小規模部署提供簡單的共享存儲,后者則是可擴展的分布式存儲;VSA是個虛擬設備,而Distributed Storage集成在vSphere里;目標市場一個是中小型企業和分支機構,另一個是企業級;VSA只支持2-3臺物理服務器,而Distributed Storage可以達到整個集群系統。
此外,VSA沒有SSD緩存且最多支持16TB的容量;Distributed Storage支持SSD緩存,管理上與vCenter整合。
讓我們從下往上看:左邊是對現有傳統存儲SAN/NAS的提升——提交為虛擬卷,可以繼續保留合作伙伴的數據服務(即傳統存儲陣列廠商的精簡配置、快照、閃存優化等軟件功能);右邊為使用服務器內置硬盤實現水平擴展(Scale-out)——分布式存儲。
接下來是VMware的數據服務,分布式存儲主要依賴這些了;再往上是基于策略的存儲管理,構成了整個“軟件定義存儲”架構。
VMware號稱“對所有類型的應用在各種存儲設備上實現自動化管理”,筆者認為在當前基礎上最大的改進是“深藍色”部分,也就是對DAS的支持,實現目前磁盤陣列普遍具備的主要軟件功能。
在vSphere 4時代,部署一臺虛擬機需要經過:確定需求——找到最優化的datastore——創建VM,后面還有定期檢查的步驟。到了vSphere 5之后,由于加入了Storage DRS和配置文件驅動的存儲(我理解是Storage I/O Control和VASA的進一步發展),可以在初始創建時發現存儲特性并將datastore分組,然后選擇虛擬機的Storage profile。
未來,整個步驟將簡化為指定VM SLA(服務等級協議)——創建VM,因為一切都是以虛擬機為核心設計的——這就是VMware軟件定義存儲的野心吧?屆時的這個版本,可能會是vSphere 6...