SAN中的LUN,volume和HBA

1.LUN


     LUN的全稱是Logical Unit Number,也就是邏輯單元號。


     我們知道SCSI總線上可掛接的設備數量是有限的,一般爲8個或者16個,我們可以用Target ID(也有稱爲SCSI ID的)來描述這些設備,設備只要一加入系統,就有一個代號,我們在區別設備的時候,只要說幾號幾號就可以了。

     而實際上我們需要用來描述的對象,是遠遠超過該數字的,於是我們引進了LUN的概念,也就是說LUN ID的作用就是擴充了Target ID。每個Target下都可以有多個LUN Device,我們通常簡稱LUN Device爲LUN,這樣就可以說每個設備的描述就由原來的Target x變成Target x LUN y了,那麼顯而易見的,我們描述設備的能力增強了。


就好比,以前你給別人郵寄東西,寫地址的時候,可以寫:

xx市人民大街54號 xxx(收)
但是自從高樓大廈越來越多,你不得不這麼寫:
xx市人民大街54號xx大廈518室 xxx (收)


所以我們可以總結一下,LUN就是我們爲了使用和描述更多設備及對象而引進的一個方法而已,一點也沒什麼特別的地方。

LUN ID不等於某個設備,只是個號碼而已,不代表任何實體屬性,在我們的實際環境裏,我們碰到的LUN可能是磁盤空間,可能是磁帶機,或者是media changer等等。


2.磁盤管制


主機的HBA 卡看到的存儲上的存儲資源就靠主要兩個東西來定位,一個就是存儲系統的控制器(Target),一個就是LUN ID,這個LUN是由存儲的控制系統給定的,是存儲系統的某部分存儲資源。


    我們有了獨立的磁盤陣列用了之後,服務器只要看到存儲的控制系統,就有可能使用磁盤陣列的磁盤資源,但是磁盤陣列不可能只爲某一個服務器來使用,所以它必須管制主機使用某部分磁盤資源。


這個管制分爲兩個部分:

一部分就是LUN mapping,類似於綠色通道,就是保證服務器能看到某部分存儲資源,

一部分就是LUN masking,類似於警戒線,就是保證服務器只可訪問給它分配的存儲資源,而沒分配給服務器的資源,就不要染指了。


實現LUN masking和LUN mapping有三種方法:

一個是基於存儲控制系統來設置,

一個是基於存儲交換系統來設置, 比如常說的zoning。

一個是基於服務器OS來設置。


3.volume

LUN是對存儲設備而言的,volume是對主機而言的。

怎麼去理解呢?

選擇存儲設備上的多個硬盤形成一個RAID組,再在RAID組的基礎上創建一個或多個LUN(一般創建一個LUN)。許多廠商的存儲設備只支持一個RAID組上創一個LUN。此時LUN相對於存儲設備是一個邏輯設備。

當網絡中的主機連接到存儲設備時,就可以識別到存儲設備上邏輯設備LUN,此時LUN相對於主機來講就是一個“物理硬盤”,與C盤D盤所在IDC或SCSI硬盤的性屬是相同的。在該“物理硬盤”上創建一個或多個分區,再創建文件系統,纔可以得到一個VOLUM。此時VOLUME相對於主機是一個邏輯設備。

從容量大小方面比較VOLUME,分區、LUN、RAID的關係如下:
  
VOLUME = 分區 ≤ 主機設備管理器中的磁盤 = LUN ≤ RAID ≤ 存儲設備中硬盤的總容量。

上述只是針對一般情況,VOLUME也只是針對主機來講。個別廠商對LUN和VOLUME定義與普通廠商的定義不同,甚至會起一些奇怪的名稱,這些名稱即使是存儲行業的資深人士也不一定全明白。不過只要你能分清楚其實質就行。


4. 多訪問

服務器使用多個HBA連接到存儲網絡,存儲網絡又可能是由多個交換設備組成,而存儲系統又可能有多個控制器和鏈路,LUN到服務器的存儲網絡鏈路又可能存在着多條不同的邏輯鏈路。那麼,必然的,同一個physical LUN在服務器上必然被識別爲多個設備。因爲OS區別設備無非用的是總線、Target ID、LUN ID來,只要號碼不同,就認爲是不同的設備。



5.HBA

HBA,即主機總線適配器英文“Host Bus Adapter”縮寫。

是一個在服務器和存儲裝置間提供輸入/輸出(I/O)處理和物理連接的電路板或集成電路適配器。

因爲HBA減輕了主處理器在數據存儲和檢索任務的負擔,它能夠提高服務器的性能。一個HBA和與之相連的磁盤子系統有時一起被稱作一個磁盤通道。


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章