西瓜哥第一次關注Hedvig的時候,是去年學習Docker的時候(參見Docker都不懂,搞啥子存儲嘛?)。不過,那個時候,SERVER SAN產(chǎn)品見多了,也沒有覺得Hedvig怎么樣。
但今年Gartner把Hedvig評為存儲的Cool Vendor,讓我有點意外,但還是沒有太在意這個廠商。
SERVER SAN里面,我關注比較多的還是VMWware VSAN和EMC ScaleIO。關于這兩個產(chǎn)品,我也寫過很多學習心得,就不再一一列舉。但是,就在去年,Hedvig把EMC SacleIO EMEA(歐洲、中東和非洲)的頭Bam挖了過去。
還有EMC ScaleIO的一個樣板點大客戶Van Dijk Education也變節(jié)了,把EMC的ScaleIO替換為Hedvig。
這兩件事情,讓我突然對Hedvig產(chǎn)生了濃厚的興趣。為什么這個初創(chuàng)公司這么厲害,其產(chǎn)品到底有什么特點,讓EMC ScaleIO怎么難受?
從IT Central Station社區(qū)看到,由于Hedvig是統(tǒng)一的SERVER SAN資源池,同時支持塊、文件和對象,因此大部分用戶首先把它和Red Hat Ceph做比較,其次才是Nutanix,ScaleIO等。
大家知道,Hedvig是閉源的,而Ceph是開源的。除了開源和閉源,它們還有什么不同嗎?
從Hedvig自己的比較看,雖然Hedvig和Ceph從大的功能上非常相似,都是統(tǒng)一的資源池,但內(nèi)部架構(gòu)大大不同,最重要的不同是Ceph的本質(zhì)是一個對象存儲,其塊和文件服務都是基于對象提供的,因此性能上不如Hedvig。Hedvig宣傳其塊性能要比Ceph高7-8倍。不過,這不是也打擊了VMware的vSAN嗎?因為其官方宣傳其底層也是對象存儲(參見完了,VMware VSAN要做成通用存儲了,你讓EMC ScaleIO情何以堪?)。Hedvig還列舉了除了性能外其他很多的優(yōu)勢,具體大家看下圖對比吧。
看樣子,好像Hedvig真是不錯,特別是企業(yè)特性非常豐富的,比一般的SERVER SAN特性多多了??磥硎菚r候了解一下Hedvig的技術(shù)特點了。
初創(chuàng)公司的技術(shù)背景很重要。我們了解到,Hedvig在2012年創(chuàng)立,其CEO Avinash Lakshman(看名字應該是印度人,存儲軟件Startup現(xiàn)在都被印度人占領了,而存儲硬件Startup則是以色列人的長項,如Moshe Yanai的Infinidat)在技術(shù)圈大名鼎鼎,是Amazon Dynamo的聯(lián)合發(fā)明人,Apache Cassandra的發(fā)明人。和Nutanix一樣,這是一個具有互聯(lián)網(wǎng)基因的公司(據(jù)說Nutanix就是基于大量修改Cassandra而來的)。
但Nutanix雖然以SDS為核心,但定位是一個HCI廠商,而Hedvig卻定位是一個純粹的SDS廠商。Hedvig只銷售軟件,用戶購買商用服務器組成一個分布式的統(tǒng)一存儲平臺,支持超融合部署和兩層部署(計算和存儲分離)。
Hedvig認為自己和市場上的SDS和超融合產(chǎn)品都不同,除了具備Virtual SANs部署靈活特點外,還具有高端存儲的企業(yè)存儲特性。也就是我具有你們所有的優(yōu)點,這個怎么可能啊?
Hedvig在設計的時候,定了7個設計原則。除了具有幾乎EMC ScaleIO的優(yōu)勢外,Hedvig還支持ARM服務器,支持文件(NFS,馬上支持SMB)和對象(Swift和S3),支持容器(Docker),支持在線重刪壓縮(ScaleIO有路標支持壓縮)、自動分層,支持混合云部署和DR。
Hedvig最核心的就是其專利的分布系統(tǒng)引擎(Hedvig Storage Service),它提供數(shù)據(jù)管理服務和數(shù)據(jù)保持服務。
除了Hedvig Storage Service(類似ScaleIO的SDS),Hedvig還有一個訪問層Hedvig Storage Proxy(類似ScaleIO的SDC),如果是VM環(huán)境,Storage Proxy部署成VM,如果是物理機器,則Storage Proxy部署為Docker容器形態(tài),提供block,file和object訪問支持。為了可靠,Storage Proxy具有HA功能,防止單點故障。這個HA功能也可以利用VM的HA功能實現(xiàn)。
還有一個存儲的資源抽象叫Hedvig Virtual Disk。這是一個抽象的單位,所有的企業(yè)特性都是基于這個粒度來實現(xiàn),可以理解為主機看到的卷。從配置界面我們可以看到,可以選擇這個Virtual Disk的類型(iSCSI或者NFS),可以針對這個Virtual Disk選擇是否啟動重刪和壓縮,可以選擇是否是全閃存和混合介質(zhì)(支持自動分層),可以選擇塊大小(缺省是4K),可以選擇復制的策略(是機架冗余還是數(shù)據(jù)中心冗余),還有復制的因子(原來是2-6,現(xiàn)在改為1-6了,截圖是舊的),也就是數(shù)據(jù)可以保存1份到6份。大家知道,ScaleIO只支持2副本。Hedvig為什么考慮支持1副本形態(tài)呢?這不是沒有任何冗余嗎?其實這里主要針對支持Hadoop的HDFS文件系統(tǒng)場景,雖然Hedvig并沒有提供HDFS接口,但Hadoop集群可以利用Hedvig作為存儲來建立HDFS,而HDFS本身就是三副本的保護方式,如果Hedvig再做數(shù)據(jù)復制就太浪費了。Hedvig最多支持6副本的方式,這樣可以支持4個活動的數(shù)據(jù)中心,可以跨全球部署,甚至部署到公有云上去。
從下圖我們可以看到,主機如果采用對象接口,可以不安裝Storage Proxy組件的,直接通過AWS命令行或者OpenStack GUI可以調(diào)用相應的接口。
目前Hedvig和Cisco合作,我們從其參考架構(gòu)的文檔來看看Hedvig的一些細節(jié)部署。Hedvig的存儲節(jié)點是基于CentOS的,一般要求配置2塊系統(tǒng)盤保存Linux系統(tǒng)(鏡像),配置2塊SSD保存元數(shù)據(jù)和作為讀寫Cache,然后就是多塊的HDD數(shù)據(jù)盤。Hedvig把每三塊數(shù)據(jù)盤組成一個存儲池,然后把池切成16GB的粒度,Hedvig把它叫Container或者Chunk(為了不和Docker那個容器封裝搞混,我后面就用Chunk來代表)。這個Chunk顆粒比較大,16GB,相比ScaleIO的1MB要大多了。復制的單位就是Chunk。一般來說,Chunk太大,對小文件的處理性能就比較差,但估計Hedvig有別的機制來解決這個問題。Chunk可以被多個Virtual Disk共享,而Virtual Disk還切為更小的數(shù)據(jù)塊,因此Chunk大一些估計問題也不大。關于硬盤的重構(gòu)速度,Hedvig宣傳4TB的硬盤重構(gòu)只需要20分鐘,已經(jīng)是非??斓牧?。
還有,我們看到第三臺服務器沒有安裝Proxy VM,但也可以通過iSCSI和NFS通過第二臺服務器的Proxy VM訪問存儲,這種部署方式就更加靈活了。
不管怎么說,采用副本的方式,存儲的空間還是太浪費了。現(xiàn)在VMware VSAN支持RAID,而Nutanix開始支持糾刪碼。但副本的性能肯定是最好的,而且只有副本才能支持跨數(shù)據(jù)中心的DR部署。因此,Hedvig沒有計劃支持糾刪碼,只是建議針對性能要求不高的場景,如對象存儲,開啟在線壓縮和重刪,而且無需采用全閃存,這樣可以彌補副本造成的空間浪費。
雖然Hedvig不需要全閃存,但沒有閃存是萬萬不行的。Hedvig在存儲節(jié)點利用SSD保持元數(shù)據(jù)和寫優(yōu)化,可以把隨機小I/O變?yōu)轫樞虼驣/O,還可以作為自動分層的性能層保存熱點數(shù)據(jù)??蛻舳说拈W存也可以作為讀Cache進行加速。大家可以看到,一般的SERVER SAN都不用服務器的DRAM做寫cache,因為無法實現(xiàn)掉電保護,如果采用NV-DIMM成本又太高,因此,基本都是采用SSD作為寫緩存。因此,SSD基本都是必配的,否則系統(tǒng)性能會非常差。
由于Hedvig的元數(shù)據(jù)和其他數(shù)據(jù)采用一樣,每個存儲節(jié)點都有,因此是否可以理解為全對稱的SERVER SAN?
這些元數(shù)據(jù)可以實現(xiàn)快速而豐富的數(shù)據(jù)服務,如做快照和克隆的時候,其實只是進行元數(shù)據(jù)的操作,而元數(shù)據(jù)全部都在SSD里,因此速度還是非常快的,幾乎是實時的。
我思故我在
1、Hedvig從特性來說,幾乎是EMC ScaleIO的超集。可以這么理解,Hedvig=EMC ScaleIO(block)+Isilon(file)+ECS(object),以一敵三。據(jù)說Hedvig的價格也很便宜,因此EMC頭疼是正常的?,F(xiàn)在很多用戶,還是特別喜歡統(tǒng)一的存儲資源池這個概念的。但Hedvig畢竟是一個新公司,目前案例還不多,性能到底如何,也沒有第三方的測試報告。EMC采用這種best of breed產(chǎn)品策略,暫時還是沒有什么問題,特別是ScaleIO,可以打擊Hedvig的不成熟和性能(就說統(tǒng)一存儲的塊性能肯定不讓專門做塊存儲的),讓客戶不敢把關鍵業(yè)務遷到Hedvig上去。而Isilon采用糾刪碼,可以在存儲空間利用率上打擊Hedvig的副本方式。但從趨勢來看,統(tǒng)一的存儲資源池應該是方向,就像在中端存儲領域,EMC Unity最終也融合了。Server SAN領域,未來也一樣。
2、華為其實也存在和EMC一樣的問題,塊資源池主推FusionStorage,而文件資源池主推OceanStor 9000,對象資源池原來主推OceanStor UDS,現(xiàn)在用OceanStor 9000提供對象接口支持。不過,從華為公布的路標來看,未來FusionStorage會同時提供三種服務,實現(xiàn)融合的存儲資源池,類似目前Hedvig的形態(tài)。在FusionStorage暫時做不到融合之前,現(xiàn)在可以采用OceanStor DJ(提供服務編排)+FusionStorage(block池)+OceanStor 9000(file+objiect池)來構(gòu)建融合的資源池方案,滿足客戶的需求。
分享到微信 ×
打開微信,點擊底部的“發(fā)現(xiàn)”,
使用“掃一掃”即可將網(wǎng)頁分享至朋友圈。