這段時間,西瓜哥在學習OpenStack,因此,這幾天就和大家聊聊高端存儲在OpenStack環境下的支持情況。
大家可能非常奇怪,OpenStack不是云架構嗎,怎么和高端存儲搞上關系,云需要高端存儲嗎?
其實,大家的觀念也應該發生變化了。OpenStack作為一個開放的云架構,除了在公有云得到廣泛應用,很多大企業也引入OpenStack來建設私有云。而這些企業的關鍵業務還是需要高端存儲,但通過引入OpenStack控制,可以實現企業的運維自動化,實現高端存儲即服務的能力。因此,OpenStack和高端存儲需要在企業的環境下共存。
事實也是這樣,幾乎所有高端存儲都支持OpenStack API了。今天開始,西瓜哥打算把這些廠商支持的情況分別來說說,今天就從IBM開始吧。
我們知道,OpenStack是一個巨大的開源云架構,主要包括計算、網絡、存儲三大資源的云化管理。
而存儲相關的,主要就是兩個項目Cinder(提供塊服務)和Swift(提供對象服務)。
大家一定不要理解錯了,Cinder指給VM提供塊服務,而不是指具體下面支撐的存儲是塊存儲。Cinder的實現可以是SERVER SAN純軟件的方式(如Ceph),也可以是塊設備(通過FC或者iSCSI),也可以是文件設備(通過NFS)。西瓜哥剛開始的時候也以為Cinder的塊服務,下面只能由塊存儲提供呢。
而高端存儲主要提供塊服務,因此,高端存儲基本都通過提供Cinder Driver(也有叫Provider)來支持OpenStack。
比如IBM的XIV和DS8000,就是通過這種方式提供的。這里唯一要說明的就是,OpenStack Cinder Driver其實是控制和數據路徑是分離的。也就是OpenStack通過各個廠商提供的Driver來控制存儲的分配,但數據路徑還是和普通服務器一樣,從VM直接通過SAN網絡直接訪問存儲的。
其實OpenStack的精華主要就是控制,下面的Hypervisor可以是KVM,vmware或者Hyper-v等等,存儲也一樣。OpenStack只做資源的控制,與下面具體的產品無關。這也是很多大企業引進OpenStack的原因,因為他們想擺脫設備廠商的依賴。而且OpenStack是開源的,他們可以參與開發,和企業的運維流程結合起來。
在OpenStack環境下,其實也可以相互配合使用,即可以控制某些用戶使用某些DOMAIN,做的資源隔離的目的。
IBM還提供Cloud Manger云管理套件,可以和OpenStack聯動管理。
我們看到,IBM的Cloud Manage也可以管理自己小型機和大型機環境下的虛擬機。
由于DS8000只支持FC,只能通過FC協議提供Cinder服務,而XIV除了FC,還可以支持iSCSI。
按理來說,高端存儲應該可以通過Cinder Driver告訴OpenStack存儲的具體能力。
但目前IBM只實現了基本的功能,比如創建和刪除一個卷,把這個卷賦予某個VM,創建快照等等。
而這塊NetApp好像做得更加完善一些。NetApp可以傳遞很多存儲的特性,比重刪、壓縮、Thin等給OpenStack控制平面。不過,XIV的特性也沒有DATA ONTAP豐富,可能這也是一個原因吧。
DS8000應該也只是提供基本的功能特性,看IBM的redbook,DS8000關于OpenStack的文檔很簡單,內容不多。也許這種應用場景太少了吧。
好,我們今天簡單了解了IBM高端存儲對OpenStack支持的情況。后面我們將看看其他高端存儲廠商的情況,如果西瓜哥可找到相關文檔的話。