當前位置:首頁 » 存儲配置 » 什麼是存儲多路徑

什麼是存儲多路徑

發布時間: 2022-05-23 05:40:28

A. 華為2600t存儲 多路徑軟體叫什麼

只要存儲網路中有多路徑,不論是FC還是iSCSI,都需要多路徑軟體。當然可能存儲廠家和伺服器廠家都會有自己的多路徑,那就只能選一個

B. linux 多路徑存儲是怎麼回事

Linux下HDS存儲多路徑查看
在Redhat下確定需要劃分的存儲空間。在本例中需要進行劃分的空間是從HDS AMS2000上劃分到伺服器的多路徑存儲空間。其中sddlmad為ycdb1上需要進行劃分的空間,sddlmah為ycdb2上需要進行劃分的空間。具體如下:
查看環境
# rpm -qa|grep device-mapper
device-mapper-event-1.02.32-1.el5
device-mapper-multipath-0.4.7-30.el5
device-mapper-1.02.32-1.el5
# rpm -qa|grep lvm2 lvm2-2.02.46-8.el5
查看空間
#fdisk -l
Disk /dev/sddlmad: 184.2 GB, 184236900352 bytes 255 heads, 63 sectors/track, 22398 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sddlmah: 184.2 GB, 184236900352 bytes

255 heads, 63 sectors/track, 22398 cylinders Units = cylinders of 16065 * 512 = 8225280 bytes
查看存儲
#cd /opt/DynamicLinkManager/bin/
#./dlnkmgr view -lu
Proct : AMS
SerialNumber : 83041424 LUs : 8
iLU HDevName Device PathID Status
0000 sddlmaa /dev/sdb 000000 Online
/dev/sdj 000008 Online
/dev/sdr 000016 Online
/dev/sdz 000017 Online

0001 sddlmab /dev/sdc 000001 Online
/dev/sdk 000009 Online
/dev/sds 000018 Online
/dev/sdaa 000019 Online
0002 sddlmac /dev/sdd 000002 Online
/dev/sdl 000010 Online
/dev/sdt 000020 Online
/dev/sdab 000021 Online
0003 sddlmad /dev/sde 000003 Online
/dev/sdm 000011 Online
/dev/s 000022 Online
/dev/sdac 000023 Online
0004 sddlmae /dev/sdf 000004 Online
/dev/sdn 000012 Online
/dev/sdv 000024 Online
/dev/sdad 000025 Online
0005 sddlmaf /dev/sdg 000005 Online
/dev/sdo 000013 Online
/dev/sdw 000026 Online
/dev/sdae 000027 Online
0006 sddlmag /dev/sdh 000006 Online
/dev/sdp 000014 Online
/dev/sdx 000028 Online
/dev/sdaf 000029 Online
0007 sddlmah /dev/sdi 000007 Online
/dev/sdq 000015 Online
/dev/sdy 000030 Online
/dev/sdag 000031 Online
##############################################################
4. lvm.conf的修改
為了能夠正確的使用LVM,需要修改其過濾器:
#cd /etc/lvm #vi lvm.conf
# By default we accept every block device
# filter = [ "a/.*/" ]
filter = [ "a|sddlm[a-p][a-p]|.*|","r|dev/sd|" ]
例:

[root@bsrunbak etc]# ls -l lvm*

[root@bsrunbak etc]# cd lvm
[root@bsrunbak lvm]# ls
archive backup cache lvm.conf
[root@bsrunbak lvm]# more lvm.conf

[root@bsrunbak lvm]# pvs

Last login: Fri Jul 10 11:17:21 2015 from 172.17.99.198
[root@bsrunserver1 ~]#
[root@bsrunserver1 ~]#
[root@bsrunserver1 ~]# df -h
Filesystem Size Used Avail Use% Mounted on
/dev/sda4 30G 8.8G 20G 32% /
tmpfs 95G 606M 94G 1% /dev/shm
/dev/sda2 194M 33M 151M 18% /boot
/dev/sda1 200M 260K 200M 1% /boot/efi
/dev/mapper/datavg-oraclelv
50G 31G 17G 65% /oracle
172.16.110.25:/Tbackup
690G 553G 102G 85% /Tbackup
/dev/mapper/tmpvg-oradatalv
345G 254G 74G 78% /oradata
/dev/mapper/datavg-lvodc
5.0G 665M 4.1G 14% /odc
[root@bsrunserver1 ~]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda5 datavg lvm2 a-- 208.06g 153.06g
/dev/sddlmba tmpvg lvm2 a-- 200.00g 49.99g
/dev/sddlmbb tmpvg lvm2 a-- 200.00g 0
[root@bsrunserver1 ~]# cd /etc/lvm
[root@bsrunserver1 lvm]# more lvm.conf
# Don't have more than one filter line active at once: only one gets
used.

# Run vgscan after you change this parameter to ensure that
# the cache file gets regenerated (see below).
# If it doesn't do what you expect, check the output of 'vgscan -vvvv'.

# By default we accept every block device:
# filter = [ "a/.*/" ]

# Exclude the cdrom drive
# filter = [ "r|/dev/cdrom|" ]

# When testing I like to work with just loopback devices:
# filter = [ "a/loop/", "r/.*/" ]

# Or maybe all loops and ide drives except hdc:
# filter =[ "a|loop|", "r|/dev/hdc|", "a|/dev/ide|", "r|.*|" ]

# Use anchors if you want to be really specific
# filter = [ "a|^/dev/hda8$|", "r/.*/" ]
filter = [ "a|/dev/sddlm.*|", "a|^/dev/sda5$|", "r|.*|" ]

[root@bsrunserver1 lvm]# df
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda4 30963708 9178396 20212448 32% /
tmpfs 99105596 620228 98485368 1% /dev/shm
/dev/sda2 198337 33546 154551 18% /boot
/dev/sda1 204580 260 204320 1% /boot/efi
/dev/mapper/datavg-oraclelv
51606140 31486984 17497716 65% /oracle
172.16.110.25:/Tbackup
722486368 579049760 106736448 85% /Tbackup
/dev/mapper/tmpvg-oradatalv
361243236 266027580 76865576 78% /oradata
/dev/mapper/datavg-lvodc
5160576 680684 4217748 14% /odc
[root@bsrunserver1 lvm]#
You have new mail in /var/spool/mail/root
[root@bsrunserver1 lvm]#
[root@bsrunserver1 lvm]# pvs
PV VG Fmt Attr PSize PFree
/dev/sda5 datavg lvm2 a-- 208.06g 153.06g
/dev/sddlmba tmpvg lvm2 a-- 200.00g 49.99g
/dev/sddlmbb tmpvg lvm2 a-- 200.00g 0
[root@bsrunserver1 lvm]#
進入文件:
[root@bsrunbak lvm]# cd /opt/D*/bin
or
[root@bsrunbak bin]# pwd
/opt/DynamicLinkManager/bin
顯示HDS存儲卷:
[root@bsrunbak lvm]# ./dlnkmgr view -lu

C. 如何實施SAN多路徑以及重要的考慮因素(含視頻)

因此,如果兩者之間只有一條路徑的話,那麼很可能會出現問題。SAN多路徑技術通過在硬體之間建立多條路徑的方式可以解決這個問題,一條路徑發生故障後,I/O可以使用另一條。多路徑還可以實現負載均衡。在下面的視頻中,存儲專家Howard Marks探討了實施SAN多路徑的一些實踐。任何接觸過存儲區域網路(SAN)的人都遇到過路徑失效的問題。人們常常會拔掉電纜或者關閉電源。這時伺服器和存儲設備都運行良好,但它們之間卻沒有有效的路徑可用。所以,有必要建立一種機制來支持多路徑。微軟和VMware都已經在它們的核心產品中建立了原始的多路徑,並嵌入了由存儲陣列廠商或第三方組織提供的插件,這樣使得多路徑技術更高效。VMware的多路徑方式是失效備援。如果你的主機上有一個雙埠光纖通道(FC)適配器,把它們連接到兩個獨立的開關上,也就是你的磁碟陣列同時連接了兩個開關,這時所有的流量都使用其中一條路徑,除非這條路徑失效。你也可以將開關轉到循環檔,這時會有交替的請求通過這些路徑,但是由於這些請求不會按照你想像的那樣只在一條路徑上傳輸,所以這種循環路徑不會產生雙倍的帶寬。有效帶寬只能達到1.6倍。

D. 修改主機存儲多路徑屬於下面哪個功能配置

Linux多路徑指的是除了主機和硬碟一條路徑的連接,還包括了主機和網路伺服器的連接形成的主機一對多的路徑連接關系。通過多路徑的連接,實現了磁碟的虛擬化。
1、安裝多路徑軟體包:
device-mapper-1.02.67-2.el5
device-mapper-event-1.02.67.2.el5
device-mapper-multipath-0.4.7-48.el5
[root@RKDB01 Server]# rpm -ivh device-mapper-1.02.67-2.el5.x86_64.rpm
warning: device-mapper-1.02.67-2.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing.…… ########################################### [100%]
package device-mapper-1.02.67-2.el5.x86_64 is already installed
[root@RKDB01 Server]# rpm -ivh device-mapper-event-1.02.67-2.el5.x86_64.rpm
warning: device-mapper-event-1.02.67-2.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing.…… ########################################### [100%]
package device-mapper-event-1.02.67-2.el5.x86_64 is already installed
[root@RKDB01 Server]# rpm -ivh device-mapper-multipath-0.4.7-48.el5.x86_64.rpm
warning: device-mapper-multipath-0.4.7-48.el5.x86_64.rpm: Header V3 DSA signature: NOKEY, key ID 37017186
Preparing.…… ########################################### [100%]
package device-mapper-multipath-0.4.7-48.el5.x86_64 is already installed
2、設置開機啟動,並檢查安裝包是否正常:
chkconfig --level 345 multipathd on
lsmod |grep dm_multipath
[root@RKDB01 Server]# chkconfig --level 345 multipathd on
[root@RKDB01 Server]# lsmod |grep dm_multipath
dm_multipath 58969 0
scsi_dh 42561 1 dm_multipath
dm_mod 102417 4 dm_mirror,dm_multipath,dm_raid45,dm_log
[root@RKDB01 Server]#
3、配置multipathd 使其正常工作,編輯/etc/multipath.conf,開放如下內容:
defaults {
udev_dir /dev
polling_interval 10
selector 「round-robin 0」
path_grouping_policy multibus
getuid_callout 「/sbin/scsi_id -g -u -s /block/%n」
prio_callout none
path_checker readsector0
rr_min_io 100
max_fds 8192
rr_weight priorities
failback immediate
no_path_retry fail
user_friendly_names yes
}
blacklist {
wwid 26353900f02796769
devnode 「^(ram|raw|loop|fd|md|dm-|sr|scd|st)[0-9]*」
devnode 「^hd[a-z]」
}
4、並關閉如下內容
#blacklist {
# devnode 「*」
#}
#defaults {
27 # user_friendly_names yes
28 #}
5、完成之後執行如下命令發現多路徑:
[root@RKDB01 Server]# modprobe dm-multipath
[root@RKDB01 Server]# multipath -F
[root@RKDB01 Server]# multipath dm-multipath
[root@RKDB01 Server]# multipath dm-round-robin
[root@RKDB01 Server]# service multipathd restart
正在關閉multipathd 埠監控程序: [確定]
正在啟動守護進程multipathd: [確定]
[root@RKDB01 Server]# multipath -v2
[root@RKDB01 Server]# multipath -v2
[root@RKDB01 Server]# multipath -ll
mpath1 () dm-0 TOYOU,NetStor_iSUM510
[size=3.3T][features=0][hwhandler=0][rw]
\_ round-robin 0 [prio=2][ena bled]
\_ 1:0:0:0 sdb 8:16 [failed][ready]
\_ 1:0:1:0 sdc 8:32 [failed][ready]
[root@RKDB01 Server]#
6、重啟伺服器後,可以看到多路徑信息了:
[root@RKDB01 ~]# ll /dev/mapper/
總計 0
crw------- 1 root root 10, 60 11-05 22:35 control
brw-rw---- 1 root disk 253, 0 11-05 22:35 mpath1
brw-rw---- 1 root disk 253, 1 11-05 22:35 mpath2
[root@RKDB01 ~]# multipath -ll
mpath2 () dm-1 TOYOU,NetStor_iSUM510
[size=3.2T][features=0][hwhandler=0][rw]
\_ round-robin 0 [prio=2][active]
\_ 1:0:0:1 sdc 8:32 [active][ready]
\_ 1:0:1:1 sde 8:64 [active][ready]
mpath1 () dm-0 TOYOU,NetStor_iSUM510
[size=20G][features=0][hwhandler=0][rw]
\_ round-robin 0 [prio=2][active]
\_ 1:0:0:0 sdb 8:16 [active][ready]
\_ 1:0:1:0 sdd 8:48 [active][ready]
7、通過fdisk 看可以生成了DM-0/DM-1兩個盤,正是上面sdc/sde,sdb/sdd多路徑後出來的:
[root@RKDB01 ~]# fdisk -l
Disk /dev/sda: 299.4 GB, 299439751168 bytes
255 heads, 63 sectors/track, 36404 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sda1 * 1 38 305203+ 83 Linux
/dev/sda2 39 13092 104856255 83 Linux
/dev/sda3 13093 19619 52428127+ 83 Linux
/dev/sda4 19620 36404 134825512+ 5 Extended
/dev/sda5 19620 26146 52428096 83 Linux
/dev/sda6 26147 28757 20972826 83 Linux
/dev/sda7 28758 30324 12586896 82 Linux swap / Solaris
/dev/sda8 30325 36404 48837568+ 83 Linux
Disk /dev/sdb: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdb doesn't contain a valid partition table
Disk /dev/sdc: 3568.4 GB, 3568429957120 bytes
255 heads, 63 sectors/track, 433836 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdc doesn't contain a valid partition table
Disk /dev/sdd: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sdd doesn't contain a valid partition table
Disk /dev/sde: 3568.4 GB, 3568429957120 bytes
255 heads, 63 sectors/track, 433836 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/sde doesn't contain a valid partition table
Disk /dev/dm-0: 21.4 GB, 21474836480 bytes
255 heads, 63 sectors/track, 2610 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/dm-0 doesn't contain a valid partition table
Disk /dev/dm-1: 3568.4 GB, 3568429957120 bytes
255 heads, 63 sectors/track, 433836 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Disk /dev/dm-1 doesn't contain a valid partition table
Disk /dev/sdf: 4009 MB, 4009754624 bytes
255 heads, 63 sectors/track, 487 cylinders
Units = cylinders of 16065 * 512 = 8225280 bytes
Device Boot Start End Blocks Id System
/dev/sdf4 * 1 488 3915744+ b W95 FAT32
Partition 4 has different physical/logical endings:
phys=(486, 254, 63) logical=(487, 125, 22)
[root@RKDB01 ~]#
8、同時也可以在/dev/mapper目錄中查看到多路徑映射的信息:
[root@RKDB01 ~]# ll /dev/mapper/
總計 0
crw------- 1 root root 10, 60 11-06 00:49 control
brw-rw---- 1 root disk 253, 2 11-06 00:49 data-data001
brw-rw---- 1 root disk 253, 0 11-06 00:49 mpath1
brw-rw---- 1 root disk 253, 1 11-06 00:49 mpath2

E. AIX連接IBM存儲,多路徑軟體常用命令

AIX連接IBM存儲,多路徑軟體常用命令一:查看存儲盤的路徑1、
查看MPIO的存儲盤的路徑#
lspath
(適用於所有存儲的MPIO路徑查詢)#
mpio_get_config
-Av
(適用於DS3K/DS4K的MPIO路徑查詢)2、
查看RDAC存儲盤的路徑#
fget_config
-Av
(適用於DS3K/DS4K的RDAC路徑查詢)3、
查看SDDPCM存儲盤的路徑#
pcmpath
query
device
(適用於DS6K/DS8K和v7000的SDDPCM路徑查詢)#pcmpath
query
adapter
檢查
SDDPCM
適配器狀態#pcmpath
query
wwpn
檢查
SDDPCM
已知的
FC
適配器
WWPN#pcmpath
query
version
檢查
SDDPCM
級別#lspath
檢查是否啟用了所有磁碟路徑4、
查看當前操作系統自帶的支持IBM存儲的多路徑軟體#
manage_disk_drivers5、
將DS4700默認的多路徑軟體更改成RDAC#
manage_disk_drivers
-d
DS4700
-o
AIX_fcparray

F. 存儲多路徑是個什麼意思

機身儲存是電子數碼產品或設備(如手機、MP3、電腦等)本身所帶的內部存儲介質,由存儲晶元直接安裝在儀器或是設備內部,以支撐機器的正常運行,用於暫時存放運算數據,以及與外部存儲器交換的數據。目前主流的機身儲存容量有8GB、16GB、和32GB。運行內存是指手機運行程序時的內存,也叫RAM(簡稱運存)。用電腦比較的話手機的運行內存就是電腦的內存,是不可以作為儲存數據的介質的。目前智能手機運行內存一般為1GB、2GB或3GB。

G. 如何使用Linux自帶多路徑DM

一、多路徑解釋
多路徑,顧名思義就是有多種選擇的路徑。在SAN或IPSAN環境,主機和存儲之間外加了光纖交換機,這就導致主機和存儲之間交換速度和效率增強,一條路徑肯定是不行的,也是不安全不穩定的。多路徑就是要來解決從主機到磁碟之間最快,最高效的問題。主要實現如下幾個功能
故障的切換和恢復
IO流量的負載均衡
磁碟的虛擬化
多路徑之前一直是存儲廠商負責解決,竟來被拆分出來單獨賣錢了。
構架基本是這樣的:存儲,多路徑軟體,光纖交換機,主機,主機系統。

二、LINUX下的multipath
1、查看是否自帶安裝?

1
2
3
4
5
6

[root@web2 multipath]# rpm -qa|grep device
device-mapper-1.02.39-1.el5
device-mapper-1.02.39-1.el5
device-mapper-multipath-0.4.7-34.el5
device-mapper-event-1.02.39-1.el5
[root@web2 multipath]#

2、安裝

1
2
3
4
5
6

rpm -ivh device-mapper-1.02.39-1.el5.rpm #安裝映射包
rpm -ivh device-mapper-multipath-0.4.7-34.el5.rpm #安裝多路徑包

外加加入開機啟動
chkconfig –level 2345 multipathd on #設置成開機自啟動multipathd
lsmod |grep dm_multipath #來檢查安裝是否正常

3、配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14

# on the default devices.
blacklist {
devnode "^(ram|raw|loop|fd|md|dm-|sr|sr|scd|st)[0-9]*"
devnode "^hd[a-z]"
}
devices {
device {
vendor "HP"
path_grouping_policy multibus
features "1 queue_if_no_path"
path_checker readsector()
failback immediate
}
}<br><br>完整的配置如下:

blacklist {
devnode "^sda"
}

defaults {
user_friendly_names no
}

multipaths {
multipath {
wwid
alias iscsi-dm0
path_grouping_policy multibus
path_checker tur
path_selector "round-robin 0"
}
multipath {
wwid
alias iscsi-dm1
path_grouping_policy multibus
path_checker tur
path_selector "round-robin 0"
}
multipath {
wwid
alias iscsi-dm2
path_grouping_policy multibus
path_checker tur
path_selector "round-robin 0"
}
multipath {
wwid
alias iscsi-dm3
path_grouping_policy multibus
path_checker tur
path_selector "round-robin 0"
}
}

devices {
device {
vendor "iSCSI-Enterprise"
proct "Virtual disk"
path_grouping_policy multibus
getuid_callout "/sbin/scsi_id -g -u -s /block/%n"
path_checker readsector0
path_selector "round-robin 0"
}
}
4、命令

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30

[root@web2 ~]# multipath -h
multipath-tools v0.4.7 (03/12, 2006)
Usage: multipath [-v level] [-d] [-h|-l|-ll|-f|-F|-r]
[-p failover|multibus|group_by_serial|group_by_prio]
[device]

-v level verbosity level
0 no output
1 print created devmap names only
2 default verbosity
3 print debug information
-h print this usage text
-b file bindings file location
-d dry run, do not create or update devmaps
-l show multipath topology (sysfs and DM info)
-ll show multipath topology (maximum info)
-f flush a multipath device map
-F flush all multipath device maps
-r force devmap reload
-p policy force all maps to specified policy :
failover 1 path per priority group
multibus all paths in 1 priority group
group_by_serial 1 priority group per serial
group_by_prio 1 priority group per priority lvl
group_by_node_name 1 priority group per target node

device limit scope to the device's multipath
(udev-style $DEVNAME reference, eg /dev/sdb
or major:minor or a device map name)
[root@web2 ~]#

5、啟動關閉

1
2
3
4

# /etc/init.d/multipathd start #開啟mulitipath服務
service multipath start
service multipath restart
service multipath shutdown

6、如何獲取wwid

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26

1、
[root@vxfs01 ~]# cat /var/lib/multipath/bindings
# Multipath bindings, Version : 1.0
# NOTE: this file is automatically maintained by the multipath program.
# You should not need to edit this file in normal circumstances.
#
# Format:
# alias wwid
#
mpath0
mpath1
mpath2
mpath3
mpath4

2、
[root@vxfs01 ~]# multipath -v3 |grep 3600
sdb: uid = (callout)
sdc: uid = (callout)
sdd: uid = (callout)
sde: uid = (callout)
1:0:0:0 sdb 8:16 0 [undef][ready] DGC,RAI
1:0:1:0 sdc 8:32 1 [undef][ready] DGC,RAI
2:0:0:0 sdd 8:48 1 [undef][ready] DGC,RAI
2:0:1:0 sde 8:64 0 [undef][ready] DGC,RAI
Found matching wwid [] in bindings file.

比較詳細的文字:
http://zhumeng8337797.blog.163.com/blog/static/1007689142013416111534352/
http://blog.csdn.net/wuweilong/article/details/14184097
RHEL官網資料:
http://www.prudentwoo.com/wp-content/uploads/downloads/2013/11/Red_Hat_Enterprise_Linux-5-DM_Multipath-en-US.pdf
http://www.prudentwoo.com/wp-content/uploads/downloads/2013/11/Red_Hat_Enterprise_Linux-5-DM_Multipath-zh-CN.pdf
http://www.prudentwoo.com/wp-content/uploads/downloads/2013/11/Red_Hat_Enterprise_Linux-6-DM_Multipath-en-US.pdf
http://www.prudentwoo.com/wp-content/uploads/downloads/2013/11/Red_Hat_Enterprise_Linux-6-DM_Multipath-zh-CN.pdf

H. esxi6.0怎麼設置存儲多鏈路

應該說是優化吧,
底層物理 確認有多條鏈路之後,格式化存儲完成之後,在存儲器里右鍵編輯存儲的名稱屬性,點 管理冗餘鏈路,上面有個多路徑 默認是固定,把他設置成循環就行了

I. 什麼是多路徑I/O

多路徑I/O指主機中能夠將對存儲設備的I/O請求定向到多條訪問路徑上的設施和機制,它要求必須使用除匯流排地址之外的方法來惟一標識設備。

J. emc存儲multipath問題求助

LINUX下多路徑(multi-path)介紹及使用

一、什麼是多路徑
普通的電腦主機都是一個硬碟掛接到一個匯流排上,這里是一對一的關系。而到了有光纖組成的SAN環境,或者由iSCSI組成的IPSAN環境,由於主機和存儲通過了光纖交換機或者多塊網卡及IP來連接,這樣的話,就構成了多對多的關系。也就是說,主機到存儲可以有多條路徑可以選擇。主機到存儲之間的IO由多條路徑可以選擇。每個主機到所對應的存儲可以經過幾條不同的路徑,如果是同時使用的話,I/O流量如何分配?其中一條路徑壞掉了,如何處理?還有在操作系統的角度來看,每條路徑,操作系統會認為是一個實際存在的物理盤,但實際上只是通向同一個物理盤的不同路徑而已,這樣是在使用的時候,就給用戶帶來了困惑。多路徑軟體就是為了解決上面的問題應運而生的。
多路徑的主要功能就是和存儲設備一起配合實現如下功能:
1.故障的切換和恢復
2.IO流量的負載均衡
3.磁碟的虛擬化
由於多路徑軟體是需要和存儲在一起配合使用的,不同的廠商基於不同的操作系統,都提供了不同的版本。並且有的廠商,軟體和硬體也不是一起賣的,如果要使用多路徑軟體的話,可能還需要向廠商購買license才行。比如EMC公司基於linux下的多路徑軟體,就需要單獨的購買license。好在, RedHat和Suse的2.6的內核中都自帶了免費的多路徑軟體包,並且可以免費使用,同時也是一個比較通用的包,可以支持大多數存儲廠商的設備,即使是一些不是出名的廠商,通過對配置文件進行稍作修改,也是可以支持並運行的很好的。


二、Linux下multipath介紹,需要以下工具包:
在CentOS 5中,最小安裝系統時multipath已經被安裝,查看multipath是否安裝如下:


1、device-mapper-multipath:即multipath-tools。主要提供multipathd和multipath等工具和 multipath.conf等配置文件。這些工具通過device mapper的ioctr的介面創建和配置multipath設備(調用device-mapper的用戶空間庫。創建的多路徑設備會在/dev /mapper中)。

2、 device-mapper:主要包括兩大部分:內核部分和用戶部分。內核部分主要由device mapper核心(dm.ko)和一些target driver(md-multipath.ko)。核心完成設備的映射,而target根據映射關系和自身特點具體處理從mappered device 下來的i/o。同時,在核心部分,提供了一個介面,用戶通過ioctr可和內核部分通信,以指導內核驅動的行為,比如如何創建mappered device,這些divece的屬性等。linux device mapper的用戶空間部分主要包括device-mapper這個包。其中包括dmsetup工具和一些幫助創建和配置mappered device的庫。這些庫主要抽象,封裝了與ioctr通信的介面,以便方便創建和配置mappered device。multipath-tool的程序中就需要調用這些庫。
3、dm-multipath.ko和dm.ko:dm.ko是device mapper驅動。它是實現multipath的基礎。dm-multipath其實是dm的一個target驅動。
4、scsi_id: 包含在udev程序包中,可以在multipath.conf中配置該程序來獲取scsi設備的序號。通過序號,便可以判斷多個路徑對應了同一設備。這個是多路徑實現的關鍵。scsi_id是通過sg驅動,向設備發送EVPD page80或page83 的inquery命令來查詢scsi設備的標識。但一些設備並不支持EVPD 的inquery命令,所以他們無法被用來生成multipath設備。但可以改寫scsi_id,為不能提供scsi設備標識的設備虛擬一個標識符,並輸出到標准輸出。multipath程序在創建multipath設備時,會調用scsi_id,從其標准輸出中獲得該設備的scsi id。在改寫時,需要修改scsi_id程序的返回值為0。因為在multipath程序中,會檢查該直來確定scsi id是否已經成功得到。
三、multipath在CentOS 5中的基本配置過程:
1、安裝和載入多路徑軟體包
# yum –y install device-mapper device-mapper-multipath
# chkconfig –level 2345 multipathd on #設置成開機自啟動multipathd
# lsmod |grep dm_multipath #來檢查安裝是否正常


如果模塊沒有載入成功請使用下列命初始化DM,或重啟系統
---Use the following commands to initialize and start DM for the first time:
# modprobe dm-multipath
# modprobe dm-round-robin
# service multipathd start
# multipath –v2

2、配置multipath:
Multipath的配置文件是/etc/multipath.conf , 如需要multipath正常工作只需要如下配置即可:(如果需要更加詳細的配置,請看本文後續的介紹)
blacklist {
devnode "^sda"
}
defaults {
user_friendly_names yes
path_grouping_policy multibus
failback immediate
no_path_retry fail
}
# vi /etc/multipath.conf3、multipath基本操作命令
# /etc/init.d/multipathd start #開啟mulitipath服務
# multipath -F #刪除現有路徑
# multipath -v2 #格式化路徑
# multipath -ll #查看多路徑


如果配置正確的話就會在/dev/mapper/目錄下多出mpath0、mpath1等之類設備。


用fdisk -l命令可以看到多路徑軟體創建的磁碟,如下圖中的/dev/dm-[0-3]4、multipath磁碟的基本操作
要對多路徑軟體生成的磁碟進行操作直接操作/dev/mapper/目錄下的磁碟就行.
在對多路徑軟體生成的磁碟進行分區之前最好運行一下pvcreate命令:
# pvcreate /dev/mapper/mpath0
# fdisk /dev/mapper/mpath0


用fdisk對多路徑軟體生成的磁碟進行分區保存時會有一個報錯,此報錯不用理會。
fdisk對多路徑軟體生成的磁碟進行分區之後,所生成的磁碟分區並沒有馬上添加到/dev/目錄下,此時我們要重啟IPSAN或者FCSAN的驅動,如果是用iscsi-initiator來連接IPSAN的重啟ISCSI服務就可以發現所生成的磁碟分區了
# service iscsi restart
# ls -l /dev/mapper/


如上圖中的mpath0p1和mpath1p1就是我們對multipath磁碟進行的分區
# mkfs.ext3 /dev/mapper/mpath0p1 #對mpath1p1分區格式化成ext3文件系統
# mount /dev/mapper/mpath0p1 /ipsan/ #掛載mpath1p1分區

熱點內容
事件驅動python 發布:2024-10-18 14:39:54 瀏覽:844
java熔斷 發布:2024-10-18 14:32:05 瀏覽:867
蘋果訪問限制要打開嗎 發布:2024-10-18 14:26:31 瀏覽:121
php時間數字 發布:2024-10-18 14:26:30 瀏覽:604
qq系統頭像文件夾 發布:2024-10-18 14:14:55 瀏覽:235
安卓手機請輸入密碼在哪裡 發布:2024-10-18 14:13:28 瀏覽:646
設計編譯程序注意的問題 發布:2024-10-18 14:08:43 瀏覽:255
傳智播客android視頻 發布:2024-10-18 14:04:42 瀏覽:905
手機版安卓吃雞哪個好 發布:2024-10-18 14:01:40 瀏覽:492
編程自學入門教程 發布:2024-10-18 13:50:58 瀏覽:142