LINUX下多路徑詳細(xì)_第1頁(yè)
LINUX下多路徑詳細(xì)_第2頁(yè)
LINUX下多路徑詳細(xì)_第3頁(yè)
LINUX下多路徑詳細(xì)_第4頁(yè)
LINUX下多路徑詳細(xì)_第5頁(yè)
已閱讀5頁(yè),還剩5頁(yè)未讀 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡(jiǎn)介

1、LINUX下多路徑(multi-path )介紹及使用2021-05-16 11:15:34| 分類:openfiler 系統(tǒng)+fr |舉報(bào) |字號(hào)訂閱一、什么是多路徑普通的電腦主機(jī)都是一個(gè)硬盤掛接到一個(gè)總線上,這里是一對(duì)一的關(guān)系.而到了有光纖組成的SAN環(huán)境,或者由iSCSI組成的IPSAN環(huán)境,由于主機(jī)和存儲(chǔ)通過(guò)了光纖交換機(jī) 或者多塊網(wǎng)卡及IP來(lái)連接,這樣的話,就構(gòu)成了多對(duì)多的關(guān)系.也就是說(shuō),主機(jī)到存 儲(chǔ)可以有多條路徑可以選擇.主機(jī)到存儲(chǔ)之間的IO由多條路徑可以選擇.每個(gè)主機(jī)到所對(duì)應(yīng)的存儲(chǔ)可以經(jīng)過(guò)幾條不同的路徑,如果是同時(shí)使用的話,I/O流量如何分配?其中一條路徑壞掉了,如何處理?還有在操

2、作系統(tǒng)的角度來(lái)看,每條路徑,操作系統(tǒng)會(huì)認(rèn) 為是一個(gè)實(shí)際存在的物理盤,但實(shí)際上只是通向同一個(gè)物理盤的不同路徑而已,這樣是在使用的時(shí)候,就給用戶帶來(lái)了困惑.多路徑軟件就是為了解決上面的問(wèn)題應(yīng)運(yùn)而生的. 多路徑的主要功能就是和存儲(chǔ)設(shè)備一起配合實(shí)現(xiàn)如下功能: 1.故障的切換和恢復(fù)2.IO流量的負(fù)載均衡3.磁盤的虛擬化由于多路徑軟件是需要和存儲(chǔ)在一起配合使用的,不同的廠商基于不同的操作系統(tǒng),都提供了不同的版本.并且有的廠商,軟件和硬件也不是一起賣的,如果要使用多路徑軟 件的話,可能還需要向廠商購(gòu)置license才行.比方EMC公司基于linux下的多路徑軟件,就需要單獨(dú)的購(gòu)置license.好在, Re

3、dHat和Suse的2.6的內(nèi)核中都自帶了免費(fèi) 的多路徑軟件包,并且可以免費(fèi)使用,同時(shí)也是一個(gè)比擬通用的包,可以支持大多數(shù)存 儲(chǔ)廠商的設(shè)備,即使是一些不是知名的廠商,通過(guò)對(duì)配置文件進(jìn)行稍作修改,也是可以 支持并運(yùn)行的很好的.二、Linux下multipath 介紹,需要以下工具包:在CentOS 5中,最小安裝系統(tǒng)時(shí) multipath已經(jīng)被安裝,查看multipath是否安裝如下:rootwishdb -J I rpm -qa |grep mapperdevice-mapper-1 * 02 39-1.elSde vice *mapper-event-1,02.39-1.el5device-

4、mapper-multipach-0.4.7-341、device-mapper-multipath :即 multipath-tools .主要提供 multipathd 和 multipath 等工具和 multipath.conf等配置文件.這些工具通過(guò) device mapper的ioctr的接口創(chuàng)立 和配置multipath設(shè)備(調(diào)用device-mapper的用戶空間庫(kù).創(chuàng)立的多路彳交設(shè)備會(huì)在/dev /mapper 中).頁(yè)腳2、device-mapper :主要包括兩大局部:內(nèi)核局部和用戶局部.內(nèi)核局部主要由device mapper 核心dm.ko和一些 target dri

5、ver md-multipath.ko .核心完成設(shè)備的映射, 而target根據(jù)映射關(guān)系和自身特點(diǎn)具體處理從mappered device 下來(lái)的i/o.同時(shí),在核心局部,提供了一個(gè)接口,用戶通過(guò) ioctr可和內(nèi)核局部通信,以指導(dǎo)內(nèi)核驅(qū)動(dòng)的行 為,比方如何創(chuàng)立 mappered device , 這些 divece 的屬性等.linux device mapper 的用 戶空間局部主要包括 device-mapper這個(gè)包.其中包括 dmsetup工具和一些幫助創(chuàng)立 和配置mappered device的庫(kù).這些庫(kù)主要抽象,封裝了與 ioctr通信的接口,以便方 便創(chuàng)立和配置 mapper

6、ed device . multipath-tool的程序中就需要調(diào)用這些庫(kù).3、dm-multipath.ko 和 dm.ko : dm.ko 是 device mapper 驅(qū)動(dòng).它是實(shí)現(xiàn) multipath 的 根底.dm-multipath 其實(shí)是dm的一個(gè)target驅(qū)動(dòng).4、scsi_id :包含在udev程序包中,可以在 multipath.conf中配置該程序來(lái)獲取 scsi 設(shè)備的序號(hào).通過(guò)序號(hào),便可以判斷多個(gè)路徑對(duì)應(yīng)了同一設(shè)備.這個(gè)是多路徑實(shí)現(xiàn)的關(guān) 鍵.scsi_id是通過(guò)sg驅(qū)動(dòng),向設(shè)備發(fā)送 EVPD page80或page83的inquery命令來(lái)查 詢scsi設(shè)備的標(biāo)

7、識(shí).但一些設(shè)備并不支持EVPD的inquery命令,所以他們無(wú)法被用來(lái)生成multipath設(shè)備.但可以改寫scsi_id,為不能提供scsi設(shè)備標(biāo)識(shí)的設(shè)備虛擬一個(gè)標(biāo) 識(shí)符,并輸出到標(biāo)準(zhǔn)輸出.multipath程序在創(chuàng)立multipath設(shè)備時(shí),會(huì)調(diào)用scsi_id,從其標(biāo)準(zhǔn)輸出中獲得該設(shè)備的scsi ido在改寫時(shí),需要修改 scsi_id程序的返回值為0.因?yàn)樵趍ultipath程序中,會(huì)檢查該直來(lái)確定scsi id是否已經(jīng)成功得到.三、multipath 在CentOS 5中的根本配置過(guò)程:1、安裝和加載多路徑軟件包# yum - y install device-mapper devi

8、ce-mapper-multipath# chkconfig - level 2345 multipathd on # 設(shè)置成開機(jī)自啟動(dòng) multipathd# lsmod |grep dm_multipath # 來(lái)檢查安裝是否正常footwxshdb / *| frepAth2 5421 2 dni_round_xcl> 1 n5C3i_dM12097 1 dw_muitlpath如_gd(3225 20 出1工s,皿ulcpgh,如果模塊沒(méi)有加載成功請(qǐng)使用以下命初始化DM ,或重啟系統(tǒng)# -Use the following commands to initialize and s

9、tart DM for the first time:# modprobe dm-multipath# modprobe dm-round-robin# service multipathd start# multipath v2 2、配置 multipath :Multipath的配置文件是/etc/multipath.conf , 如需要 multipath正常工作只需要如下配置即可:如果需要更加詳細(xì)的配置,請(qǐng)看本文后續(xù)的介紹blacklist devnode "Asda"頁(yè)腳)defaults user_friendly_names yes path_grouping

10、_policy multibus failback immediate no_path_retry fail)# vi /etc/multipath.confdevnode "Asdanefault9 user filend1y_names yes# multipath -v2 # 格式化路徑# multipath -ll # 查看多路徑(lootfwlshdb/tl nuLtip-ath ! 1dff-2 IETV1RTW±-DI3K-工 IEV3RK3-D工5HdjE-O IET# VIRTUAL -DISKda-3 IET,VlftTUAtrblEX31QTQ 項(xiàng) m

11、被相帽囹.path_groupmg_po 11cy multibus fallback inaiieil2at.e no_pach_retry fail用fdisk-l命令可以看到多路徑軟件創(chuàng)立的磁盤,如以下圖中的 /dev/dm-0-31404562252S0“681605byre jb Y匕3匕丁匚匕二cylinder*-B22S2SDcylinders 6225280Sl-ai6O38l bytes ac1cr 62 cylmdeDisk /dev/dni-iZ55 heads, 63Dnk /d3/如 S5& hua- 5 Un工匚, cyliiDisk /dev/ds-2!

12、3Q1O 255 heads, 63 sector Unlt cylindera ofDx3k /dev/dm-0: S 255 heads63 sec Drug - cylindcr94、multipath 磁盤的根本操作要對(duì)多路徑軟件生成的磁盤進(jìn)行操作直接操作/dev/mapper/目錄下的磁盤就行在對(duì)多路徑軟件生成的磁盤進(jìn)行分區(qū)之前最好運(yùn)行一下pvcreate命令:# pvcreate /dev/mapper/mpath0# fdisk /dev/mapper/mpath0頁(yè)腳Cm8gwlLIF1*M Ualnf Last .八nqC4lllTtg toftl OrylInder ar

13、dcfdiulc value 63ccctud (st for help i : n 4Gd 4CC ione eMtendep priMry P4rtltlen用fdisk對(duì)多路徑軟件生成的磁盤進(jìn)行分區(qū)保存時(shí)會(huì)有一個(gè)報(bào)錯(cuò),此報(bào)錯(cuò)不用理會(huì).fdisk對(duì)多路徑軟件生成的磁盤進(jìn)行分區(qū)之后,所生成的磁盤分區(qū)并沒(méi)有馬上添加到/dev/目錄下,此時(shí)我們要重啟IPSAN或者FCSAN的驅(qū)動(dòng),如果是用iscsi-initiator來(lái)連 接IPSAN的重啟ISCSI效勞就可以發(fā)現(xiàn)所生成的磁盤分區(qū)了# service iscsi restart# ls -l /dev/mapper/(ZQO$wxshdb /

14、) # Is -1 /dev/iMpper/ gtS 0crw-1rootroox.1明63Jul1911 :2 4controlb.1rootdisk253,0Jul1913:27jnp&thDb£*W1jc*atdist2.3Jul19iap-athOplbrw-rw1.rootdiffle2&3r1Jul19i3:57mpabhlbrw-rw1?53.5Jul1913U7brw-rw1rootdist253,2Jul1913:.27tnpath2brw-rw1rootdist253,4Jul1913:2?mpath3如上圖中的 mpath0p1和mpath1p1

15、就是我們對(duì) multipath磁盤進(jìn)行的分區(qū)# mkfs.ext3 /dev/mapper/mpath0p1 # 對(duì) mpath1p1 分區(qū)格式化成 ext3 文件系統(tǒng)# mount /dev/mapper/mpath0p1 /ipsan/ # 掛載 mpath1p1 分區(qū)頁(yè)腳四、multipath 的高有配置以上都是用multipath的默認(rèn)配置來(lái)完成 multipath的配置,比方映射設(shè)備的名稱, multipath負(fù)載均衡的方法都是默認(rèn)設(shè)置.那有沒(méi)有根據(jù)我們自己定義的方法來(lái)配置 multipath呢,當(dāng)可以.1、multipath.conf 文件的配置接下來(lái)的工作就是要編輯/etc/mu

16、ltipath.conf 的配置文件multipath.conf 主要包括 blacklist > multipaths、 devices 三部份的配置blacklist 配置blacklist devnode "Asda")Multipaths 局部配置multipaths和devices兩部份的配置.multipaths multipath wwid * # 止匕值 multipath-v3 可以看至Ualias iscsi-dmO #映射后的別名,可以隨便取path_grouping_policy multibus # 路徑組策略path_checker tur

17、 #決定路徑狀態(tài)的方法path_selector "round-robin 0" #選擇那條路徑進(jìn)行下一個(gè)IO操作的方法)Devices局部配置devices device vendor "iSCSI-Enterprise" # 廠商名稱product "Virtual disk" # 產(chǎn)品型號(hào)path_grouping_policy multibus # 默認(rèn)的路徑組策略getuid_callout "/sbin/scsi_id -g -u -s /block/%n" # 獲得唯一設(shè)備號(hào)使用的默認(rèn)程序 prio_

18、callout"/sbin/acs_prio_alua %d" #獲取有限級(jí)數(shù)值使用的默認(rèn)程序path_checker readsectorO #決定路徑狀態(tài)的方法path_selector "round-robin 0" #選擇那條路徑進(jìn)行下一個(gè)IO操作的方法failbackimmediate #故障恢復(fù)的模式no_path_retryqueue #在disable queue之前系統(tǒng)嘗試使用失效路徑的次數(shù)的數(shù)值rr_min_io100 #在當(dāng)前的用戶組中,在切換到另外一條路徑之前的IO請(qǐng)求的數(shù)目)頁(yè)腳)如下是一個(gè)完整的配置文件blacklist de

19、vnode "Asda")defaults user_friendly_names no)multipaths multipath wwid 14945540000000000a67854c6270b4359c66c272e2f356321alias iscsi-dm0path_grouping_policy multibuspath_checker turpath_selector "round-robin 0")multipath wwid 14945540000000000dcca2eda91d70b81edbcfce2357f99eealias

20、iscsi-dm1path_grouping_policy multibuspath_checker turpath_selector "round-robin 0")multipath wwid 1494554000000000020f763489c165561101813333957ed96alias iscsi-dm2path_grouping_policy multibuspath_checker turpath_selector "round-robin 0")multipath wwid 14945540000000000919ca81302

21、0a195422ba3663e1f03cc3alias iscsi-dm3path_grouping_policy multibuspath_checker turpath_selector "round-robin 0")devices device vendor "iSCSI-Enterprise"頁(yè)腳product "Virtual disk" path_grouping_policy multibus getuid_callout "/sbin/scsi_id -g -u -s /block/%n" pat

22、h_checker readsector0 path_selector "round-robin 0"獲取wwid的方法:(1)默認(rèn)情況下,將使用 /var/lib/multipath/bindings內(nèi)的配置設(shè)定具體每個(gè)多路徑設(shè)備名,如果在/etc/multipath.conf中有設(shè)定各 wwid別名,別名會(huì)覆蓋此設(shè)定.rooc/ 1 I ffior elib/tnulclpach/bind Ings* Multi-path. bi.n.d.ing 3 f Veisicu ; 1,0f NOTE: Vhis fiie i9工事中3工丫by tht icualt±

23、p叁.hf Yau should nQL need co edix rhis file in namiaL ciccuiascbnces.ff F口口HAM: t alias impathOGKJ2QQQQOOOa-6105JlG«7Qto359GC6G272cZra56321mpachi l1554 0000000000dccA2cdfl9ld70bBledbcfce2357f99eempatiiZ 1494 55100000000002021 34&9cl6551101B13333957ed963ipath3 55000000000 919ciai3030al95422t

24、oa3663eLf03cc3(2)# multipath -v3 命令查找rcoc>?±shdb /) f mulcipaL-h -| qr呼p u.idsdb: 9ecuxd /sbin/scsiid -g - -s /block/%n (config file deffiulc)3de: gecuid = /sbin/scsiid -g -u -3 /block/%n (config file desdc: uid - 14945540000000000afi73&4c«70b43S9cc2 7 2«2f35321 callout) wdC, g

25、«vuid - /abxn/scsx_Ld -g -y -n ZblocJc/%n tc舞f工勺 def«vlcsdd: uid = 14 94554000000000t>d=:ca2eda&ld.7 0bSledbcfce357f'59ee (callcujt)sd;-W -u/Lloc工/節(jié)r gqmriq 工工工= 口9de)uld - 1494S94OO0OQOW020f7434»«14S541101B133(M110Ut>sdf: gecuid - /aiaxn/scsixcl -q -a /black/%n (co

26、nfig file default J30工二 u1口 = 19455OaOQOQa0OO»19ca&1.3O2Oal9S22ba363elXO3cc3 與誼llouc)營(yíng)口后:SfiEuid - /sbin/sGsi_Ld -g - -s /bi口uk/Vti fu口力fiq file default 序此:uld - 113<55e0QOQO05o0Oa7S&ec627Qbi359G46c2 7 2e2I35«321 (callcuc) sdi; getuid /Bbin/scsi id -g - -a /black/tn (confiq file

27、 default; sdi; uid - 14945'eQaOQQODO?OdGGa2edd51(17Db31edtc£ceJ357f35ee (collout)sd j; getuid = Zafcun/sGai-idlq -u -3 /bloGk/tn I config file adj; uid = 11915510000000000?0763105165561101813333>dK: gcuiU /abin/scsi_l<l 7 *u *5 /block/m (config file adk: uid - H94554000000Q00019Gaftl3

28、020a19S422ba3fifi3clfG3cc32、負(fù)載均衡測(cè)試使用dd命令來(lái)對(duì)設(shè)備進(jìn)行寫操作,并同時(shí)通過(guò) iostat來(lái)查看I/0狀態(tài),命令及輸出如下:# dd if=/dev/zero of=/dev/mapper/iscsi-dm1p1開啟另外一個(gè)終端用以下命令查看IO情況頁(yè)腳# iostat 10 10sde11307,01u7ed.ei1239S4sdei34*.X1367.01ii7ss.sasdf0,000.00o.co00sdg0,000.000.0000add0.000.0000sddl0.000,000.60003ir.14g.況11103+3011393.4111114114045d1400.6011103.3011393.41二1工144114040sdi0.0.0.00o.co00adj0.006.0000dm-0a. oo0.000.00Q0UJT- 1STg.1922490.3123183.2222S12B232064Q.QO00通過(guò)上述輸出,我們看到,在對(duì) /dev/mapper/iscsi-dmlpl 讀寫時(shí),實(shí)際上是通過(guò)對(duì)/dev/m

溫馨提示

  • 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論