ALUA,AA,多路徑

先說一下多路徑

主機上每個SCSI設備都具有一個SCSI地址,該地址由initiator ID(或稱爲host ID)、bus ID、target ID以及LUN(邏輯單元號)組成;在實際組網中,initiator ID一般對應主機HBA端口,target ID一般對應存儲陣列控制器端口(bus ID適用於老舊的並行SCSI總線,在SAN環境中一般固定爲0)。如,主機的兩個HBA端口連接到存儲陣列的4個控制器端口,存儲映射了兩個LUN給主機,則主機上會生成8個SCSI設備陣列端口ALUA啓用是爲了是標準主機多路徑軟件識別ALUA陣列,進行路徑優選。如果沒有啓用ALUA選項,主機回認爲是AA陣列,路徑選擇會有問題,影響性能。

在說AA/ALUA

ALUA即“Asymmetric Logical Unit Access(異步邏輯單元訪問)”的縮寫,它是前端控制器多路徑機制之一。前端控制器多路徑機制一定程度上決定存儲的讀寫性能和可靠性,現有的前端控制器多路徑機制可分爲三大類: 

A/ASymmetric Active/Acivie,對於特定的LUN來說,在它的路勁中,兩個存儲控制器的目標端口均處於主動/優化(active/optimized)狀態。兩個控制器之間實現高速互聯的通訊,一個IO發到控制器端,兩個控制器可同時參與處理;當一個控制器繁忙,系統不需要主機端的負載均衡軟件參與就可以自動實現負載均衡。 

ALUAAsymmetric Active/Active,對於特定的LUN來說,在它的路徑中,一個控制器的目標端口處於主動/優化(active/optimized)狀態,另一個控制器的目標端口處於主動/非優化(active/unoptimized)狀態。在某一個時刻,某個LUN只是屬於某一個控制器,要想實現兩邊的負載均衡,就是將任務A扔給控制器A,將任務B扔給控制器B,對於同一個任務來說,任何時候只有一個控制器在控制。 

A/PActive/Passive,對於特定的LUN來說,在它的路徑中,一個控制器的目標端口處於主動/優化(active/optimized)狀態,另一個控制器的目標端口處於備用(standby)狀態。其負載均衡及任務處理方式與ALUA類似。

 

對稱型(A/A-S)和非對稱型(A/A-A):在active-active存儲設備中,LUN可以同時通過兩個I/O控制器或者端口來訪問,唯一的限制在於通過兩個控制器(端口)訪問LUN的性能是否有差別。如果通過secondary控制器或者端口對LUN進行I/O的性能要比通過primary控制器(端口)低得多,則爲非對稱型;如果兩者性能相同,則爲對稱型。

 

Active-Active/Asymmetric形態的陣列與路徑組優先級

對於Active-Active/Asymmetric形態的陣列來說,每個LUN都能夠被任意控制器訪問,但通過不同的控制器訪問其效率是不同的,通常一個LUN會有一個優選控制器,通過該控制器來訪問該LUN效率最高,通過其他控制器來訪問該LUN則會有效率的損失,因此UltraPath會識別出LUN的優選控制器,並優先通過對應路徑組中的路徑來訪問該LUN

AA形態陣列,多路徑軟件在所有路徑範圍內進行負載均衡。

對於Active-Active/Asymmetric形態的陣列,多路徑軟件在路徑組範圍內進行負載均衡;如下圖所示,LUN A只由path1和path2分擔,LUN B的IO只由path3和path4分擔:

 

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