天天看點

EMC VNX系列技術存儲介紹之1--幾個重要的基本概念

    這個系列的文章主要來介紹EMC VNX系列存儲相關的技術,包括flare lun、thin lun、thick lun、meta lun、snapshoot、provisioning、fast vp、fast cach這些基本概念,也包括較複雜的vnx系列存儲配置,快照挂載,虛拟化配置等,記錄這些技術是我注冊這個部落格的根本目的,也将是我今後項目實施的重點。

首先介紹幾本概念:

一,flare lun、thin lun、thick lun、meta lun

1)flare lun:

最傳統的lun,基于raid group上的分區,沒有虛拟化的概念,分了100G挂給host,host就占用了100G。

但是在vnx上的flare lun(vnx中成為raid group lun)也可以擴容,右鍵extend可以做成meta lun。

2)thick lun:

在vnx等具有虛拟化功能的存儲上的概念,與傳統存儲相比,這類存儲在raid group之上建立了【storage pool】概念,thick lun和thin lun都是基于storage pool的概念,thick lun其實了解起來和flare lun是一樣的,分了100G挂給host,host就占用了所有空間,但是與flare不同的是在vnx存儲上thick lun可以擴容,右鍵lun選擇extend,就會從storage pool中劃空間。

3)thin lun:

基于storage pool的概念,thin lun是典型的provisioning概念,他可以給host配置設定虛拟的磁盤大小,甚至可以比lun實際空間還要大,但是主機并不是真正占用了這些空間,比如配置設定了100G的thin lun,實際可能隻有10G,隻有在寫入資料大于10G時,才會真正開始占用空間,對磁盤的使用率有很大提高。

4)meta lun:

mata lun在很多時候可以和LVM相比較,後者其實更好維護。

2016-1-14更新:

在emc vmax挂lun時,項目是這樣的:

1)因為aix hp-ux linux對lun的整合能力好,是以當os team需要例如135G空間時,存儲直接分給storage group10個13.5Glun就可以了。

2) windows整合硬碟能力不好,是以需要存儲測先把10個13.5Glun合并成meta lun,再分給windows.

3) 今天有個case是給windows加lun時加多了,例如多加了10個,server關機後,在vmaxgui操作删除10個lun,然後os端還要操作metalun與storage group之間的關系。

二,SSD、SAS、LS-SAS、SATA硬碟

在unisphere中會有不同類型硬碟的pool配置。

NL-SAS和SAS從技術上來說,沒啥大差別。NL-SAS更注重容量和價格,SAS更注重性能上的考慮。

至于sata硬碟就是民用主流的接口,序列槽分sata2和3,主流是3代——6g每秒。實際速度讀出100m,寫入60m吧。SSD是性能最好的。是以性能的排名肯定清楚了。

三,RAID group、Storage pool,Storage group,Hot spare

在VNX系列的存儲配置中,這三個概念肯定是會遇到的。

首先在storage界面可以選擇建立RAID group和pool,先說raid group,這個就是傳統的raid,多個磁盤合成的一個磁盤合集,但是最多隻能負擔16塊盤,hot spare也是在它上面劃分的,隻要在選擇raid類型時選擇hot spare就可以了,建立完rg,可以繼續建立lun,基于rg的lun也是沒有虛拟化概念的,不能擴充。(還不能确定,看文檔據說是可以extend為meta lun)

而pool是一個虛拟化的概念,說白了實在RG上面的一層抽象,如果選擇建立pool,emc給出了RAID建立時的推薦磁盤數量配置,例如RAID5推薦用5塊盤的倍數(4+1)來建立,這也是基于虛拟化的最佳配置搭配,比如拿10塊盤做raid5, pool會自動做兩個5塊盤的raid5,分20個(磁盤數的2倍)lun,因為兩個raid的結構一樣,在之後的動态擴充中性能肯定最好,如果用9塊盤,pool會自動做一個4+1,一個3+1,兩個raid上的lun結構不同,不利于拓展性能。建立完pool可以建立thin lun,如果不勾選預設就是thick lun。如果做成pool,不會受磁盤數量限制,但是如果做大型pool,比如40個盤的,要先做小pool再擴充。

四,snapshot、snapshot mount point(SMP)

<a href="http://s1.51cto.com/wyfs02/M00/75/CC/wKiom1ZC2F3gqfk5AAHe5jq9mh8543.png" target="_blank"></a>

<a href="http://s4.51cto.com/wyfs02/M01/75/CC/wKiom1ZC2F6Ruv_nAAJjVXiYc_8091.png" target="_blank"></a>

VNX的snapshot使用的是redirect on write(ROW)的技術,與snapview snapshot的copy on first write(cofw)(cofw和snapview了解的比較模糊)不同。

首先看上面第一個圖,在進行snapshot的時候,需要把【檔案系統描述區】複制一份,在有的文檔也把這個描述區叫做在RIAD控制區的catch中建立一個區域指針,這個指針指向一一對應的資料塊,在資料還沒修改時,ss建立一個快照也是一一對應着資料塊,與源檔案一樣,如果某個block資料被修改,在被修改前,會先把尚未修改的block資料儲存到snaplun中,這個lun是在ss最初就被預留的,也有叫reserved lun的,然後指向修改block的指針也會發生變動,如上面的第二個圖,是以ss本質還是一個指針,也是占用空間的,最極端的情況如果所有block都被修改了,ss lun要占用與源lun一般大的空間,在一般情況下肯定是源lun資料+指針+ss lun的資料組成ss的全部資料(我的了解),系統指針指向的是最新的資料block,ss指針指向的是原始資料。在讀取資料時,如果要讀取源lun的資料,直接讀取就好,如果要讀取ss的資料,先查詢這個檔案描述區的指針,未修改的資料從源lun讀,修改的從ss lun中讀。是以ss提供一個瞬時的影響,資料被修改才會把中繼資料存到新的lun中,如果資料修改不打,ss占用空間就不大。

更新:ss其實在建立之後 會動态的進行多次snapshot,即資料被改變時就會進行snapshot2,系統也會儲存多份snapshot.

接下來說一下snapshot mount point:

<b>    本文轉自UVN2015  51CTO部落格,原文連結:http://blog.51cto.com/10851095/1711220</b><b>,如需轉載請自行聯系原作者</b>

繼續閱讀