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 (3600d02310000011b16a5d57c6a1bd99a) 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 (3600d02310000011b76128b9c63138cf4) 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 (3600d02310000011b16a5d57c6a1bd99a) 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

9、参考:

Red_Hat_Enterprise_Linux-5-DM_Multipath-en-US.pdf

Red_Hat_Enterprise_Linux-5-DM_Multipath-zh-CN.pdf

Red_Hat_Enterprise_Linux-6-DM_Multipath-en-US.pdf

Red_Hat_Enterprise_Linux-6-DM_Multipath-zh-CN.pdf

上一篇:LeetCode001 Two Sum C语言


下一篇:高并发之——P8级别架构师带你深度解析线程池中那些重要的顶层接口和抽象类