- 論壇徽章:
- 0
|
終于在大家的支持,偶完工了,
昨天的時候,翻了翻,不好意思,
發(fā)現(xiàn)還有錯誤地,如果偶翻的不對之處,
大家見諒,也真心希望這東東能對大家的工作和學(xué)習(xí)有所幫助,
好了,這是最后一章了!
第九章 RAID Manager Architecture
目標(biāo)
通過本章學(xué)習(xí),你將掌握:
l 討論RAID Manager軟件的功能和優(yōu)點
l 定義術(shù)語:
n 邏輯單元(Logical unit)
n 驅(qū)動組(Drive group)
n RAID 模塊(RAID module)
l 討論hot spare的使用
l 描述數(shù)據(jù)的重建過程
l 描述RAID Manager設(shè)備的命名規(guī)則
l 定義緩存控制參數(shù)
RAID Manager的組件和功能l 主要組件l 用戶接口l RM引摯l 冗余雙活動控制(RDAC)驅(qū)動器l RM功能l Solstice DiskSuite兼容功能l Veritas VM兼容功能l 不被支持的功能
RAID Manager的組件和功能
這部分主要討論RM軟件的一些術(shù)語:
l 主要組件
n 用戶接口
n RM引摯
n 冗余雙活動控制(RDAC)驅(qū)動器
l RM功能
n Solstice DiskSuite兼容功能
n Veritas VM兼容功能
n 不被支持的功能
RAID Manager的組件
如圖9_1說明的那樣,RM軟件主要有3個主要組件
l 用戶接口
可以是GUI的也可以是CLI的,它們都可以用來進(jìn)行陣列配置,監(jiān)視和維護(hù)
l RM引摯
RM引摯運行在主機服務(wù)器上,是介于用戶接口和Solaris內(nèi)核的RM的連接
l RDAC驅(qū)動
RDAC驅(qū)動是內(nèi)核級別的驅(qū)動,當(dāng)一個控制器失敗時,它允許自動的failover到第二個控制器上。RDAC驅(qū)動邏輯上位于Solaris內(nèi)核的SCSI驅(qū)動之上。
這與DMP不同,DMP有2個同時活動的路徑,指向每個控制器。而RDAC,每個控制器都訪問相同的SCSI驅(qū)動。然而,當(dāng)?shù)揭粋控制器的路徑失敗時,啟用第二條路徑。它的定義是:可以映射一個物理驅(qū)動集合的邏輯驅(qū)動器可以failover到另一個可選擇的第二個控制器上。
RM的功能
l 虛擬磁盤
虛擬磁盤是一個邏輯組,由一個或多個物理磁盤組成,但對于操作系統(tǒng),應(yīng)用和用戶而言,則表現(xiàn)為一個設(shè)備
l 條帶
它是一起分組多個磁盤的能力。在磁盤間使用交叉尋址方式
l 鏡像
保存數(shù)據(jù)的多個拷貝。在Solstice DiskSuite(SDS)中,每個拷貝被稱為一個子鏡像(submirror);在Veritas VM中,每個拷貝包含在一個plex中
l RAID 5
數(shù)據(jù)由奇偶校驗保護(hù),奇偶校驗值散布在數(shù)據(jù)間
l hot spare
磁盤/分區(qū)可以替換失敗的磁盤/分區(qū),數(shù)據(jù)在hot spare上被重建。在SDS中,hot spare不是永久的;他們返回到hot spare池。在VM中,它們是永久轉(zhuǎn)換的。
l 磁盤分組
RM6有驅(qū)動組,它從定義的邏輯驅(qū)動里提供了驅(qū)動池。在主機間,驅(qū)動組不能被導(dǎo)出。
--------------------------------------------------------------------------------------------------
注意----在Solstice DiskSuite中,這被稱為磁盤集。在Veritas VM中,它被稱為磁盤組。它們與RM6驅(qū)動組的不同在于它們可以在主機間移動磁盤組,它是高可靠性的解決方案。
--------------------------------------------------------------------------------------------------
l GUI
支持一個圖形用戶接口
l 空閑空間管理
因為RM6是基于物理分區(qū)的,決定可用性是比較容易的。使用VM,則擁有主機中的所有位于磁盤尾部的空閑空間
定義l RAID模塊(RAID module)l 驅(qū)動組(drive group)l 邏輯單元(LUN)l 磁盤組的排號(disk group numbering)l hot spare驅(qū)動(hot spare drive)
RM的定義
因為一些術(shù)語在存儲界被重復(fù)使用,你需要學(xué)習(xí)一些也RM相關(guān)的通常的存儲術(shù)語定義,它們是:
l RAID模塊(RAID module)
l 驅(qū)動組(drive group)
l 邏輯單元(LUN)
l 磁盤組的排號(disk group numbering)
l hot spare驅(qū)動(hot spare drive)
RAID模塊
一個RAID模塊被定義為一個控制器,磁盤,相關(guān)的電源支持和冷卻單元的集合,換句話說,StorEdge A3000或A1000是一個RAID模塊
當(dāng)執(zhí)行多種管理任務(wù)時,選擇RAID模塊,如配置,獲取狀態(tài),或恢復(fù)等。
RAID模塊的號碼以主機系統(tǒng)識別它們的順序被分配,并在RAID模塊的名字中使用主機名;如,mars_001, mars_002等。
磁盤組
一個磁盤組是在一個特定RAID模塊中的物理磁盤的集合。磁盤組定義了一個空閑池,在這里所有的空閑卷都處于一個RAID級別,磁盤組的RAID級別。另外,當(dāng)主機系統(tǒng)通過2個控制器訪問磁盤時,通過共享介于控制器間的磁盤組達(dá)到控制器的負(fù)載均衡。驅(qū)動組可以從配置窗口中定義。3種類型的驅(qū)動組是有效的。
l 配置驅(qū)動組
這些組使用相同的RAID級別已經(jīng)被配置為一個或多個邏輯單元。每個驅(qū)動組最大支持20個磁盤。
l 未分配的磁盤組
這個組包含當(dāng)前沒有被配置成邏輯單元或hot spare驅(qū)動組的所有磁盤。
l hot spare驅(qū)動組
這個組包含所有被配置成hot spare的磁盤。和配置驅(qū)動組相象,hot spare驅(qū)動組最大支持20個磁盤。
邏輯單元(LUN)
定義一個邏輯單元(LUN)
一個LUN可以跨越一個或多個驅(qū)動,可以被配置為RAID 0,1,3,5 RAID級別由相關(guān)的LUN的驅(qū)動組確定。RM6的LUN類似于VM中的卷。
n 一個驅(qū)動組可以包含一個或多個LUNs
n 在一個驅(qū)動組中的每個LUN共享相同的物理驅(qū)動和RAID級別
n 每個LUN由操作系統(tǒng)看成一個虛擬驅(qū)動并最大可以包括20個物理磁盤
n 使用format命令可以將每個LUN分成多個分區(qū),因為Solaris系統(tǒng)把LUN看作一個驅(qū)動。
n 在Solaris 2.6中,在每個RAID模塊中最大限制16個LUNs(StorEdge A3000)
配置LUNs
LUN的配置信息被冗余的存儲在配置中的3個磁盤上。這些磁盤的位置由控制器管理并不為用戶所知。LUN的信息不能被用戶訪問(并不以文本方式保存),它只被RM6的管理應(yīng)用所訪問。
控制器的序列號被作為LUN信息的一部分存儲。這個信息在:Start-of-Day的測試中被檢測。
使用LUN分區(qū)
以下默認(rèn)的參數(shù)表由format創(chuàng)建,是一個20個磁盤的RAID 5 LUN
Current partition table (original):
Total disk cylinders available: 38882 + 2 (reserved cylinders)
Part Tag Flag Cylinders Size Blocks
0 root wm 0 – 63 128.00MB (64/0/0) 262144
1 swap wu 64 – 127 128.00MB (64/0/0) 262144
2 backup wu 0 – 38881 75.94GB (38882/0/0) 159260672
3 unassigned wm 0 0 (0/0/0) 0
4 unassigned wm 0 0 (0/0/0) 0
5 unassigned wm 0 0 (0/0/0) 0
6 usr wm 128 – 38881 75.69GB (38754/0/0) 158736384
7 unassigned wm 0 0 (0/0/0)
驅(qū)動組的排號(dirve group numbering)
每個被配置的驅(qū)動組被分配一個號碼。驅(qū)動組號碼的分配的動態(tài)的,最小的LUN值是:LUN0,經(jīng)常位于組1。
包含LUN 0的驅(qū)動組經(jīng)常是驅(qū)動組1。如果LUN 0從組1中移除,而所有其他LUNs都在被使用,并且新增加一個LUN到組3(因為在那個組中有未使用的磁盤空間),那么,當(dāng)LUN 0被增加到組3時,它將變成組1。驅(qū)動組2將包含下一個最小的LUN號碼。
組號碼的重配置對于加載或正在使用的驅(qū)動沒有任何影響,LUNs和它們相關(guān)的控制器保持不變。
n 每個被配置的驅(qū)動組被分配一個號碼
n 驅(qū)動組的號碼分配從最低的LUN號碼開始
n 為了便于分配,組的LUN號碼可以不必連續(xù)
n 在刪除或創(chuàng)建了LUNs后,磁盤組可以被自動的重新分配號碼。注意,LUN號碼在創(chuàng)建文件系統(tǒng)時由管理員使用。驅(qū)動組的號碼由內(nèi)部的RM6分配的。驅(qū)動組的號碼重分配不影響Solaris系統(tǒng)中的LUNs視圖。
Hot spare驅(qū)動
一個hot spare驅(qū)動是一個無包含數(shù)據(jù)的驅(qū)動,處于等待狀態(tài),除非在RAID1,3,5邏輯單元失敗。
當(dāng)一個處于RAID1,3,5中的邏輯單元失敗,一個hot spare驅(qū)動自動替換失敗的磁盤并重新生成數(shù)據(jù)將其寫入到hot spare中。當(dāng)失敗的磁盤被替換,并恢復(fù)過程完成,hot spare驅(qū)動自動返回到等待狀態(tài)。
Hot spare不是專門指定的驅(qū)動組或LUN。它們可以被用來以相同或相似的容量替換在RAID模塊中任何失敗的磁盤。
Hot spare驅(qū)動提供附加的冗余并允許延期維護(hù)。依賴于你所配置的hot spare數(shù)量,一個邏輯單元可以在有多個失敗的磁盤時,仍然保持完整的操作,每一個失敗的磁盤都由hot spare所替換。
--------------------------------------------------------------------------------------------------
注意----在RAID 0邏輯單元中,hot spare不能替換失敗有磁盤
--------------------------------------------------------------------------------------------------
在RAID 0中沒有冗余,所以沒有方式在hot spare上重建數(shù)據(jù)。如果一個磁盤在RAID 0的LUN中失敗,數(shù)據(jù)將會無效,除非替換失敗的磁盤并從備份磁帶上進(jìn)行恢復(fù)。
總結(jié):
l 一個hot spare驅(qū)動是一個無包含數(shù)據(jù)的驅(qū)動,處于等待狀態(tài),除非在RAID1,3,5邏輯單元失敗。
l 當(dāng)一個磁盤失敗,hot spare會替換那個失敗的磁盤
l 當(dāng)失敗磁盤被替換,并且恢復(fù)過程完成,hot spare會自動返回到等待狀態(tài)
l hot spare可以相同的或相似的容量替換任何RAID模塊中失敗的磁盤
l hot spare提供附加的冗余并允許延期維護(hù)
RAID 重建l 降級模式(Degraded mode)l 重建(Recontruction)l Hot sparel RAID 1 (鏡像) LUN差別
RAID 重建
這包括:
l 降級模式(Degraded mode)
l 重建(Recontruction)
l Hot spare
l RAID 1 (鏡像) LUN差別
降級模式(Degraded Mode)
當(dāng)一個RAID 3或RAID 5 LUN出現(xiàn)了單一磁盤失敗,通過降級方式,它可以繼續(xù)保持?jǐn)?shù)據(jù)的可用性。在單一磁盤失敗的情況下,RAID 3和RAID 5可以通過奇偶校驗表來重建丟失的數(shù)據(jù)。如果在RAID設(shè)置的多個磁盤失敗,則奇偶校驗磁盤不能重建丟失的數(shù)據(jù)。
如圖所示的RAID 5中,物理磁盤3(disk 3)失敗,同時沒有hot spare。如果一個應(yīng)用訪問正在操作的磁盤上的數(shù)據(jù)(如,chunk 2),I/O操作處理正常。但如果,一個應(yīng)用訪問位于失敗磁盤上的數(shù)據(jù)(如,chunk 3),控制器需要在那個條帶上保存的其他數(shù)據(jù)和奇偶校驗來重新生成數(shù)據(jù)。在這里,在chunk1和chunk2上執(zhí)行異或操作(XOR),及chunk 1,2和3的奇偶校驗值來重新生成原始的chunk3上的數(shù)據(jù)。
重建(Restruction)
重建是你替換了一個單一失敗的磁盤之后,用來恢復(fù)被降級的RAID 1,3或5的邏輯單元到它的原始狀態(tài)的過程。當(dāng)你在RAID 1,3或5的LUN中物理替換一個失敗磁盤并開始初始恢復(fù)時,開始重建
Hot spares
如果你配置了hot spare,并且你在RAID 3或RAID 5的LUN中丟失了一個單一磁盤,當(dāng)數(shù)據(jù)在hot spare上重建時,LUN繼續(xù)可用(雖然處于一個非優(yōu)化狀態(tài))。重建過程已經(jīng)在前面描述過,當(dāng)重建完成,LUN處于一個優(yōu)化的狀態(tài)。
當(dāng)原始失敗磁盤被替換,數(shù)據(jù)從hot spare上拷貝到新替換的磁盤,當(dāng)這個拷貝完成,hot spare返回到等待狀態(tài)。
當(dāng)一個RAID設(shè)置LUN使用hot spare被重建,LUN狀態(tài)報告為優(yōu)化(optimal)。在替換了原始的失敗磁盤后,LUN自動在替換的驅(qū)動組磁盤上重建。因為RAID設(shè)置LUN已經(jīng)報告為優(yōu)化,已經(jīng)使用hot spare重建,LUN在從hot spare磁盤上重建替換磁盤時,保持可用性(使用優(yōu)化狀態(tài))。
RAID 1(mirroring) LUN Difference
在一個單一磁盤失敗的情況下,RAID 1(mirroring) LUN也可以繼續(xù)維護(hù)數(shù)據(jù)的可用性。而且,你不需要重新計算數(shù)據(jù),因為你在LUN中的其他鏡像中有一個好的拷貝。在降級模式中(損失一個單一磁盤),所有的讀和寫在繼續(xù)存在的鏡像中執(zhí)行。當(dāng)失敗磁盤被替換,數(shù)據(jù)從鏡像拷貝到替換的磁盤。
總結(jié):
l 重建是你替換了一個單一失敗的磁盤之后,用來恢復(fù)被降級的RAID 1,3或5的邏輯單元到它的原始狀態(tài)的過程。
l 在重建中,控制器:
n 在替換的磁盤上使用LUN中(RAID 3或RAID 5)的其他磁盤上的數(shù)據(jù)/奇偶校驗來計算數(shù)據(jù)。
n 在替換磁盤上寫入這些數(shù)據(jù)
l 當(dāng)你在RAID 1,3,5的LUN中物理替換了失敗磁盤并開始恢復(fù)時,重建自動執(zhí)行。
緩存(Cache Memory)l 控制器緩存l 性能l 寫緩存鏡像l 無電池緩存
緩存
緩存是控制器上的一個區(qū)域,用于數(shù)據(jù)讀寫的中間存儲
控制器緩存
默認(rèn)的,每個控制器有64M緩存?梢愿碌矫靠刂破128M緩存。
性能
緩存可以提高全面的性能。讀操作的數(shù)據(jù)也可以存儲在緩存中,消除了驅(qū)動器自己的訪問需要。寫操作可以被認(rèn)為是一次完整的寫緩存。這也提高了應(yīng)用的性能,不需要等待數(shù)據(jù)寫入磁盤。
寫緩存鏡像
當(dāng)允許時,緩存數(shù)據(jù)被寫入到兩個控制器的緩存,這樣,當(dāng)一個控制器失敗時,第二個控制器完成所有寫操作。
無電池緩存
有幾種情況,如電池電量不足,這樣,控制器可能會被臨時關(guān)閉直到電量正常為止。如果你設(shè)置了:cache without batteries參數(shù),控制器將不覆蓋這個安全設(shè)置,將在沒有電池的情況下繼續(xù)使用緩存。
--------------------------------------------------------------------------------------------------
警告----如果你選擇了:cache without batteries,而且你沒有一個不間斷的電池保護(hù),如果你的電源失敗,你將會丟失數(shù)據(jù)。
--------------------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------------------
注意----緩存可以為性能的原因而允許,寫緩存鏡像允許數(shù)據(jù)保護(hù)一旦控制器失敗。緩存可以每LUN為基礎(chǔ)做控制,用戶必須對每個新創(chuàng)建的LUN確定緩存的狀態(tài)。
--------------------------------------------------------------------------------------------------
總結(jié):
l 緩存是控制器上的區(qū)域用于讀寫數(shù)據(jù)的中間存儲
l 緩存可以全面的提高性能
n 讀操作的數(shù)據(jù)也可以存儲在緩存中,消除了驅(qū)動器自己的訪問需要
n 寫操作可以被認(rèn)為是一次完整的寫緩存
l 寫緩存鏡像
n 當(dāng)允許時,緩存數(shù)據(jù)被寫入到兩個控制器的緩存,這樣,當(dāng)一個控制器失敗時,第二個控制器完成所有寫操作。
l 無電池緩存
n 如電池電量不足或完全失效,控制器的緩存可能會被臨時關(guān)閉
n 覆蓋這個安全設(shè)置而繼續(xù)使用緩存
RAID Manager應(yīng)用l 配置(configuration)l 狀態(tài)(status)l 恢復(fù)Guru(recovery Guru)l 維護(hù)和調(diào)整(maintenance/tuning)l 關(guān)于(about)
RAID Manager的應(yīng)用
RM6的GUI有4個應(yīng)用可以從圖標(biāo)(icon)初始化,這些應(yīng)用是:
l 配置(configuration)
l 狀態(tài)(status)
l 恢復(fù)Guru(recovery Guru)
l 維護(hù)和調(diào)整(maintenance/tuning)
l 關(guān)于(about)
配置(Configuration)
這個應(yīng)用主要被用來指定配置,用戶可以指定陣列中的物理磁盤如何分配給數(shù)據(jù)存儲的邏輯單元,以及使用哪個級別的RAID。用戶也可以指定哪個磁盤配置為hot spare。
狀態(tài)(Status)
這個應(yīng)用允許管理員判斷一個陣列是否有與之相關(guān)的任何異;虿徽5臓顟B(tài)。3種狀態(tài)信息是有效的:
l 信息日志查看
允許查看并詳細(xì)查看與陣列異常相關(guān)的堆積的歷史信息。
l “On-demand”正常檢測
檢查所選擇的陣列需要修復(fù)的失敗情況。
l 重建狀態(tài)
允許查看對邏輯單元的失敗磁盤的替換后的重建步驟
恢復(fù)Guru(Recovery Guru)
這個應(yīng)用能夠?qū)芾韱T執(zhí)行降級硬件恢復(fù)操作的過程提供幫助。Recovery Guru知道確切的失敗模式,并試圖引導(dǎo)用戶執(zhí)行需要的恢復(fù)步驟,確保用戶以正確的方式替換了組件。如果需要,會替換多個失敗組件。
維護(hù)和調(diào)整
這個應(yīng)用提供某一陣列管理任務(wù)的控制,在存儲陣列的配置里,可能會發(fā)生多次。這些任務(wù)包括,下載控制固件(Controller firmware),確認(rèn)陣列的奇偶值,和調(diào)整控制器的緩存。
關(guān)于
當(dāng)你點擊了這個圖標(biāo),彈出一個RM6窗口,返回RM6軟件版本號
命令行接口(Command-Line Interface)l 當(dāng)寫shell腳本時是有用的l CLI不如GUI直觀l 通過GUI的任務(wù)監(jiān)視器,CLI命令語法是有用的l CLI和GUI工具執(zhí)行相同的功能l 所有的命令都處于:/usr/lib/osa/bin中,并做了如下連接:/usr/sbin/osaà/usr/lib/osa/bin
命令行接口
當(dāng)GUI接口不能正常執(zhí)行功能,或者想為通常的執(zhí)行操作寫shell腳本時,會用到CLI。
GUI通常是更直接的,也容易使用。它隱藏了操作的復(fù)雜性,并減少了操作者在執(zhí)行管理中的出錯機會。
并不是所有命令都可以被這兩種接口完全執(zhí)行。
所有的命令都可以在目錄:/usr/lib/osa/bin中發(fā)現(xiàn),并可能會通過以下方
式做字符連接:
/usr/sbin/osa à /usr/lib/osa/bin
RM6 命令
--------------------------------------------------------------------------------------------------
命令 描述
--------------------------------------------------------------------------------------------------
drivutil This drive/LUN utility is used to manage drives/LUNs. It enables
you to obtain drive/LUN information, revive a LUN, fail/unfail a drive, and obtain LUN reconstruction progress.
fwutil This controller firmware download utility downloads appware,
bootware, Fibre Channel code, or a non-volatile storage, random access memory (NVSRAM) file to a specified controller.
healthck This health check utility performs a health check on the indicated
RAID module(s) and displays a report to standard output.
lad This list array devices utility identifies which RAID controllers and
logical units are connected to the system.
logutil This log format utility formats the error log file and displays a formatted version to the standard output.
nvutil This NVSRAM display/modification utility permits the viewing and
changing of RAID controller NVRAM settings, allowing for some customization of controller behavior. It verifies and fixes any
NVSRAM settings that are not compatible with the storage management software.
parityck This parity check/repair utility checks, and if necessary, repairs the
parity information stored on the array. (While correct parity is vital to the operation of the array, the possibility of damage to parity is extremely unlikely.)
raidutil This RAID configuration utility is the command-line counterpart to the graphical configuration application. It permits RAID LUN and hot spare creation and deletion to be performed from a command line or script.
rdacutil This redundant disk array controller, management utility permits
certain redundant controller operations such as LUN load balancing and controller failover and restoration to be performed from a command line or script.
storutil This host store utility is used to perform certain operations on a
region of the controller called host store. You can use this utility to set an independent controller configuration, change RAID modules’ names, and clear information in the host store region.
--------------------------------------------------------------------------------------------------
設(shè)備命名約定(Device Naming Convention)l 標(biāo)準(zhǔn)設(shè)備命名約定l 邏輯連接:/dev/(r)dsk與/dev/osa/dev/(r)dsk與文件:/devicesl Solaris操作系統(tǒng)限制:l 每RAID模塊最大16個LUNsl 每個LUN可以與磁盤相同的方式進(jìn)行分區(qū)l 每個主機適配器最大支持32個LUNs
設(shè)備命名約定
標(biāo)準(zhǔn)設(shè)備名
RM軟件使用設(shè)備地址來相關(guān)邏輯單元。這些地址由子系統(tǒng)的硬件位置決定。
如圖9_7所示,地址標(biāo)識了SCSI主機適配器,控制器的SCSI ID號,LUN以及slice數(shù)量。
RM軟件在多種屏幕顯示中使用這個設(shè)備名。這個地址通常標(biāo)識一個特定邏輯單元的路徑。如果你在控制器間轉(zhuǎn)換LUN的屬主,把它作為維護(hù)/調(diào)整過程(LUN平衡),設(shè)備名將在RAID軟件中自動更新。但是,Solaris操作系統(tǒng)繼續(xù)使用原始的路徑直到執(zhí)行一個重配置啟動。(boot –r)
圖9_7表明:
l 標(biāo)準(zhǔn)設(shè)備名的約定
l 邏輯連接:/dev/(r)dsk與/dev/osa/dev/(r)dsk與文件:/devices
l Solaris操作系統(tǒng)限制:
n 每RAID模塊最大16個LUNs
n 每個LUN可以與磁盤相同的方式進(jìn)行分區(qū)
n 每個主機適配器最大支持32個LUNs
本文來自ChinaUnix博客,如果查看原文請點:http://blog.chinaunix.net/u/20492/showart_164643.html |
|