關於儲存控制器的多路徑機制(轉載)
關於儲存控制器的多路徑機制
什麼是ALUA多路徑機制?
ALUA即“Asymmetric Logical Unit Access(非同步邏輯單元訪問)”的縮寫,它是前端控制器多路徑機制之一。前端控制器多路徑機制一定程度上決定儲存的讀寫效能和可靠性,現有的前端控制器多路徑機制可分為三大類:
A/A:Symmetric Active/Acivie,對於特定的LUN來說,在它的路徑中,兩個儲存控制器的目標埠均處於主動/最佳化(active/optimized)狀態。兩個控制器之間實現高速互聯的通訊,一個IO發到控制器端,兩個控制器可同時參與處理;當一個控制器繁忙,系統不需要主機端的負載均衡軟體參與就可以自動實現負載均衡。
ALUA:Asymmetric Active/Active,對於特定的LUN來說,在它的路徑中,一個控制器的目標埠處於主動/最佳化(active/optimized)狀態,另一個控制器的目標埠處於主動/非最佳化(active/unoptimized)狀態。在某一個時刻,某個LUN只是屬於某一個控制器,要想實現兩邊的負載均衡,就是將任務A扔給控制器A,將任務B扔給控制器B,對於同一個任務來說,任何時候只有一個控制器在控制。
A/P:Active/Passive,對於特定的LUN來說,在它的路徑中,一個控制器的目標埠處於主動/最佳化(active/optimized)狀態,另一個控制器的目標埠處於備用(standby)狀態。其負載均衡及任務處理方式與ALUA類似。
Active/optimized、Active/unoptimized、Standby和Unavailable是目標埠的四種訪問狀態,在相應訪問狀態下,裝置伺服器(即陣列控制器)只能回應相應的命令標準(命令標準由ISO/IEC 14776-453檔案Part 453:SPC-3制定),這就決定了在某一時刻是否可以透過某個目標埠訪問邏輯單元。
目標埠的狀態可以轉換,目標埠從一個狀態轉換到另一個狀態的過程稱為過渡。
Active/optimized:目標埠有能力立即訪問邏輯單元。
Active/unoptimized:只能回應相應的命令標準,可以過渡到Active/optimized。
Standby:只能回應相應的命令標準,可以過渡到Active/optimized。
Unavailable:只能回應有限的命令集,不可以過渡到其他三種狀態。
在A/A陣列中,管理員無需指定每個LUN的預設所有者,當路徑出現故障,將離線故障路徑並重定向IO到其他路徑,IO重定向期間,儲存控制器會充分考慮負載平衡等因素並選擇最合適的路徑。對於應用程式,路徑切換過程是透明的的,幾乎不會有延遲(延遲時間一般為幾秒)。
在ALUA或A/P陣列中,管理員需指定每個LUN的預設所有者,設定一些LUN的預設所有者為控制器A,另外一些LUN的預設所有者為控制器 B, 人為在兩個控制器之間進行負載均衡;如果路徑發生故障,將重新分配IO流量到其他可用的路徑,同時,停止故障路徑上的IO。對於應用程式,路徑切換過程是透明的,然而,會有延遲(延遲時間一般為幾十秒)。
在制定負載平衡策略時,必須同時兼顧多路徑軟體功能及儲存陣列的多路徑機制(A/A-ALUA-A/P)。
我司的MS3000/MS5000屬於ALUA陣列,H公司的IX3000屬於A/P陣列,HDS推出的AMS2000屬於A/A陣列。從理論上來說,對於不同的多路徑機制,最直觀的表現是路徑切換的延時不同,A/A機制最優且幾乎無延時,ALUA機制稍差且有延時,A/P機制最差且延時更大。
儲存裝置有兩個I/O控制器,每個I/O控制器上有兩個連線主機的埠。儲存裝置中還有n個磁碟,並假定每個磁碟對應一個LUN。對於儲存裝置中的LUN,可以有幾種不同的多路徑訪問方式:
Active-Active(A/A):如果對於儲存裝置的同一個LUN的I/O請求訪問可以同時在兩個I/O控制器,或者某一個控制器的兩個埠上同時進行,則稱之為active-active(A/A)型的儲存裝置。
Active-Passive(A/P)。如果儲存裝置只在一個(primary)I/O控制器(埠)上接受和執行對LUN的I/O請求,但是,它可以被切換,或者fail over,到從另一個(secondary)I/O控制器(埠)來訪問這個LUN,則它稱為active-passive(A/P)型的儲存裝置。這種切換,稱為LUN failover,或者LUN trespass。
Active-Active型的儲存裝置又進而分為兩種:
對稱型(A/A-S)和非對稱型(A/A-A):在active-active儲存裝置中,LUN可以同時透過兩個I/O控制器 或者埠來訪問,唯一的限制在於透過兩個控制器(埠)訪問LUN的效能是否有差別。如果透過secondary控制器或者埠對LUN進行I/O的效能要比透過primary控制器(埠)低得多,則為非對稱型;如果兩者效能相同,則為對稱型。
Active-Passive型的儲存裝置又可分為不同的型別:
隱式failover型和顯式failover型:隱式failover型儲存裝置根據針對I/O請求接收的路徑不同來觸發LUN failover,即它在secondary路徑上接收到對LUN的請求時,會自動從primary I/O路徑failover到secondary路徑。因為LUN failover(也稱為trespass)是一個慢操作,會影響到效能,在A/P儲存裝置上如何有效管理LUN trespass是一個關鍵課題,要使得在給定時刻對某個LUN的所有I/O應該只流向其中一個I/O控制器(埠)。而顯式failover型儲存裝置只是在從主機上接收到特定的SCSI命令時才進行fail over。顯式failover提供了A/P儲存裝置用在叢集環境(即多個主機可以直接對LUN發起I/O請求)中實現高效能所需的控制。如果沒有顯式failover能力,叢集軟體必須在發起隱式failover之前,仔細同步所有主機對LUN的訪問,防止來自多個主機的I/O請求導致持續的failover。
LUN failover型和LUN組failover型:如果各個LUN獨立地從一個I/O控制器(埠)fail over到另一個I/O控制器(埠),則稱為LUN failover型。但是,某些active-passive儲存裝置可以透過管理將多個LUN配置成LUN組,並且實現組中LUN同時fail over,即在組中一個LUN的所有primary I/O控制器(埠)故障時,將組中所有LUN都fail over到secondary I/O控制器(埠),具有這種能力的儲存裝置稱為組failover型。組failover要比單個LUN的fail over快得多,可以降低I/O控制器(埠)故障對應用程式的衝擊,尤其在儲存裝置存在大量的磁碟(LUN)的情況下。
如果同時考慮I/O控制器和埠,則還存在一種多路徑併發型Active-Passive(A/P-C)的訪問方式。這時,儲存裝置可以在同一個I/O控制器的兩個埠同時接收並執行針對某個LUN的I/O請求,只是在當這個I/O控制器,或者說這個I/O控制器的兩個埠,出現故障之後,它會failover到另一個I/O控制器的埠。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/13337857/viewspace-1437169/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 華為儲存多路徑
- 儲存-配置多路徑
- 【多路徑】EMC儲存多路徑軟體配置
- IBM儲存多路徑軟體IBM
- linux 儲存多路徑軟體Linux
- 獲取在oracleasmlib上hds儲存的多路徑OracleASM
- Oracle 11g RAC安裝--基於openfiler儲存+多路徑+udev方式Oracledev
- 批量修改vsphere共享儲存多路徑選擇策略
- Linux環境iSCSI儲存及多路徑功能配置Linux
- centos上iscsi+multipath多路徑儲存配置手冊CentOS
- 儲存多路徑故障導致資料庫死掉案例資料庫
- 儲存機制
- 獲取在oracleasmlib上emc儲存的多路徑問題OracleASM
- 基於LSM樹的儲存機制簡述
- Web儲存機制Web
- Redhat 5.3掛載IBM DS4800儲存並安裝RDAC多路徑軟體RedhatIBM
- 關於在BSTR中儲存二進位制資料的若干問題 (轉)
- UDEV掛載EMC多路徑盤dev
- 【轉】kafka-檔案儲存機制詳解Kafka
- 【usb儲存掛載】android6.0固定usb儲存掛載路徑Android
- 轉載:關於oracle無法啟動儲存,記錄一下Oracle
- RedHat 5.4上iscsi+multipath多路徑儲存配置獲取裝置的wwidRedhat
- Kafka 訊息儲存機制Kafka
- Kafka 儲存機制和副本Kafka
- Conflux的儲存抵押機制UX
- Mongodb多儲存引擎支援機制MongoDB儲存引擎
- 使用OpenFiler來模擬儲存配置RAC中ASM共享盤及多路徑(multipath)的測試ASM
- HarmonyOS Next關鍵資產儲存安全保障機制深度剖析
- 催化機制(轉載)
- 關於事務的儲存過程儲存過程
- HACCP原理——記錄的儲存(轉載)
- InnoDB儲存引擎鎖機制(一、案例)儲存引擎
- 轉載:關於Linux和Windows拷貝或覆蓋檔案機制的不同 ?LinuxWindows
- multipath多路徑配置
- 【轉】關於oracle中Move機制的一點探討Oracle
- IO多路複用機制詳解
- 關於Java中的反射機制Java反射
- 關於資料儲存的一個故事